最具影响力的数字化技术在线社区

168大数据

 找回密码
 立即注册

QQ登录

只需一步,快速开始

1 2 3 4 5
打印 上一主题 下一主题
开启左侧

《离线和实时大数据开发实战》(PDF下载)

[复制链接]
跳转到指定楼层
楼主
发表于 2018-12-27 17:24:50 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多数据大咖,获取更多知识干货,轻松玩转大数据

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 168主编 于 2018-12-27 17:50 编辑

这本书是公司一位负责数据库的同事推荐的,正好数据中心也在重构和优化,以应对更加海量的数据,所以便花了点时间读完了这本书。全书分了三个篇章:全局概览,从比较高的高度概述了大数据的概念及相关技术;离线数据开发,主要讲解了hadoop和Hive以及相关的数据建模;实时数据开发,按照各个技术出现的时间先后,依次讲解了Storm、Spark、Flink和Beam。

这本书首先按照按照数据处理的流程,将数据处理分成了下面几个步骤
  • 数据产生:可以是后台业务数据、日志数据、客户端埋点数据、爬虫数据、其他第三方数据等。
  • 数据采集和传输:数据源主要分为文本和数据库两种。
  • 数据处理和存储:将采集来的数据进行ETL(抽取、转换、加载)和持久化保存。
  • 数据应用:当前主要还是“看”,未来可以利用深度学习、数据挖掘、机器学习等方式获得更多价值。
按照数据存储的实效性,将数据处理分为了三类:
  • 离线处理:今天处理昨天或者更久前的数据,时间单位通常是天。
  • 近线处理:处理15分钟或者1小时之前的数据,时间单位通常是分钟。
  • 实时处理:处理即时收到数据,时效主要取决于传输和存储速度,时间单位通常是秒甚至毫秒。
因为近线处理的边界比较模糊,所以这本书几乎没有做讨论,只是讲述了离线处理和实时处理。
有了这两个维度以后,作者介绍了当前的主流技术。值得注意的是,这里并没有绝对的一个划分,比如说Kafka作为数据采集既可以用于实时,也可以用于离线;Spark可以用于离线,Spark streaming则用于实时,仅仅是一个倾向度。


数据采集

数据处理

数据存储

数据应用

离线处理

Sqoop

MapReduceHive

HDFSHBase

DrillR语言TensorFlow

实时处理

FlumeKafka

StormSparkFlinkBeam


按作者的观点,当前大数据的主要战场仍是离线处理,但实时处理是未来发展的方向。比方说,双11的销售和订单数据,就需要实时的显示在阿里的大屏幕上,而不是到了第2天才统计出双11的销量。另外,由于近几年人工智能的快速发展,实时已经不是最好,而逐渐成为必需。
除了相关的技术以外,作者还讲述了数据仓库建模的理论和方法,介绍了建模领域的两位业界大拿:Bill Inmon和Ralph kimball。总体上,Kimball的方案更接地气一些,更详细的内容,需要查看他们的作品。数据仓库建模,按我的理解,就是数据的清洗和转换,将原本杂乱(非结构化数据)或者详细的明细数据,根据不同业务部门的需要,清洗、整理或者聚合成统计数据。这里主要是一个维度问题,因为同一份数据,不同的业务部门关注的角度可能会不同,因此,需要针对不同的业务建立不同的维度(数据集市)。
第二大部分,离线数据处理,介绍了Hadoop的两个组成部分HDFS和MapReduce。Hive,由于MapReduce需要编程实现,不利于部分数据使用人员,而Hive则将大数据的处理和分析能力赋予了普通数据相关人员。Hive构建在MapReduce之上,提供了一个类似于SQL的查询接口,Hive SQL最终会被翻译为MapReduce然后在Hadoop集群中执行。这部分还较为详细地介绍了Hive优化和维度建模。
第三大部分,实时数据处理,介绍了“第一代”实时流计算技术:Storm;“第二代”:Spark;“新生代”:Flink,以及未来有可能统一实时和离线的标准:Beam。这一部分,作者的节奏很快,快速讲述了发展历史、核心概念后就转为示例,作为读者是有一点难以接收和理解的。
总的来说,这本书能为各个技术提供一个鸟瞰式的概览,同时又提供了一些“实战”的内容,可是当读者只有一个概念时,感觉上又难以转入实战。因为,整本书都没有类似“操作手册”的部分(也有一些书整本都是操作手册,没讲基础概念,也很枯燥无味),所以实际上读者无法自行搭建其中某项技术的开发环境,比如Hadoop或者Spark,这样,因为环境没有搭建起来,也就无法进行实战和代码演练了。个人觉得这本书更适合有经验的人阅读,如果是针对入门者,则可以将概念讲得更细更深入,代码部分更简略。毕竟,一本书想要涉猎如此之多的大数据技术,也只能点到为止了吧。
不管实时还是离线,大数据的存储始终是基于HDFS。很多公司在面临海量数据时(传统的Mysql难以应对时),首先考虑的部分也是存储问题。对我而言,应当以这一部分和其相关的Hadoop生态圈,作为更深层次的切入点了吧。
感谢阅读,希望这篇文章能给你带来帮助!

下载地址:
链接: https://pan.baidu.com/s/1PvH9L-Pl7HPQ8QbNMskVAw 提取码:
游客,如果您要查看本帖隐藏内容请回复
楼主热帖
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 赞 踩

168大数据 - 论坛版权1.本主题所有言论和图片纯属网友个人见解,与本站立场无关
2.本站所有主题由网友自行投稿发布。若为首发或独家,该帖子作者与168大数据享有帖子相关版权。
3.其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和168大数据的同意,并添加本文出处。
4.本站所收集的部分公开资料来源于网络,转载目的在于传递价值及用于交流学习,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
5.任何通过此网页连接而得到的资讯、产品及服务,本站概不负责,亦不负任何法律责任。
6.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源,若标注有误或遗漏而侵犯到任何版权问题,请尽快告知,本站将及时删除。
7.168大数据管理员和版主有权不事先通知发贴者而删除本文。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

关于我们|小黑屋|Archiver|168大数据 ( 京ICP备14035423号|申请友情链接

GMT+8, 2024-4-19 20:55

Powered by BI168大数据社区

© 2012-2014 168大数据

快速回复 返回顶部 返回列表