微信搜索lxw1234bigdata | 邀请体验:数阅–数据管理、OLAP分析与可视化平台 | 赞助作者:赞助作者

写给大数据开发初学者的话4

大数据平台 lxw1234@qq.com 17179℃ 4评论

如果你已经按照《写给大数据开发初学者的话3》中第五章和第六章的流程认真完整的走了一遍,那么你应该已经具备以下技能和知识点:

  1. 为什么Spark比MapReduce快。
  2. 使用SparkSQL代替Hive,更快的运行SQL。
  3. 使用Kafka完成数据的一次收集,多次消费架构。
  4. 自己可以写程序完成Kafka的生产者和消费者。

从前面的学习,你已经掌握了大数据平台中的数据采集、数据存储和计算、数据交换等大部分技能,而这其中的每一步,都需要一个任务(程序)来完成,各个任务之间又存在一定的依赖性,比如,必须等数据采集任务成功完成后,数据计算任务才能开始运行。如果一个任务执行失败,需要给开发运维人员发送告警,同时需要提供完整的日志来方便查错。

第七章:越来越多的分析任务

不仅仅是分析任务,数据采集、数据交换同样是一个个的任务。这些任务中,有的是定时触发,有点则需要依赖其他任务来触发。当平台中有几百上千个任务需要维护和运行时候,仅仅靠crontab远远不够了,这时便需要一个调度监控系统来完成这件事。调度监控系统是整个数据平台的中枢系统,类似于AppMaster,负责分配和监控任务。

7.1 Apache Oozie

1.    Oozie是什么?有哪些功能?
2.    Oozie可以调度哪些类型的任务(程序)?
3.    Oozie可以支持哪些任务触发方式?
4.    安装配置Oozie。

7.2 其他开源的任务调度系统

Azkaban:

https://azkaban.github.io/

light-task-scheduler:

https://github.com/ltsopensource/light-task-scheduler

Zeus:

https://github.com/alibaba/zeus

等等……
另外,我这边是之前单独开发的任务调度与监控系统,具体请参考《大数据平台任务调度与监控系统》.

 

如果你认真完成了上面的学习和实践,此时,你的”大数据平台”应该是这样的:

lxw1234

第八章:我的数据要实时

在第六章介绍Kafka的时候提到了一些需要实时指标的业务场景,实时基本可以分为绝对实时和准实时,绝对实时的延迟要求一般在毫秒级,准实时的延迟要求一般在秒、分钟级。对于需要绝对实时的业务场景,用的比较多的是Storm,对于其他准实时的业务场景,可以是Storm,也可以是Spark Streaming。当然,如果可以的话,也可以自己写程序来做。

8.1 Storm

1.    什么是Storm?有哪些可能的应用场景?
2.    Storm由哪些核心组件构成,各自担任什么角色?
3.    Storm的简单安装和部署。
4.    自己编写Demo程序,使用Storm完成实时数据流计算。

8.2 Spark Streaming

1.    什么是Spark Streaming,它和Spark是什么关系?
2.    Spark Streaming和Storm比较,各有什么优缺点?
3.    使用Kafka + Spark Streaming,完成实时计算的Demo程序。

 

如果你认真完成了上面的学习和实践,此时,你的”大数据平台”应该是这样的:

lxw1234

 

以下章节正在整理中,请持续关注 lxw的大数据田地

 

第九章:我的数据要对外

第十章:牛逼高大上的机器学习

 

如果觉得本博客对您有帮助,请 赞助作者

转载请注明:lxw的大数据田地 » 写给大数据开发初学者的话4

喜欢 (37)
分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(4)个小伙伴在吐槽
  1. 坐等系列5~~ :mrgreen:
    szh2016-12-22 14:04 回复
  2. 坐等55555555555555 :roll: 给初学者解惑了
    jiyii2016-12-28 16:35 回复
  3. zeus这个系统在github上找不到了,是改名字了么?
    jackhe2018-03-03 17:49 回复
  4. 系列5 什么时候出啊 :razz:
    amadis2018-10-29 21:27 回复