1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

来源 华人事业互助平台

 

前言:愈演愈烈的大数据究竟如何服务于人们的生活,为个人,为企业,为社会创造价值?脱去计算机,模型这些标签,大数据的本质其实还有一丝人文情怀,之所以空前火爆,是因为大数据在商业决策,工业生产等领域中产生了巨大的影响,可以说大数据大大提高了生产力。

 

嘉宾简介:SimonZhang, 现供职于LinkedIn Business Analytics 的Sr. Director, 带领一只70多人大数据团队。2010年加入LinkedIn之前,Simon曾先后在eBay, Petco Animal Supplies, 和Epson AmericanInc.等优秀的公司工作。Simon也多次在互助会的活动中与会员分享求职,生活,和事业发展的精彩演讲。

 

热门标签: Business Intelligence, HDSF,SFDC, NoSQL, spark, database, 数据处理金字塔,快数据,热数据,Tableau, D3,High Chart, EasyData, Easy BI

 

1. “旧瓶装新酒”下的大数据

 

Simon Zhang (张溪梦):我们商业分析部门建立不到4年,从一个人发展到70多人,好,我们开始。我今天讲的东西,其实很简单,就是数据分析,有三个维度: 业务, 科学, 艺术.这三个东西相结合,围绕着“人”展开。从“人”开始,到“人”结束。

首先,我不觉得有什么“大数据”,很多优秀的公司有海量数据很多年了。他们打下了很多坚实的基础。比如说我以前工作过的eBay,曾经有世界上最大的数据仓库。(目前也许仍然是前三名。)Amazon,Wal-Mart等等都有很大的数据仓库。我们今天在商业分析中实现价值的很多要素,都是从数据仓库技术和理念里面迭代出来的。没错,大数据是“旧瓶新酒”的一种方式吧。不过数据量确实是爆炸形成长,为我们提出了一个难题。就是你问的第二个问题,工具之后怎么办?

 

 

数据量的增大呈现集合数量增加,Transitions,DemographicData, Web log, Social Network, machine generated data etc, 我们至少经历了4 到5次数据爆发, 每一次量的增加都在一千倍左右。

 

观众:上次访谈中你提到数据处理在数据pipeline中比fancy的算法design更重,LinkedIn是怎么解决数据处理的呢?

 

Simon Zhang (张溪梦):大家看看这个slide,数据的Pipeline就是一个从金字塔底部到上部的前进过程。真正好的分析师,要能够做到对这8个环节的掌控:

1) 从客户/用户开始,深刻了解业务

2) 对数据采集和标记的重要性有深刻认识 (重要但容易被忽略的一环)

3) 了解“数据库,Hadoop,和各种底层基础设施”是一个优秀的数据分析人员的基本要求。这个部分能够区分高手和低手。为什么呢?因为“速度”就是生命线。其实大数据的“大”,就是代表了能够在单位时间内迅速的产生“大”量的结果。而不是数据量的“庞大”。所以速度决定成败。速度的关键是硬件加速,数据库平台还是软件算法?兼而有之。不过我谈的还是更偏向后两个,数据平台的使用方法和算法。因为硬件基本上是固定的,高手与普通人的分别,就是同样的工具,完全不同的结果和速度。同样的系统,如果了解底层架构,你写的代码比别人有效率10倍,那么速度就要快很多。你就有更高的产出。

4) 数据的各种专题分析。比如说A/B testing,多变量分析,时间序列等等

5) 报表或者BI

 

观众:现在有些公司基于GPU 甚至专门设计asic加速 analytics的速度。而且还有spark那些。

 

2.谈Business Intelligence 的重要性

 

Simon Zhang (张溪梦):这都是非常优秀的技术,不过多少公司用GPU写东西?所以我们还是要回到一切的起点,就是“基础”报表的制作。我遇到过一些非常优秀的高级人才,他们对报表制作嗤之以鼻,认为是低端的东西,不愿意做。

 

观众:data visualization那一部分吧?

 

Simon Zhang (张溪梦): data visualization只是一个部分,BI包括背后大量的工程和自动化。报表需要有可重复性。

 

观众:嗯,金融公司都是用mission critical的application。

 

Simon Zhang (张溪梦):有一句话,”如果我们不知道如何度量它,那么我们就无法增长它“。所以我们要持续的对我们要观测的目标进行度量。让“机器”为我们工作,反复更新我们的报表。好的分析师,报表为他/她工作。一般的分析师,他为报表工作。

 

观众:请问你们70多人的组就是按照上面的8类来分工的吗?

 

Simon Zhang (张溪梦):我们的团队是按照这个来分工的。

 

观众:是不是可以这么理解:BI使用报表加速数据归一化处理的过程,并且使用tool automatically 得到一些insight?

 

Simon Zhang (张溪梦):报表是各种检测结果,分析师要读这些报表,最后把这些指针变成自己感觉的一部分,数据感觉的一部分。就是说,熟能生巧。你看得多了,就会有感觉。

 

Simon Zhang (张溪梦):这里要强调一点,很多做模型,数据挖掘的专业人士,也需要掌握这个技能,因为我们要衡量我们模型的效能,报表是最简单直接的方法。

 

3. 数据的存储和应用

 

观众:我们Samsung network unit strategy部门的data analytics strategy是focus在carrier data,他们有一个很大的challenge:各个部门用不同的data系统,而且还不愿意互相share。我想问一下像LinkedIn这么大的公司,数据平台是统一的? 有这种align interests的issue吗?

 

Simon Zhang (张溪梦):没关系,很好的问题。首先我们LinkedIn关注的是“End to End Analytics", 就是要确定分析的统一性,也就是说我们的数据系统要尽量Centralized。

 

观众:Simon, 我在Datastax 工作,主要开发cassandra. 所以很好奇,你们的NoSqL数据存储是存在哪的?

 

Simon Zhang (张溪梦):您可以看我们的团队, 市场分析,销售分析,产品分析,客服分析,风控等等都在一个大组里面。这样很有效率。我们的NoSQL存在很多不同的系统里面,HDFS为主。不过我们有大量其他种类的数据源,数据库,数据集合。我们需要做大量的数据整合。

 

观众:为什么你们团队还有sales?

 

Simon Zhang (张溪梦):我们支撑Sales.所以我们又要回到“金字塔”结构里面。

 

观众:刚刚你提到数据的快,如果是用HDFS, 好像达不到实时的要求?

 

Simon Zhang (张溪梦):没错,大家可以看到,数据金字塔的下面部分,花了我们90%以上的时间。所以非常非常慢。

Simon Zhang (张溪梦):这就要求我们要做的很聪明,金字塔的底部用技术替换掉。举个例子。实现自动化:

 

观众:你们要做的分析都是你们的客户提出来的吗?还是你们发现可以做的分析,然后向内部客户推荐?

 

Simon Zhang (张溪梦):开始的时候一定是从客户需求开始的,然后就要举一反三,推荐给客户真正有价值的东西。举个例子:销售人员向我门团队要一个分析,关于一个公司的潜在购买意向的分析。徒手操作,需要3天。


因为我们需要把非常庞大的数据进行整理,最后做成PPT。如果我们能够有足够的想像力,那么为什么我们不能把所有这种需求做成全自动的?这就是我们团队建立以后第一个项目,我们把这个过程做到了全自动。20秒之内就做完。我们就可以每天支持2500人以上的需求,然后成本对我们来说,只是两台机器在服务器中心。

 

观众:严格讲, HDFS 更象预处理过的数据storage, 当然无法实时了。

 

Simon Zhang (张溪梦):HDFS就是一个很慢的系统,对于我们来说,它只是一个ETL工具的一部分,所以我们要不断把低温度的数据从缓慢的系统里面抽取出来变成 “高温度” 的小数据,放到快速的系统里面去。然后让大多数人用“小数据”,“热数据”, “快数据”。商业的敏感度,我们可以和商业部门紧密结合协作。Hadoop有它的优势,比如说可以处理海量数据,这在数据仓库里面很多场景下是不太可能的(主要是因为成本)。然后机器学习,战略分析,统计分析,各种高级模型,都应该建立在一个统一的数据架构上面,或者说一个至少在虚拟层面上“统一”的结构上。这样才能有效率。否则大量的时间都花在了重复Pull数据上了。

 

观众:你们热数据和快数据是怎么存储的?

 

Simon Zhang (张溪梦):我们的热数据存在非常简单的系统里面:Mysql, picture,和In Memory Database。我们内部有一个“big table", 这张表涵盖了3%的数据量,但是我相信里面有60%以上的价值。

 

观众:请问您们所有报表都是20秒出来吗?还是有的需要batch job花更多时间?

 

Simon Zhang (张溪梦):我们的报表,有些需要2秒之内,或者更短就要出来。有些需要长一点. 但是必须要在秒级,否则没有人用。在企业内部,推广的问题很重要。最好的推广方法,就是让别人为你去推广。

 

观众:你们现在有使用spark吗?

 

Simon Zhang (张溪梦):我们有一个很小的Instance,30nodes? 内部有LinkedIn自己写的in memory DB,在Hadoop 上面。热数据一部分就在这里。

 

观众:Saul-Oracle-Middleware, 你前面提到BI Analytics,不知用些什么工具?

 

Simon Zhang (张溪梦):我们以前是Microstrategy,开发速度较慢。后来Tableau,D3,High Chart。然后我们内部开发了EasyBI,基于In memory DB 的报表工具。

我觉得系统会有各种问题,不过我们要在有限的系统之上,发挥无限的想像力和执行力。

 

观众:我们面对的情况是:公司已经积累了巨量数据,这些数据的采集,标记和存储都做得比较粗糙,当初积累这些数据的人也未必看得很远,也没有现成的 infrastructure。面对这样的数据,要从中挖掘一些有价值的东西,如何下手呢?如何去识别,推荐现有数据中的价值呢?

 

Simon Zhang (张溪梦):很好的问题,我觉得这个问题要从商业角度和用户角度看。首先,购买数据 >行为数据 >客户基本资料>近期数据>历史数据。还有,在开始什么都没有的情况下,带着问题去看。从基本的问题开始解决。不要一下子跳到那些“cool”的东西上去。

 

观众:你上次说LinkedIn每天有1TB的数据要分分析,你们如何从许多系统中快速获取数据?

 

Simon Zhang (张溪梦):我们的数据引擎每天都不停地 mine这些数据。Streaming和offline aggregation 同时进行。

 

观众:streaming的工具?

 

Simon Zhang (张溪梦):基础打好了,那些复杂的东西才能够解决的干净利索。Kafka,Samza, EasyBI。其实大公司也可以做,但是会用更多的时间去沟通。所以从自己的内部做,从小的领域开始做,然后慢慢扩展。我们就是是这么做的,以前的系统也很庞大缓慢。

 

观众:我知道LinkedIn有DBA 组包括Oracle DBAs,想问一下你们的大数据组和DBA组的关联?

 

Simon Zhang (张溪梦):我们是分析的组,DBA在DataOps,我们和他们的工作关系非常紧密。不过他们的任务是维护系统,Up and Run。我们的工作是用数据挣钱。大家缺了谁都不可以。

 

观众:我在Oracle 做 RDBMS 系统开发。请问你们主要用什么技术把大数据和关系数据库关联起来进行分析?这样的需求普遍吗?

 

Simon Zhang (张溪梦):我们内部团队开发了一个到现在为止我们内部最重要的工具:EasyData。这个工具(EasyData)是可以把Hadoop,Teradata, Mysql, csv, SFDC等很快整合的工具,事半功倍。以前都是写代码,痛苦缓慢!而且还能够自动更新和Scheduling,当时Tony和Jonathan两个人做的这个工具,至少把我们的效率提高了几十倍吧。 我们当时开发了几个内部重要的技术工具。 EasyData (数据整合),EasyBI(报表),M adoop(自动建立数据挖掘模型)。工欲善其事,必先利其器。

 

观众:Cool. 这个工具是把数据整合后再处理,还是可以实时的做跨平台join, aggregation, etc?

 

Simon Zhang (张溪梦):对,两者兼有。

 

观众:作为DBA, 我们最关心performance而且时间花得最多也是在Performance Tuning. 请问你们如何handle大数据的performance?

 

Simon Zhang (张溪梦):可以在任何一个系统里面做,或者跨平台。这个部分,我们内部有非常详细的monitoring工具,实时监测。还有一个有点“苦”的方法,数据仓库,如果一个query需要5分钟以上的时间,那么很简单。(直接杀掉)Hadoop 那边有个Queue,排队吧。还有一点,就是和内部的客户共赢!很多公司跑的更久。是啊。我们以前也认为这个Rule 太严了,不过运行将近一年多,公司仍然健康发展。最后还是结果最重要的。结果导向。

 

访谈最后Simon鼓励喜欢大数据的朋友打入数据业务的世界并且在兴趣的推动下打好基础,迅速学习,在快速应用实践中成长起来。


Add comment


Security code
Refresh