人云科技吴朱华:中小企业Big Data解决之道

[来源] 达内    [编辑] 达内   [时间]2012-08-30

我们要进行不断测试迭代来进行验证。通过不断测试迭代我们就认清楚,哪些技术分析。之后还有通过迭代认清楚需求,并且通过迭代向老板证明我们做的事情是有价值的。还有你觉得流程,都比较复杂跑出来再说,可能通过这个过程就知道大致需要一些什么,如果实在不行就可以先跑跑试试...

这种趋势已经让很多相信数据之力量的企业做出改变。恰逢此时,为了让更多的人了解和使用分析大数据,CSDN独家承办的大数据技术大会于今日在北京中旅大厦召开。本次大会汇集Hadoop、NoSQL、数据分析与挖掘、数据仓库、商业智能以及开源云计算架构等诸多热点话题。包括百度、淘宝、新浪等业界知名专家与参会者齐聚一堂,共同探讨大数据浪潮下的行业应对法则以及大数据时代的抉择。

人云科技创始人兼总经理吴朱华
吴朱华表示海量数据呈现“4V + 1C”的特点。既Variety:一般包括结构化、半结构化和非结构化等多类数据,而且它们处理和分析方式有区别;Volume:通过各种设备产生了大量的数据,PB级别是常态;Velocity:要求快速处理, 在时效性;Vitality:分析和处理模型必须快速变化,因为需求在变;Complexity:处理和分析的难度非常大。互联网企业、智能电网、车联网、医疗行业和安全领域等都充分体现出海量数据的用途和价值。他认为中小企业面对大数据的解决之道应遵循采集、导入/处理、查询、挖掘的流程。
最后吴朱华向大家介绍了自家的YunTable。YunTable是在传统的分布式数据库和新的NoSQL技术的基础上发展而来的新一代分布式数据库。通过它能构建一个百台级别的分布式集群来管理PB级别的海量数据。YunTable最大的特色就是快,它能极快地导入海量的数据,并极快地进行相关的查询;其次是TCO低,整体成本比提供类似性能的Oracle Exadata或者EMC GreenPlum等低很多,并且扩展能力更强。
以下为文字实录
刚才有嘉宾说到审核,我们大多数群众希望哪一天微博能够自动审核,而不用人工审核。今天非常荣幸来到这里,海量数据是一个非常大的趋势,不仅在座一些淘宝,腾讯,阿里巴巴这种公司有这类需求,我接触很多公司都有这种类似需求,特别是一些中型物联网跟互联网公司我今天借这个机会和大家分享一下,我是如何帮助一些中小型企业实施一些海量数据相关解决方案。
在这里我首先做一下自我介绍,我叫吴朱华,是上海人云科技团队创始人,之前是在IBM中国研究院从事云计算相关的研究工作。这是我的邮件地址,还有我的微博,还有我 网站地址,就是人云的意思。接着介绍一下我们团队, 成立2010年底,主要都是来自于研究院和上海贝尔卡特等著名IT企业,我们现在离力推的产品是YunTable,还有今年年初我们出版一本书叫《云计算核心技术剖析》,这本书半年之内已经印刷上万册,具有非常好评。之前的一些书没有专门针对程序员,我专门写了这本书,虽然不是说什么大师之作,看了之后还是有所收获。
首先给大家讲一下在我眼中什么是海量数据?最近几年由于物联网,由于微博,智能手机,传感器这种设备越来越多,通过电脑生成数据越来越多,而且量级化是过去无法想象的。在这些数据里面都有什么价值呢?谈到这了,我跟大家做一个比喻,我觉得非常合适。如果我们拿出一个放大镜,放大镜指的是用于处理海量数据的一个工具,我们拿放大镜照着这些冰冷的数据,我们就能发现有一些非常有价值,通过行业给大家讲一下价值在哪些方面。
第一个是互联网企业,比如我们有用户做网络广告监测,每天有几百G技术,网络点击数据,他就会去分析这些点击日志来分析,哪些用户在哪些阶段点击广告,从而帮助商户们来判断他投广告是否有价值。第二是智能电网,我 客户是做一些智能电网方面的解决方案。比如说,他们一个省有300个用电用户,每隔几分钟会将他们大宗数据发送到后端集群当中,之后集群就会对这些数亿条数据进行分析,来分析一下大概的用电模式,根据用电模式来生产电力,这样能够节省电力资源的浪费。
第三个方面是车联网,我们有用户是做这方面,他们有几十万个车载终端。他们车载终端,是每隔几分钟都会上传一些数据到后端数据集群里面,最后会分析这些数据,来判断一下大致路况是什么情况,之后将有价值的路况信息 Push客户端里面,能够帮助客户节省在路上时间。第四是医疗行业,每个人看病都有病例,如果我们把全国,几千万病例都汇总起来之后进行一些数据分析,数据处理,会找出大致的一些模式,通过这种模式非常容易的帮助医生看病。
第五个是安全领域,比如美国比较火,中情局,他们有很多影视数据关于煽动的,还有本拉登一些照片,之后就分析一些哪些煽动助萨达姆,卡札菲,本拉登,除此之外还有一些通过海量分析文本数据从而形成一定程度的AI。
之后跟大家讲一下,我总结数据有四个特点,4V+1C。第一V是Variety,海量数据有不同格式,第一种是结构化,我们常见的数据,还有半结据化网页数据,还有非结构化视频音频数据。而且这些数据化他们处理方式是比较大的。第二点就是Volume,量比较大,我们有一些用户化每秒就要进入很多数据,很多客户内部都有几批数据,还有下面淘宝都是几PB数据,所以PB化将是比较常态的情况。
第三个是Velocity,因为数据化会存在时效性,需要快速处理,并得到结果出来。比如说,一些电商数据,今天的信息不处理没有结果化,将会影响到今天捕获很多商业决策。第四是Vitality,因为大家知道互联网行业,各行业需求 变,所以说不像银行业,金融业都是IBM大型机用了几十年都没有问题。所以,他们分析模型是不断变化的,基于上个4个V,说明促成最后一个C就是Complexity,使得海量数据分析非常复杂,使得过去靠单纯易于关于数据库BI已经不是太适合了。所以,可能需要新的创新。
最后跟大家讲一下海量数据如何从小做起?如何做企业化,离不开两个东西,一个是流程,利用流程来帮助我们认清一个大致的步伐和节奏。第二就是方针,利用方针来指导我们如何走这个流程。跟大家讲一下刚才说到方针和流程,先讲一下流程,流程怎么分四步,我个人总结。第一步是采集,第二步是导入和处理,第三步是查询,第四步是挖掘,分别给大家解释一下。
第一步是采集,我们现在很多客户端他们都会发数据给前端的数据库,比如MySQL,MySQL把数据存下来,并且用户会对这些数据进行查询,比如说电商数据,我们现在做笔交易,马上可以存到里面,用户可以进行查询订单什么样一 情况,是不是发到上海,我们家那边了。在采集阶段特点并发数非常高,每秒钟有几十万次并发,或者是上次奥运会一样,几百万次,几千万次并发。在这个阶段比较常用的数据MySQL,Redis,MongoDB,还有用于一些工业场合实时数据库。
第二阶段是导入和处理,因为前端虽然很多小型数据库,但是太分散很难进行统一分析。所以,我们需要将海量来自前端数据导入到一个集中数据库进行集中处理,并在导入过程中进行一些数据清洗工作。在这个阶段导入量非常大,需要每秒100兆,或者百万行量级,如果太低会造成流程堵塞。
第三点是查询,将很多数据导入集群里面,就可以对数据进行普通查询和分类汇总,从而满足一些大多数商业方面要求。在这边查询涉及到数据量非常大,查询的请求特别多,被选工具有Hadoop,还有Hadoop比较好的一些东西,比如 自FaceBook的hive,还有来自雅虎,HBase等阶段。我们走到第三阶段挖掘,基于之前一些数据结果进行挖掘。一种是推介,第二种是分类,第三种是群集,三大类的数据挖掘算法。特点算法比较复杂,一般是看不懂,并且涉及到数据量跟计算量是非常大的。因为这块我不是太熟只举了一个产品,就是Hadoop Mahout,可以支持三大类算法,一推介,二分类,三集群。
对于现在的大数据环境而言,Hadoop绝对是现在最主流的平台。不论IBM、微软还是Oracle都选择与她并存。还有一些小公司,也在做基于Hadoop的东西。
之后给大家讲一下具体方针,第一点要认识自己的不足,因为我们中小企业,无论是在资源,资金方面,是无法跟一些三巨头相媲美,我们要认识自己的不足。第二点是明确分析自己的需求,比如说我们的海量数据是结构化的, 是非结构化的,还是半结构化的。比如说,我们数据大小是TB级别,还是PB级别,还是PB+级别的。还有我们瞬间读写量级是什么级别,出现读写100万行,或者读写100兆,或者我们是读为主,还是写为主,还是同时建立并发数大概是多少,不是我们百万并发还是千万并发,还有一致性,我们是需要强一致性,还是最后一致性,还有延迟度,最低能够容忍多慢延迟度,而不是一秒,10秒,或者1小时,还有算法复杂度。
第三点我们要灵活使用现有工具,比如一些开源,还有一些可以承受的商业软件。我个人不是排斥自建,因为我们小公司,我们要找准点,希望那个点不是重新发明文字,而是能够做到画龙点睛。第四部分并不是所有公司都是亚马逊,我们尽可能,就连Google也很难做平台化路线,我们尽量不要往那方面走,因为平台化本身有很多成本在上面,比如设计成本,我们尽可能以应用场景为先,先把我们商用场景,商用价值跑出来再说。
第五点比较通用的语言,我们要进行不断测试迭代来进行验证。通过不断测试迭代我们就认清楚,哪些技术分析。之后还有通过迭代认清楚需求,并且通过迭代向老板证明我们做的事情是有价值的。还有你觉得流程,都比较复杂跑出来再说,可能通过这个过程就知道大致需要一些什么,如果实在不行就可以先跑跑试试看。
最后跟大家介绍一下我们YunTable,在性能方面做很多优化。因为我们出去跟客户谈,为什么要用我们的东西,唯一的理由就是我们快。我们专注点在导入和查询,能够将数据非常快导入我们YunTable里面,并且能够非常快的进行查 。比如我们上周有个例子,我们用户一个表大概50列,我们先试一个比较简单的,现实一下两亿行的场景,我们起4个节点把两亿行导进来,每秒能导入20多万行,大概20多分钟能够导入数据库里面,之后在这个基础上,平均在10秒以内完成大多数的查询工作。
因为我们那边性能方面已经做到极致,我感觉是接近Oracle Exadata,但是成熟度都比我们强很多。最后谢谢大家,我做两个小广告。书的广告已经做了,第二点如果大家需要一些海量数据分析的解决方案,特别中小企业可以跟我联系,我微博还有邮件都在上面,如果大家需要一个导入数据非常快进行导入,几十万条,几亿条都没有问题,我们可以帮你试试看,最后感谢大家。

资源下载