Hadoop是数据分析中越来越流行的一种工具,但是管理一个Hadoop集群的系统管理费用却令人怯步。为了帮助期望使用Hadoop的企业免去这部分费用,亚马逊率先实现了Hadoop即服务部署,称之为Elastic MapReduce (EMR)。Elastic MapReduce对于亚马逊Web服务的客户是一种很好的选择,但是对于Windows Azure和OpenStack的用户也有了类似的选择,当然也有自身的优点和缺点。
HDInsight通过使用微软和Apache工具让Windows Azure用户可以访问Hadoop。
OpenStack的Savanna项目为开源提供商提供了一个选择,但是作为一个不断发展的项目,用户还无法期望得到一个完整的交钥匙解决方案。
Windows Azure HDInsight
微软同Hadoop企业开商Hortonworks公司合作,提供了针对Windows Azure用户的Hortonworks Data Platform (HDP)访问。HDP可以让用户在Windows和Linux服务器上部署Hadoop集群。虽然对于系统管理员来说,底层操作系统的一个选择很重要,但是对于开发者而言,可能对于包含HDP的工具更让人感兴趣。
微软能够整合自身的产品,Windows Azure的Apache Hadoop实现,即HDInsight,这一点上我们毫不意外。系统管理员可以利用PowerShell和.NET管理Hadoop工作。HDInsight也能够让用户用Excel使用微软BI工具,比如PowerPivot、Power View和Power Query。
除了微软工具和应用,HDInsight包括大量Apache项目工具,从而促进数据管理和分析。Pig是一种高级数据分析语言,可用于替代编写MapReduce代码,而且对于用Java编码的分析师格外有价值。Hive是另一个Apache项目,这是一个管理大型数据集的数据仓库系统,通过类SQL语言HiveQL进行查询。这些都可以同Hadoop和关系型数据库合作,Apache Sqoop对于Hadoop和关系型数据库之间的批量数据传输很有效。
Hadoop即服务同微软和Apache工具的混合的结合可以让Hadoop集成到现有的数据管理基础架构时变得更加顺畅。
Hadoop用户在使用HDFS或者Windows Azure Blob存储上可以进行选择。这一点类似于亚马逊EMR中使用HDFS或者亚马逊简单对象存储服务(S3)。HDFS是一种针对Hadoop的内置存储格式,但是由于HDInsight集群并非持久的,来自HDFS的数据必须复制到Blob存储或者其他持久的存储,从而为其他Hadoop工作进行保持。
HDInsight价格基于集群中所使用的服务器数量和付款方式类型。所有的HDInsight集群都包括头节点、安全网关节点和一个或者多个计算节点。在按需付费计划下,头节点为每小时0.64美元,计算节点为每小时每一个大型实例(S3)0.32美元。两个计划中安全网关节点都不收费。在半年和按年的计划中,头节点的费用范围为:每小时0.44美元到0.51美元,计算节点的范围为:每小时0.22美元到0.26美元。精确的价格由其他因素决定,比如承诺的时间以及客户是否预先支付或者按月支付。
OpenStack Savanna项目
OpenStack是一个开源云计算系统,用于私有云和公有基础架构即服务实现,比如Rackspace。就像其他的Hadoop即服务产品一样,Savanna项目的目标就是自动化在云端部署Hadoop集群。Savanna是一个模块化组件,旨在能在OpenStack环境内工作,同时整合了关键OpenStack组件,包括针对管理的Horizon、用于用户认证的Keystone、虚拟机分配的Nova、镜像存储的Glance和数据存储的Swift。Savanna也支持整合其他厂商的工具,比如Cloudera Manager Admin Console。
尽管亚马逊EMR和Windows AzureHDInsight用户可以相当轻松的开始Hadoop集群,但是Savanna用户期望同系统管理员的工作要类似于Hadoop配置,这就可能减少了一些优势。Savanna使用模板来指定服务器配置、文件系统参数和Hadoop分布式具体参数。
Savanna还处于活跃开发阶段;0.3版本最近发布了。目前可用的功能包括基础的集群分配、集群配置模板,管理应用程序接口和用Pig和Hive进行特殊查询。2014年第二季度支持Hadoop第二版。