连线硅谷 | 美国的公司这样从大数据里挖商机
2015-01-29 10:46 硅谷 美国 商机

“大数据”,已经成为当下出现频率最高的词之一,究竟什么是大数据?它有什么商机?硅谷在线教育公司 Coursera 数据工程师董飞为你详细解答:当我们在谈论大数据时,我们在谈什么?本文为董飞近日于硅谷创业协会所做的《大数据入门》的讲座笔记。

i黑马:“大数据”,已经成为当下出现频率最高的词之一,究竟什么是大数据?它有什么商机?硅谷在线教育公司 Coursera 数据工程师董飞为你详细解答:当我们在谈论大数据时,我们在谈什么?本文为董飞近日于硅谷创业协会所做的《大数据入门》的讲座笔记。


大数据里的商机

 

首先自我介绍一下,我叫董飞,本科南开大学毕业,加入创业公司酷迅,做实时信息检索,后来进入百度基础架构组,随后去杜克大学留学,攻读硕士期间,做跟Hadoop大数据相关的研究项目Starfish,之后在Amazon EC2部门实习,了解它们的内部架构,毕业后加入Linkedin,做广告组的架构,涉及Hadoop调优,Data Pipeline,实时系统。

 

在硅谷大家非常热情的谈创业谈机会,我也通过自己的一些观察和积累,看到了不少最近几年涌现的热门创业公司。我给大家一个列表,这个是华尔街网站的全世界创业公司融资规模评选(http://graphics.wsj.com/billion-dollar-club/)。
 


它本来的标题是billionclub,我在去年讲座也分享过,不到一年的时间,截至到2015年1月17日,现在的排名和规模已经发生了很大的变化。首先估值在10Billlon的达到了7家,而一年前一家都没有。第二第一名是中国人家喻户晓的小米,第三,前20名中,绝大多数(8成在美国,在加州,在硅谷,在旧金山!)比如Uber, Airbnb, Dropbox, Pinterest. 第四里面也有不少相似模式成功的,比如Flipkart就是印度市场的淘宝,Uber与Airbnb都是共享经济的范畴。所以大家还是可以在移动(Uber),大数据(Palantir),消费级互联网,通讯(Snapchat),支付(Square),O2O App里面寻找下大机会。

 


在Linkedin,它每年评选一个最有需求的创业公司名单,基本上结合Linkedin用户访问量,申请数做出的挖掘。我这里列出了最近3年,大家可以做个判别和趋势分析,里面还是很大靠谱的,比如不少上榜名单已经成功IPO(GoPro. Hortonworks,Splunk),里面有很多大数据领域公司(Splunk,Box,Nimble Storage,Violin Memroy,Dropbox)除了之前看到的一些互联网项目,在一些医疗健康(theranos),智能硬件(leap motion, fitbit,Jawbone),在线教育(Coursera),也吸引了很大注意力。
 

 

这张图是讲“新兴技术炒作”周期,把各类技术按照技术成熟度和期望值分类。越往左,技术越新潮,越处于概念阶段;越往右,技术越成熟,越进入商业化应用,发挥出提高生产率的效果。今年和去年的图对比显示,物联网、自动驾驶汽车、消费级3D打印、自然语言问答等概念正在处于炒作的顶峰。而大数据已从顶峰滑落,NFC和云计算接近谷底。

 

Google资深科学家吴军博士(《数学之美》、《浪潮之巅》作者)提出,当前技术发展的三个趋势:第一、云计算和和移动互联网,这是正在进行时;第二、机器智能,现在开始发生,但很多人还没有意识到它的社会影响;第三、大数据和机器智能结合,这是未来时,一定会发生,有公司在做,但还没有形成规模。吴军认为,未来机器会控制98%的人,而现在我们就要做个选择,怎么成为剩下的2%?李开复在2015年新年展望也提出未来五年物联网带来庞大创业机会。

 

大数据的入门

 

从前有个国王很爱排场,有天他想奖赏他的宠臣,然后让他提任何奖励,这个大臣给国王看下面这个棋盘,是个8×8的方格,如果我在每个标号的格子内放米粒,第一个格子放1粒米,后面的格子总是前面格子的两倍。如果我棋盘放满,需要多少米粒?用级数做演算,它的推演是 :1 + 2 + 4 ... + 2^63 = 2^64-1 ,这个结果兑现的话,这个国家会破产。其实我把这个棋盘分成上下两半,在上一半总共需要的米粒是2^32,这并不是个很大的数。

 


这张曲线图是信息时代的增长,在工业革命之前(1820年),世界人均GDP在1800年前的两三千年里基本没有变化,而从1820年到2001年的180年里,世界人均GDP从原来的667美元增长到6049美元。由此足见,工业革命带来的收入增长的确是翻天覆地的。在发明了电力、电脑、互联网、移动互联网之后,全球年GDP增长 从万分之5到2%;信息也在急剧增长,根据计算,最近两年的信息量是之前30年的总和,最近10年是远超人类所有之前累计信息量之和。

 

计算机时代,有个著名的摩尔定律,同样成本每隔18个月晶体管数量会翻倍,反过来同样数量晶体管成本会减半,这个规律已经很好的match了最近30年的发展,并且可以衍生到很多类似的领域:存储,功耗、带宽、像素。

 

冯·诺依曼(20世纪最重要的数学家之一)提出,技术将会逼近人类历史上的某种本质的奇点,在那之后 全部人类行为都不可能以我们熟悉的面貌继续存在,这就是著名的奇点理论。美国未来学家Ray Kurzweil称人类能够在2045年实现数字化永生,相信随着信息技术、无线网、生物、物理等领域的指数级增长,将在2029年实现人工智能,人的寿命也将会在未来15年得到大幅延长。

 

大数据的用途
 

 

举几个有趣的例子:Linkedin的CEO提出经济图谱的概念,希望整合用户、公司、工作机会、技能、学校,帖子变成一个复杂而有蕴含无限可能的数字化社会;找对象,有个国外的极客,他抓取了dating网站的数据,根据有些指标,如地理、年龄、兴趣,建立3D模型找到真爱;阿里巴巴通过数据魔方(其大数据产品),得出消费跟女生胸部成正比的结论。在移动App上,今日头条通过个人社会化信息,建立起兴趣图谱推荐文章并且随着你的使用越来越聪明;在线教育领域MOOC中的M就是大规模的意思;其他如最近拿到1.3亿美金融资的互联网金融——人人贷,通过大数据积累信用,释放一些传统金融体系下未被满足而又广泛存在的巨大需求。

 

这是总结的2014年Big Data公司列表,大致可以分成基础架构和应用,而底层都是会用到一些通用技术,如Hadoop、Mahout、HBase、Cassandra;在分析这一块,Cloudera、Hortonworks、Mapr作为Hadoop的三剑客;在运维领域,Mangodb、Couchbase都是Nosql的代表,、Apps更多,社交消费领域有Google、Amazon、Netflix、Twitter;商业智能有SAP,GoodData;广告媒体领域有TURN,Rocketfuel;做智能运维的Sumologic等等。

 

BAT对大数据的投入不惜余力,Baidu在4年前就提出框计算的东西,近两年成立了硅谷研究院,挖来Andrew Ng作为首席科学家,研究项目是百度大脑,在语音,图片识别大幅提高精确度和召回率,最近还做了无人自行车。腾讯研发了C++平台的海量存储系统。阿里云当年备受争议,双十一的洗礼证明了OceanBase和阿里云的靠谱。小米的雷军对大数据也寄托厚望。

 

大数据技术哪家强?

 

与大数据最紧密的相关技术就是云计算,主要是Amazon Web Service和Google Cloud Platform,在国内有阿里云、金山云、百度云、腾讯云、小米云、360云,每个里面都是大量技术文档和标准,从计算到存储,从数据库到消息,从监控到部署管理,从虚拟网络到CDN,把所有的一切用软件重新定义了一遍。

 

数据库的杰出代表

 

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

 

首先看Hadoop从哪里开始的,在10多年前,Google出了3篇paper论述分布式系统的做法,分别是GFS、MapReduce、 BigTable,当时Apache Nutch Lucene的作者Doug Cutting也是其中之一,后来他们被Yahoo收购,专门成立Team去投入做,就是Hadoop的开始和大规模发展的地方,之后随着Yahoo的衰落,牛人去了Facebook、Google也成立了Cloudera、 Hortonworks等大数据公司,把Hadoop的实践带到各个硅谷公司。而Google还没有停止,又出了新的三辆马车:Pregel、Caffeine、 Dremel, 后来又有很多步入后尘,开始新一轮开源大战。

 

为什么Hadoop适合做大数据?

 

首先扩展很好,直接通过加节点就可以把系统能力提高,它有个重要思想是移动计算而不是移动数据,因为数据的移动是很大的成本需要网络带宽。其次Hadoop提出的目标就是利用廉价的普通计算机(硬盘),这样虽然可能不稳定(磁盘坏的几率高),但通过系统级别上的容错和冗余达到高可靠性。并且非常灵活,可以使用各种data、二进制、文档型和记录型。使用各种形式(结构化,半结构化,非结构化所谓的schemaless),在按需计算上也是个技巧。

 

看个基本的例子,看看到底怎么写Hadoop的代码,每个编程语言都有个hello world的版本,对应的Hadoop就是Word Count。需求很简单,就是为文档中的每个单词统计词频,这个文档如果很小,用PC上Linux命令就可以做到,问题是如果是1Billion以上的文本呢?单机无法装得下。这时候典型的思路就是分而治之:先对每个文档片段做个Map,生成单词到频率(1)的对应,然后把同样单词(key)送入到同一个reducer上面去,最后每个reducer加一下就拿到最后结果。

 

MapReduce模型的问题
 

第一、需要写很多底层的代码不够高效;第二、所有的事情必须要转化成两个操作,本身就很奇怪,也不能解决所有的情况。下面就看看有没有什么可以做的更好的。

 

为什么是Spark?

 

Spark出自 2010年Berkeley AMPLab,发表在hotcloud ,是一个从学术界到工业界的成功典范,也吸引了顶级VC——Andreessen Horowitz的 注资。 AMPLab这个实验室非常厉害,做大数据、云计算,跟工业界结合很紧密,之前就是他们做mesos、hadoop online。

 

最直接的原因是快。用Hadoop跑大规模数据几个小时跑完,这边才几十秒,这种变化不仅是数量级的,并且是对开发方式翻天覆地的变化,如果说用Hadoop的组建集群、测试,部署一个简单任务要1周的时间,Spark可能只要一天。在去年的Sort benchmark上,Spark用了23min跑完了100TB的排序,刷新了之前Hadoop保持的世界纪录。

 

如何学习大数据?
 


首先是打好基础,Hadoop虽然是火热,但基础原理都是书本上很多年的积累;其次是选择目标,推荐coursera的data science课程;之后要多加练习,最后就是多积累,遇到相似的问题能找到对应的经典模式。再深一步就是需要灵感和网上问问题的技巧,最后根据实际情况做出最佳选择。

 

本文作者董飞系硅谷在线教育公司Coursera的数据工程师。
联系方式:dongfeiwww.gmail.com。

 

本文不代表本刊观点与立场。