×关闭背景

日志易创办人兼CEO陈军:机器大数据实时搜索分析引擎

2015-08-27 16:16:04      来源:移动LABS       作者:移动LABS

大数据

【摘要】【移动LABS】8月26—27日,2015中国国际大数据大会在北京召开,移动LABS作为大会战略合作媒体受邀现场直播。日志易创办人兼CEO陈军分享机器大数据实时搜索分析引擎的话题。

【移动LABS】8月26—27日,2015中国国际大数据大会在北京召开,移动LABS作为大会战略合作媒体受邀现场直播。日志易创办人兼CEO陈军分享机器大数据实时搜索分析引擎的话题。

日志易创办人兼CEO陈军

如下为速记全文:

大家下午好,我看今天演讲前面两位嘉宾美国回来。我正好也是过去在硅谷也当了十几年码农,98年到09年,先是在斯科后来到了谷歌,后来09年回来加入腾讯。我今天讲的机器大数据实时搜索分析引擎。这机器大数据这个名字听起来有点炫。这个其实就是说凡是那些服务器、网络设备、应用程序还有这些物联网的传感器,产生的这些数据都叫机器数据。那其中很重要一种就是日志。因为这些网络程序操作系统都会不断的产生日志。因为机器数据还有一类就是说未来更多的就是物联网这些传感器产生的数据。那这一类数据都有一个特点,他们都带时间戳,所以比较学术的名字时间序列,这时间戳非常重要。比如说你做一维监控,如果是一两个小时之后才知道出现什么问题那已经太晚。通常是需要在几秒钟知道一情况。

那我这里要讲的几个要点就是日志,因为重点是日志。因为物联网的传感器的这些数据还稍微远一点。现在大家碰到比较多的是日志。所以我会讲日志的应用场景过去的做法,现在的做法。然后这日志搜索引擎还有介绍一下我们这个产品日志易的架构。

前面提到日志就是一种时间序列及其数据,包括物联网传感器的数据。它的特点是在带着时间戳,这些IT系统会产生信息,用户上网也会源源不断产品信息,这可以分析用户上网的行为。其实日志就是反应一家公司真实的事实数据。前面有一位科学家张溪梦讲过怎么做这数据的,在网上有一篇比较出名的文章,有好几个版本的中文翻译。叫做《深度解析GrowingIo》还有一篇架构师写的十几页,里面讲的领英(音)刚才张溪梦他之前是领英是首席数据科学家,他也讲了(英文)3000多行代码埋了很多点来采集这数据。那采集过来的数据是怎么分析,一套架构就这篇文章讲。

其实采集出来都是以日志的输出,其实有统一的日志处理平台。那我们知道很多做大数据的现在用到一个大数据底层的开元消息系统叫卡夫卡(音),卡夫卡就是领英(音)这一家公司发明,他们就是为了处理日志这么大量,需要一个很强的消息队列系统,来采集传输这些日志。那这卡夫卡系统是可以做到,前几年(英文)公布的性能指标每秒钟10万条日志,而且是保证不丢日志,所以大家如果有兴趣也可以看一下这文章,可以对日志更深度的了解。这一篇文章不是太久就是一年前翻译成中文,大概也是一年前领英的架构师写的。

我们看一下日志,这一比较典型,APACHE ACCESS的服务器,输出的这样一条日志,你每一次点击一条或者多条的日志,这一条日志就包含了非常多的信息,首先前面IP地址这就是客户端什么时间来访问,这个时间戳,我说日志都是时间戳,是POST方法,我HTTP的状态,我们访问一些网站访问不了出404。返回的响应是多少字节,你访问URL是从哪个网站跳转过来了。然后还有客户端的浏览器的信息。有的网站服务器你访问它是跳转到别的服务器,跳转到哪里去,这个响应的延时,就是服务器的响应延时还有网站服务器后台应用响应延时,所以就包含了所有的信息。

这个就是解析出来给大家看到的,大家可以看的明白。我想给大家看的这一条日志可能是工程师才看得懂。对很多人来讲这样一条日志就像看书一样不知道什么意思。所以这个日志其实就可以用在很多场景,一个用在运维方面,可用性监控应用的性能监控。大家看到一条日志是带着延时,这是访问延时多少可以做应用性能监控,也可以做安全审计,你的网站是不是被渗透攻击了。因为在安全很重要就是所谓的安全事件管理,国家很多对定都要求防火墙这些都得留下日志作为一个合规审计,包括金融系统。

现在安全攻击高级持续攻击,是基本上用防火墙防不了,它是渗透进去可能是长时间渗透。就像在你家里可能配了你家里的钥匙,你不家的时候就进来,或者进来的时候躲在你家某个地方,长时间的渗透破坏。所以现在在安全领域有一个趋势,不去区分内网、外网,因为放火墙也不安全、内网啊也不安全。所以谷歌内部也不区分内网、外网,已经内网当作外网敞开,所以内网也需要做各种认证权限管理。

如果你的网络被渗透之后你怎么发现攻击,就得通过ATT,ATT很重要一块就是日志,因为别人渗透出来做了什么事情?这都会留下蛛丝马迹。所以这个系比较有效的手段。另外一个就是现在讲这互联网+,大量的都要把互联网因素融进自己里面,很重要的价值就是分析用户的行为。因为每一次用户访问都会一条或者多条,从这日志分析用户的行为。

未来代表物联网,前面也有讲到IOE或者叫做,就所有的东西万物联网就物联网产生的数据,也都是带时间戳,我之前跟奥迪德国过来的专家交流过他们一辆奥迪做这车联网,一辆奥迪就是20GB,所以你想想中国多少奥迪车在跑,每天会产生多少数据,这些数据怎么分析处理。

那这谷歌花30多亿美元,收购了一家(英文)苹果的人出来开发智能家居,它采集上来的数据后台就是给一家公司,美国公司叫(英文)来处理分析,那(英文)就是日志的时时搜索分析引擎,一个美国产品这一类产品中的一种。因为智能产生的数据,如果你观看这数据,就是一个温度、湿度这些东西。比如说每十秒钟上传一条,如果你观看温度、湿度没什么变化,或者变化很小,你必须分析时间戳一起分析,画出这趋势才有意义,不是时间戳光是一个温度湿度没有太大意义。

所以日志这么重要的东西无处不在,所有的企业只要有IT系统就有日志,日志记录了最重要的核心事实。那过去是没有得到重视,很多公司它日志基本上就是散落在各台服务器没有集中处理。而且通常是用作事后追查,出了问题这个运维出了故障,运维工程师登录到日志查看,而且查看的办法比较低级就是编辑其去VR去看,或者(英文),那有一些运维工程师水平高一点的会写一些脚跟程序去处理这个日志。但是你想想一个日志文件,如果是几GB甚至几十GB人眼看不过来,你就算脚跟处理也非常慢。

另外脚跟程序不容易就很删除,有时候硬盘空间不够了就把日志那么重要的信息给删掉。另外一个黑客入侵你的电脑之后第一件事就是删除日志,因为他入侵过程就是记录下来他第一件事情就是抹除这个痕迹,他抹除这个痕迹事后追查就比较难。后来大概进一步的做法,就有一些公司开始重视日志开始要处理这日志,那他们用什么办法?用数据库来处理这日志,数据库处理日志这不太合适,因为我们知道日志这个东西它文本数据,是一个格式非常自由的。各种各样的格式都有,那是程序员他自己想什么写日志就怎么写。数据库是一个关系型数据库它是有表格式,所谓的(英文)固定的。所以当你来一种新的日志过来,不同的字段你就得改,这成本就非常高的。

另外一个数据库它没办法处理这种,你每天是几百GB甚至上TB日志数据库处理不了,另外数据库没办法搜索引擎搜索日志想要的东西。因为我们知道在网页这里我们有谷歌百度这样的搜索引擎,你敲一个关键词任何网页都可以搜索。我们希望日志也能够像谷歌百度的搜索引擎。日志包含的任何信息都可以很快的搜索出来。

还有一种(英文)就是自己写程序去处理日志,这个也不太能够处理大的数据量。那到后来大概是七八年前,这个HADOOP这个东西出来之后,一些互联网公司用它来处理日志。HADOOP有什么问题,它首先不是开发框架,你得在HADOOP写程序做数据分析。而且HADOOP它是一个P处理的框架,它不是时时处理,P处理意味着你处理日志肯定几小时才能出这结果,快的话也要几十分钟才能出这结果。对于运维监控来讲,时时要求高的,那HADOOP是解决不了问题。它的查询也非常慢,这种查询十几分钟甚至几十分钟,所以HADOOP只能离线挖掘,没办法做在线分析,所以现在互联网要求越来越高,现在是OLAP。那HADOOP工具是支持不了在线的分析。

那到了更进一步的就出现了一些时时的计算框架,我这里介绍两个,一个叫STOM另外一个叫SPAK。这个STOM可以做到毫秒级。HADOOP是一批一批的处理,P处理的好处是吞吐率高,但是延时就大。延时处理吞吐率低,而且STOM这任务调度模块也做的不太好,而且现在基本上没什么开发了,没有再往前走,后来又出来一个SPARK,这个系统就连HADOOP创办人,未来HADOOP是被SPARK代替。越来越多的数据公司开始转向SPARK,它上面有各种学习支持非常完整,生态圈非常完整。而且基本上做SPARK,每一个主要核心模块的都有一家公司,他们都这些开发者出来开办公司,都是硅谷的创办公司。因为SPAR可是加州伯克利分校,他们去了麻省理工当教授,这帮人全部离开学校,就创办了(英文)公司,这家公司就专门支持SPARK。我们像HADOOP几家公司支持。一个比较著名的(英文)已经在美国上市。之所以要做比较时时性的处理,我们其实就有两个选择,一个是STOM还有一个SPARK。这两种通常就是说大家遇到选择架构的时候,到底应该选STOM还是SPARK。数据过来是一条一条的处理,延时非常小。所以如果你做交易系统或者是广告时时的投放,那可能用STOM更好。那SPARK是一个小的处理,所以就看你的,那它吞吐率就更好了。所以这两个取舍就在这里。

如果我们需要对日志进行时时的搜索分析,就需要一种时时的搜索分析引擎,一个拿来就用,就不是像这些HADOOP、SPARK还是一个开发框架还在上面写程序,所以这种东西有几个特点,一个是得快,日志从产品到搜索分析出结果只有几秒钟的延时。第二个是大,就是说能够每天处理TB级的日志量。现在我们讲大数据,这个还加一个快。而且还要灵活,它就向一个IT工程师用的谷歌搜索引擎一样分析各类的日志。现在国外有了产品,一个是(英文)商业软件,另外一个开元软件。

所以回顾一下就是日志系统的进化,就是说1.0是数据库,没办法支持任意格式的日志,支持大的数据量,到了2.0就是HADOOP解决方案它是需要你在上面做开发,而且是P处理时时性差也不支持卷文检索。到了3.0日志的时时搜索分析引擎。基本深是经历了这三代。

我先介绍一下SPLUNK,它那搜索框不像谷歌百度是给小费这用,是用一些关键词来搜索,它是作搜索框像写脚跟程序一样有各种命令,在里面像编程一样你可以写几十行,用它的命令来写脚跟语言来写非常复杂的信息。它是支持像管道这些东西。这是它的首创,那有一个报告也是去年的报告,讲到他也有问题,一个是它每天处理的日志量处理非常贵,很多银行买一百GB,就得几百万。那另外是检索去抽取字段,那它检索的速度会比较慢。另外一个可能对国内的金融机构来讲有个顾虑就是它参与了人进门。如果大家谷歌搜索引擎就可以看到这方面的报道。

另外一个开元套件就是ELK,他们是用二次开发使用超过一百台的ELK的集群。ELK是没有统一的部署,他们告警功能、权限管理功能、自监功能是收费。

我们在国内就自主研发了类似这样的系统。也是一个日志时时搜索分析引擎日志易这是我们的网站,我们有企业部署版还有SAAS版,每天处理500兆字节的日志是免费。我们处理框架就是松偶合的架构,上面有采集模块,然后日志处理模块,就是把它结构化抽取字段,然后日志检索模块。而且这些API五开放出来对接第三方的系统。我们日志功能就是搜索的日志,可以继续日志,可以进行各种统计,甚至包括事物的关联,因为不同的日志把它关联起来,因为日志的格式本身非常多,我们可以让用户自己配置这解析规则,识别各种文本的工具。还有开放了API对接第三方的系统。

我们想用的高性能可扩张的分布式架构,每秒钟处理10万条,每天TB级的日志量。如果把日志易化SPLUNK对比,日志是一开始就检索。功能上差不多。这就是产品页面的总揽,过去小时出现的多少条日志,这个就是原始日志排列在这利,抽取出来的字段列在左边,每一段日至抽取字段来就非常方便用户去看。这些字段也是列在左栏有多少个,每一个多少条日志也都统计出来,所以统计分析的功能非常方便使用。而且搜索框也是搜索语法,还有各种统计图表做这种数据可视化。基于搜索就可以告警,就是日志任何的情况可以告警,可以马上知道这异常,用户可以自己配置这仪表盘,一登陆就知道这情况,可以每天生成这报表。基本上就是一个这样的介绍通用的做法还有日志易这产品怎么样。如果大家有兴趣可以欢迎扫这二维码可以了解更多的信息谢谢。

声明:所有会议记录均为现场速记整理,未经演讲者审阅,本站刊登此文出于传递更多信息之目的,并不表示赞同其观点或证实其描述。

更多会议精彩内容请参见专题:http://labs.chinamobile.com/bigdata_2015

(责任编辑:王砾瑟)
共 1 页
分享到: 0

评论

全部评论我的评论

满栋梁2015-08-27 16:24

希望互联网的内容多一些

2PM_forever2015-08-27 16:22

转走了