爱吧机器人网 » 技术 > 大数据 > 正文

Coursera 数据工程师分享大数据的迷离身世

亚马逊还是不断创新,每年召开 reInvent 大会推广新的云产品和分享成功案例,在这里面我随便说几个,像 S3 是简单面向对象的存储,DynamoDB 是对关系型数据库的补充,Glacier 对冷数据做归档处理,Elastic MapReduce 直接对 MapReduce 做打包提供计算服务,EC2 就是基础的虚拟主机,Data Pipeline 会提供图形化界面直接串联工作任务。

这边还可以说一下 Redshift,它是一种(Massively Parallel Computer)架构,是非常方便的数据仓库解决方案,就是 SQL 接口,跟各个云服务无缝连接,最大特点就是快,在 TB 到 PB 级别非常好的性能,我在工作中也直接使用,它还支持不同硬件平台,如果想速度更快,可以使用 SSD 的,当然支持容量就小些。

在数据库领域,我就列出三种代表,一类是关系型数据库管理系统,它的特点是 A(Atomic)、C(consistent)、I(isolation)、D(duration),连起来就是 ACID(酸)。简单说,就是支持事务回滚和外键关联,而 NoSQL 是与之对应的 Base(碱),所谓 Basic 可用,为了扩大 Scale,牺牲一些一致性和事务。而谷歌提出 F1,希望解决在大规模数据同时还要做到事务强一致性。在这里面都是非常常见的 NoSQL, 这些公司可能你都没听过,但它们都是融资过亿,估值都非常高,在几个 Billion 以上。

我会花一些篇幅介绍 Hadoop,首先看 Hadoop 从哪里开始的,不得不提谷歌的先进性,在 10 多年前,谷歌出了 3 篇论文论述分布式系统的做法,分别是 GFS、MapReduce、BigTable,非常牛逼的系统,但没人见过,在工业界很多人痒痒的,就想按其思想去仿作。

当时,Apache Nutch Lucene 作者 Doug Cutting 也是其中之一,后来他们被雅虎收购,专门成立团队去投入做,就是 Hadoop 的开始和大规模发展的地方,之后随着雅虎衰落,牛人去了 Facebook、谷歌,也有成立 Cloudera、Hortonworks 等大数据公司,把 Hadoop 的实践带到各个硅谷公司。

而谷歌还没停止,又出了新的三辆马车:Pregel、Caffeine 和 Dremel,后来又有很多步入后尘,开始新一轮开源大战。

那么为啥 Hadoop 就比较适合做大数据呢?首先扩展很好,直接通过加节点就可以把系统能力提高,它有个重要思想是:移动计算而不是移动数据,因为数据移动是很大的成本需要网络带宽。

其次,它提出的目标就是利用廉价普通计算机(硬盘),这样虽然可能不稳定(磁盘坏的几率),但通过系统级别上的容错和冗余达到高可靠性。并且非常灵活,可以使用各种data,二进制、文档型、记录型。使用各种形式(结构化、半结构化、非结构化所谓的schemaless),在按需计算上也是个技巧。

另一个问题,我们提到 Hadoop 一般不会说某个东西,而是指生态系统,在这里面太多交互的组件了,涉及到 IO、处理、应用、配置、工作流。在真正的工作中,当几个组件互相影响,你的头疼的维护才刚刚开始。

我也简单说几个:Hadoop Core 就三个 HDFS、MapReduce、Common,在外围有 NoSQL: Cassandra、HBase,有 Facebook 开发的数据仓库 Hive,有雅虎主力研发的 Pig 工作流语言,有机器学习算法库 Mahout,工作流管理软件 Oozie,在很多分布式系统选择 Master 中扮演重要角色的 Zookeeper.

下面是 Hortonworks 提出的数据平台,这个公司比较强势,它有最多的 Hadoop Committee 成员,是真正的标准制定者,而 2.0 就是由它们提出。

\

在 Hadoop 1.0 前,是 0.16 到 0.19、0.20,还有一只是 0.23 进化成现在的 2.0,应该说,现在大致都被 2.0 取代了,主要区别是 1.0 只能支持 MapReduce 框架、资源和数据处理限制在一起。

而 2.0 首先抽象出 Yarn 这个资源管理器,然后上层可以支持各种插件机制,便于扩展,Hortonworks 还研发了 Tez 作为加速引擎把一些相关任务合并共享或者并行来优化。

下面这个是英特尔给出的 Hadoop Stack,英特尔也是个对技术前沿由追求的公司,虽然它主业是处理器,但在互联网的时代,为抓住一些软件机会,它们也在积极融合,为生态系统做贡献。

\

另外,Cloudera 是老牌 Hadoop 公司,成立 7、8 年了,当年 Hadoop 之父就是在那做首席架构,它提出的 CDH 版本是很多公司的稳定 Hadoop 版本,一般公司也不会自己去搭 Hadoop 最新版,否则出了 Bug 会很痛苦,它提供了一个打包方便部署。

涉及技术细节甚至源代码

下面内容涉及技术细节甚至源代码,可能有些枯燥,我也尽量深入浅出。我们先说 HDFS,所谓 Hadoop 的分布式文件系统,它是能真正做到高强度容错。并且根据 locality 原理,对连续存储做了优化。

简单说,就是分配大的数据块,每次连续读整数个。如果让你自己来设计分布式文件系统,在某机器挂掉还能正常访问该怎么做?首先需要有个 master 作为目录查找(这里就是 Namenode),那么数据节点是作为分割好一块块的,同一块数据为了做备份不能放到同一个机器上,否则这台机器挂了,你备份也同样没办法找到。

HDFS 用一种机架位感知的办法,先把一份拷贝放入同机架上的机器,然后在拷贝一份到其他服务器,也许是不同数据中心的,这样如果某个数据点坏了,就从另一个机架上调用,而同一个机架它们内网连接是非常快的,如果那个机器也坏了,只能从远程去获龋这是一种办法,现在还有基于 erasure code 本来是用在通信容错领域的办法,可以节约空间又达到容错的目的,大家感兴趣可以去查询。

接着说 MapReduce,首先是个编程范式,它的思想是对批量处理的任务,分成两个阶段,所谓的 Map 阶段就是把数据生成 key、value pair 再排序,中间有一步叫 shuffle,把同样的 key 运输到同一个 reducer 上面去,而在 reducer 上,因为同样 key 已经确保在同一个上,就直接可以做聚合,算出一些 sum, 最后把结果输出到 HDFS 上。对应开发者来说,你需要做的就是编写 Map 和 reduce 函数,像中间的排序和 shuffle 网络传输,容错处理,框架已经帮你做好了。但据说,谷歌内部早不用这种,又有新的强大工具出现了。

上一页1234下一页

上一篇:大数据带来的四种思维
下一篇:芝麻开门 大数据征信体系揭秘
精选推荐
可编辑神经网络,有望简化深度学习?
可编辑神经网络,有望简化深度学习?

[2019-10-04]  深度学习是一个计算繁重的过程。 降低成本一直是 Data curation 的一大挑战。 关于深度学习神经网络大功耗的训练过程,已经有研究人员 ...

南加州大学机器人学家:机器人更适合粗暴的爱
南加州大学机器人学家:机器人更适合粗暴的爱

[2019-11-07]  图片来自JOHN MADERE GETTY IMAGES打是疼骂是爱,当人类粗暴的将物体从机器人手中敲掉,看似残忍,实际上却能帮助机器人找到最好的握持物 ...

MIT研制出可以像植物一样生长的机器人
MIT研制出可以像植物一样生长的机器人

[2019-11-09]  麻省理工学院开发了一种新型机器人,这种机器人可以本质上自我延伸,其生长方式与植物幼苗向上生长的方式惊人相似。值得注意的是,研究人员 ...

2023年服务机器人市场将超过250亿美元
2023年服务机器人市场将超过250亿美元

[2017-09-04]  全球服务机器人市场预计到2023年将达到250亿美元, 并在预测期内登记15% 的复合年增长率。短期中期回收期和投资回报率高 (ROI), 以及在教育和研究、临场感、防御、救援和安......

谷歌在中国成立一个新的人工智能(AI)研究中心
谷歌在中国成立一个新的人工智能(AI)研究中心

[2017-12-13]  谷歌正在中国建立一个新的人工智能(AI)研究中心,希望进一步扩展到中国,以充分利用中国高度重视的人工智能技术。人工智能是目前地球上最具竞争力的领域之一,亚马逊,微软......

如何让人工智能机器人快速自我纠正错误并吃一堑长一智?
如何让人工智能机器人快速自我纠正错误并吃一堑长一智?

[2017-08-23]  莱斯特大学数学系的研究人员在《Neural Networks》杂志上发表了一篇文章,概述了新算法的数学基础,可以使人工智能收集错误报告并立即纠正,而不影响现有技能 ,同时还会积......

麻省理工正研究植物机器人 让植物自主控制机器人
麻省理工正研究植物机器人 让植物自主控制机器人

[2018-12-08]  控制论通常指人类用机器人部件增强自己。我们听说过动物机器人或昆虫机器人,但我们很少听说植物机器人对吧?一个机器人其实是对植物有很大益处的,因为一般植物根本无法移动......

机器人从工业走向家庭  库卡KUKA目标是引领中国市场
机器人从工业走向家庭 库卡KUKA目标是引领中国市场

[2017-12-08]  机器人正在改变着人们的生活方式,而库卡KUKA想要在中国这个大蛋糕中占有一块大份额,库卡公司正在引领市场...

本周栏目热点

[1970-01-01]   这可能是未来最具发展潜力的职业之一,我们从职场角度为你解读如何成为 大数据 工程师,以及它的职业发展 ...

从Facebook社交媒体情绪实验看大数据道德困境

[1970-01-01]   今年曝光的Facebook私自进行社交媒体用户情绪实验的新闻引起了不小的争议,这把很多数据实验卷入到社会 ...

大数据时代的美国隐私权保护制度

[1970-01-01]   2014年5月,美国总统执行办公室(Executive Office of the President)发布2014年全球大数据白皮书 ...

那些年,曾经被我们误读的大数据

[1970-01-01]   如今,业界和学术界一直在热议大数据,不管是学术圈还是IT圈,只要能谈论点儿大数据就显得很高大上。然 ...

未来农业将在田里处理大数据

[1970-01-01]   基普·汤姆(Kip Tom)是第7代家庭农场主,他的农场种植的主要农作物是玉米和大豆,他同时也在进行玉 ...