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

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

上一篇:大数据带来的四种思维
下一篇:芝麻开门 大数据征信体系揭秘
精选推荐
17世纪的莱布尼茨试图制造“思想机器”却被现实打脸
17世纪的莱布尼茨试图制造“思想机器”却被现实打脸

[2019-11-05]  莱布尼茨,德国哲学家、数学家、律师,历史上少见的通才1666年,德国博学家戈特弗里德·威廉·莱布尼茨(Gottfried Wilhelm Leibniz)发 ...

通过对抗性图像黑入大脑
通过对抗性图像黑入大脑

[2018-03-02]  在上面的图片中,左边是一张猫的照片。在右边,你能分辨出它是同一只猫的图片,还是一张看起来相似的狗的图片?这两张图片之间的区别在于, ...

揭秘达芬奇手术机器人
揭秘达芬奇手术机器人

[2018-04-19]  达芬奇手术系统是由美国Intuitive Surgical公司制造的机器人手术系统。美国食品和药物管理局(FDA)于2000年通过该标准,旨在利用微创手段 ...

[2017-03-21]  虽然有很多关于机器人取代工人的担心,但哈佛经济学家James Bessen的论文指出,在过去的67年里机器人仅仅淘汰掉人类工作中的一个。在1950 ...

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

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

美国Natilus公司试飞水上无人货机 设计简单成本降低
美国Natilus公司试飞水上无人货机 设计简单成本降低

[2017-12-28]  Natilus创业公司成立于2014年,其梦想是建造大型无人机,以半价提供比船舶快得多国际货运。在十二月份,Natilus计划在旧金山湾测试一个9米翼展的小型原型无人机的水上滑行能力......

科学家从蟑螂获得启发 教机器人更好地走路
科学家从蟑螂获得启发 教机器人更好地走路

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

基于生物启发的机器人很容易适应丢失附属器官
基于生物启发的机器人很容易适应丢失附属器官

[2017-12-17]  很多机器人被设计应用在危险环境,如灾难现场。在这些地方,他们的运动系统完全有可能被损坏。那这样会吓跑这些机器人吗?也许不是,如果它们像日本的东北和北海道大学创造的......

本周栏目热点

[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代家庭农场主,他的农场种植的主要农作物是玉米和大豆,他同时也在进行玉 ...