曾经试用过主流大厂提供的大数据平台服务,仅从用户体验角度上来说,各有千秋。
- 百度天算控制台 功能分类明确,使用简单,组件版本较新,客服响应及时
- 腾讯大数据处理套件TBDS 没有完全开放服务,使用前需要申请,申请周期较长。我通过联系客服,获得了一个临时体验账号,见第二张图
- 华为企业云控制台 提供开发、测试管理流程(果然是以软件著称),Spark版本较低(1.5.1),退还押金让人蛋疼(走各类审批流程、客服多次骚扰、周期长)
- 阿里云数加控制台 阿里的云平台种类较多,云梯(貌似已下线)、飞天(自研)、数加,有点眼花缭乱。因为是自研,使用较繁杂(可能是因为不熟悉),使用前要购买MaxCompute服务,性能较好(个人体验)
- Amazon EMR控制台 各组件基本是当前最新版本!申请账号时需要绑定信用卡,万一集群忘记销毁。。。
各产品的收费情况和其能提供的服务器性能、服务功能相关,收费方式多样化,可年、月、时。4台规模集群的Hadoop+Spark服务,大概3-5元/小时不等。
因为都是大厂的大数据平台产品,所以肯定都是功底深厚、面向广泛。上述描述,仅仅是个人体验,不具有通用性、不带有批判性、没有代表性。
本文仅简单介绍一下我比较喜欢的百度天算这个产品:
使用过程如下:执行WordCount应用程序,统计文本中单词词频。
-
需要使用对象存储BOS和百度MapReduce BMR功能
-
进入对象存储BOS后,用户通过新建bucket,建立存放在 BOS上的文件夹
-
将需要执行的Spark应用程序及被测数据上传到刚才建立的文件夹中
-
通过导航栏进入百度MapReduce功能,准备创建集群
-
配置集群名称、登录用户名、密码(用来进入Web UI和SSH连接)、BOS路径、选择组件版本
我选择使用Hadoop 2.7、Spark 1.6.0、Hue 3.10.0、HBase 1.1.2,创建4个节点
-
付费
-
支付成功后,集群就开通了
-
4台规模的集群,初始化了10分钟,时间较长,应该是启动虚机后,根据用户的选择,下载相应的组件包,修改配置,启动服务。
-
集群服务启动成功
-
通过集群的实例详情,可以链接Yarn Web UI和Hue Web UI
-
通过导航栏选择作业,创建作业
-
选择Spark作业,指定Spark-submit命令参数及应用程序参数(位置在BOS)
-
作业创建成功后,等待执行
-
作业执行过程中可以查看作业详情
-
一段时间后,作业完成
-
通过查看作业日志,观察输出结果
通过集群界面中的Hadoop Yarn Web UI链接,查看应用程序的具体执行情况
-
可用在集群的监控页面,观察集群状态和各大数据组件信息
-
可以在导航栏选择多用户访问控制,对多用户权限进行管理和控制
-
百度云提供详尽的产品手册,对用户进行指导
使用过程中一些小坑:
- 集群环境默认使用JDK 1.7版本,所以用户编译应用程序时,请使用JDK 1.7,否则会出现类似:Unsupported major.minor.version 51.0的错误
- 集群环境默认使用Scala 2.10版本,所以用户编译应用程序时,请使用Scala 2.10.x,否则会出现类似: java.lang.AbstractMethodError: bdsparkwc$1.call(Ljava/lang/Object;)Ljava/lang/Iterable;的错误
- 当应用程序执行完毕后,无法使用Yarn Web UI来登陆应用程序的Driver Web UI 4040界面,估计是Spark History Server服务没有开启
- 其提供IP用来SSH连接,经常出现超时
总结:
目前来看,主流大厂都是通过这种SaaS方式来提供大数据平台全托管的服务,面向一些没有数据中心、没有运维能力的中小型企业,按需部署和使用,非常的快捷。通过其详尽的产品使用指南,用户再具备一些大数据组件相关使用的知识,就可以快速的进行大数据的清洗、挖掘、分析和报告,无需为集群节点分配、部署、优化、维护投入时间。
相关链接: