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

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

HBase 就是对应的 BigTable 的克隆版,它是基于列的存储,可以很好的扩展型,这里面出现了 Zookeeper 作为它高可靠性的来源,我们在分布式系统中经常怕 Single Point of Failure,它能保证在少于一半节点损害情况下,还是可以工作的。

这里的 region server 是说把数据的 key 做范围划分,比如 region server1 负责 key 从 1 到 1w 的,region server2 负责 1w 到 2w 的,这样划分之后,就可以利用分布式机器的存储和运算能力了。

虽然 MapReduce 强大,但编写很麻烦,在一般工作中,大家不会直接写 MapReduce 程序。有人又开动大脑,简化开发。Hive 的简单介绍,它主要是 Facebook 开发,确实很容易上手,如果做 data scientist,经常也要用到这个工具。

我们想 MapReduce 模型有什么问题?第一:需要写很多底层的代码不够高效,第二:所有事情必须要转化成两个操作,这本身就很奇怪,也不能解决所有的情况。那么下面就看看有什么可以做的更好的。

Spark 介绍

我还是介绍一些 Spark 的起源。Berkeley AMPLab,发表在 hotcloud 是一个从学术界到工业界的成功典范,也吸引了顶级 VC:Andreessen Horowitz 的注资。

AMPLab 这个实验室非常厉害,做大数据、云计算,跟工业界结合很紧密,之前就是他们做 mesos、hadoop online,在 2013 年,这些大牛(Berkeley 系主任、MIT 最年轻的助理教授)从Berkeley AMPLab 出去成立了 Databricks,引无数 Hadoop 大佬尽折腰,其实也不见得是它们内心这么想,比如 Cloudera 也有自家的 impala,支持 Spark 肯定会让它自家很难受,但如果你的客户强烈要求你支持,你是没有选择的

另外起名字也很重要,Spark 就占了先机,它们 CTO 说 Where There‘s Spark There’s Fire,它是用函数式语言 Scala 编写,Spark 简单说就是内存计算(包含迭代式计算,DAG 计算、流式计算 )框架,之前 MapReduce 因效率低下大家经常嘲笑,而 Spark 的出现让大家很清新。Reynod 作为 Spark 核心开发者, 介绍 Spark 性能超 Hadoop 百倍,算法实现仅有其 1/10 或 1/100.

那为啥用 Spark 呢?最直接就是快啊,你用 Hadoop 跑大规模数据几个小时跑完,这边才几十秒,这种变化不仅是数量级的,并且是对你的开发方式翻天覆地的变化,比如你想验证一个算法,你也不知道到底效果如何,但如果能在秒级就给你反馈,你可以立马去调节。

其他的如比 MapReduce 灵活啊,支持迭代的算法,ad-hoc query,不需你费很多力气花在软件搭建上。如果说你用 Hadoop 组建集群、测试、部署一个简单任务要 1 周时间,Spark 可能只要一天。在去年的 Sort benchmark 上,Spark 用了 23 分钟跑完 100TB 的排序,刷新之前 Hadoop 保持的世界纪录。

下面这个图,是 Hadoop 跟 Spark 在回归算法上比较,在 Hadoop 世界里,做迭代计算是非常耗资源,它每次的 IO 序列画代价很大,所以每次迭代需要差不多的等待。而 Spark 第一次启动需要载入到内存,之后迭代直接在内存利用中间结果做不落地的运算,所以后期迭代速度快到可以忽略不计。

\

此外,Spark 也是一个生态系统,除核心组建 Spark,它也可以跑在 Hadoop 上,还提供了很多方便的库,比如做流式计算,Spark Streaming,比如 GraphX 做图的运算,MLBase 做机器学习,Shark 类似 Hive,BinkDB 也很有意思,为达到高效,它允许你提供一个误差概率,如果你要求精确度越低,它运算速度就越快,在做一些模糊计算时像 Twitter 的 Follower 数目,可以提高效率。

所以总体说,Spark 是一个非常精炼的 API,提供常用的集合操作,然后本身可以独立运行,或在 Hadoop Yarn 上面,或者 Mesos,而存储也可以用 HDFS,做到了兼容并包,敏捷高效。是不是会取代 Hadoop 或成为 Hadoop 的下一代核心,我们拭目以待!

如何学习大数据

那同学们如果问如何开始学习大数据,我也有一些建议,首先还是打好基础,Hadoop 虽然火热,但它的基础原理,都是书本上很多年的积累,像 Unix 设计哲学、数据库的原理;

其次是选择目标,如果你想做数据科学家,我可以推荐 Coursera 的数据科学课程,通俗易懂,学习 Hive、Pig 这些基本工具;如果做应用层,主要是把 Hadoop 的一些工作流要熟悉,包括一些基本调优;如果是想做架构,除能搭建集群,对各基础软件服务很了解,还要理解计算机的瓶颈和负载管理,Linux 的一些性能工具。

最后,还是要多加练习,大数据本身就是靠实践,你可以先按 API 写书上的例子,能够先调试成功,在下面就是多积累,当遇到相似问题能找到对应的经典模式,再进一步就是实际问题,也许周边谁也没遇到,你需要些灵感和网上问问题的技巧,然后根据实际情况作出最佳选择。

\

上一页1234下一页

上一篇:大数据带来的四种思维
下一篇:芝麻开门 大数据征信体系揭秘
精选推荐
科学家从蟑螂获得启发 教机器人更好地走路
科学家从蟑螂获得启发 教机器人更好地走路

[2017-12-11]  Weihmann指出:“我特别感到惊讶的是,动物运动稳定机制的变化与腿部协调的变化是一致的。昆虫的慢运行非常稳定,因为它的重心很低,三条腿总是以协调的方式运动。...

美国人工智能公司Skymind进入福建全面开展业务
美国人工智能公司Skymind进入福建全面开展业务

[2017-12-11]  人工智能在当今这个时代对大家来说想必是非常熟悉的,这也是我国近十几年来一直追求的目标,未来的时间里这也将是全人类追求的目标。就目前来看,近年来,人工智能或在我国迎......

智能机器人困惑的时候知道该问什么问题
智能机器人困惑的时候知道该问什么问题

[2017-03-20]   照片:Nick Dentamaro 布朗大学 上周,我们提到了麻省理工学院的一些研究,即通过链接人的大脑来帮助机器人在他们将要犯错误的时 ...

集群机器人领域最新研究:一种用于探测未知环境的微型无人机群
集群机器人领域最新研究:一种用于探测未知环境的微型无人机群

[2019-10-26]  (图:无人机扩散至不同方向来探索环境。当一个无人机注意到另一个无人机在它的首选方向,它将试图飞到另一个方向。若首选方向冲突,低优先 ...

人工智能准确预测患者一年内的死亡风险,原理却无法解释
人工智能准确预测患者一年内的死亡风险,原理却无法解释

[2019-11-13]  图片来自BURGER PHANIE SCIENCE PHOTO LIBRARY美国最新研究显示,人工智能通过查看心脏测试结果,以高达85%以上的准确率预测了一个人在一 ...

人工智能民主化能否实现取决于科技巨头
人工智能民主化能否实现取决于科技巨头

[2017-12-29]  我们经常听到像谷歌和微软这样的公司说他们希望人工智能民主化。这是一个很好的词,民主化。 但这些公司如何界定“民主化”还不清楚,像AI本身一样,它似乎有点炒作的味道...

麻省理工最新机器人“装配工”未来可建造太空基地
麻省理工最新机器人“装配工”未来可建造太空基地

[2019-10-17]  两个机器人原型把一系列小单元组装成大结构体麻省理工学院科研人员最近提出一种新型机器人技术,即一种小型机器人系统,能够自主地用统一规 ...

受大脑控制的机器人
受大脑控制的机器人

[2017-03-21]   想让机器人做我们想做的,首先,他得全面地了解我们。通常,这就意味着人类需要要付出更多。比如,教机器人复杂的人类语言或者把一项任务 ...

本周栏目热点

[2016-08-07]     著名物理学家霍金教授说,忘了黑洞吧,女人才是宇宙最大的谜。但,未来这个最大的谜题因为大数据分析的出现而揭开谜底。人工智能是大数 ...

网友在什么时候发朋友圈可以看出贫富差距?

[2016-08-30]   收入不平等、教育不平等这些名词你都不会陌生。现在有人希望通过分析Instagram上图片分享的地理定位数据来告诉你什么叫做——社交 ...

[2018-07-23]  随着信息技术在各个领域的全面应用,数据的种类、数量、速度和价值都出现了显著变化,一个大规模生产、分享和应用数据的时代已经开启。...

个人征信机构静待发令枪响 业内:大数据并不便宜

[1970-01-01]   个人征信牌照发放在即。近日,《每日经济新闻》记者从多家机构获悉,央行对征信机构的验收工作已经收尾 ...

数据开放的经济学分析

[1970-01-01]   2009年美国启动开放政府计划,开启了国际政府机构以数据开放展开数据与信息分享的重要议题,在世界范围 ...