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

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下一页

上一篇:大数据带来的四种思维
下一篇:芝麻开门 大数据征信体系揭秘
精选推荐
改变保险市场的格局:无人机如何通过更快的估算、响应时间和利益交付来使消费者受益
改变保险市场的格局:无人机如何通过更快的估算、响应时间和利益交付来

[2018-12-08]  市场研究公司IHS Markit预测,到2020年,专业无人机市场将通过农业,能源和建筑等行业利用测量,制图,规划等技术实现77 1%的复合年增长率(CAGR)。与此同时,消费者无人......

可编辑神经网络,有望简化深度学习?
可编辑神经网络,有望简化深度学习?

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

新型轻便机器人套装重5kg,辅助跑步和步行
新型轻便机器人套装重5kg,辅助跑步和步行

[2019-10-23]  虽然步行对大多数人来说似乎不是负担,但对有些人来说,这项简单的运动往往会让人感到筋疲力尽。比如手术或中风后恢复的患者、帕金森氏症患 ...

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

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

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

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

苹果AI主管透露自动驾驶汽车项目关于机器学习方面的进展
苹果AI主管透露自动驾驶汽车项目关于机器学习方面的进展

[2017-12-11]  苹果隐秘的自动驾驶汽车项目多年来一直在转移焦点,但今年似乎正在加速。 4月份,公司获得了在加利福尼亚州进行自动驾驶汽车测试的许可证,而在6月份,苹果公司首席执行官库......

研究人员融合人类与AI的创造力 显著提高了深度学习的表现
研究人员融合人类与AI的创造力 显著提高了深度学习的表现

[2019-10-12]  由加拿大人工智能领域研究主席、滑铁卢大学系统设计工程教授Alexander Wong领导的一个团队开发了一种新型紧凑型神经网络家族,可以在智能 ...

麻省理工又秀神技:推出如魔法般跳跃的方块机器人集群
麻省理工又秀神技:推出如魔法般跳跃的方块机器人集群

[2019-10-31]  几天前,小编向大家介绍过麻省理工(MIT)研发的一种自组装机器人集群(点此阅览),它们可以用统一标准的小单元自动组装出各种大型结构。 ...

本周栏目热点

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

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

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

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

[1970-01-01]   今天Fivethirtyeight(以数据为主的时政分析博客)的博主,美国著名政治评论家、 大数据 领域的超人Nate ...

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

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

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

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