移动互联网下的大数据架构

访客:42247  发表于:2014-09-12 10:57:48

     普元软件CTO焦烈焱为大家带来——大数据架构实践

     焦烈焱:学术角度讲大家讲大数据大了传统数据做不了了,我的理解,大家都认识到了数据发挥一个很大的价值,把数据当做一个资产,对我们这个时代带来最大的好处。实际一直走在整个业界的前列,我们建立数据仓库,通过挖掘手段,金融决策的分析。我们现在讲到,银行有很多结构化的数据,我们后来还会有很多非结构化的数据,这些数据其实是整合起来才能发挥价值。数据资产这个概念,资产不是说我们以前这样一个做法,把这个数据集中起来,而是做一个交叉分析,发挥作用更多是一个资产。我们在银行里面也有很多结构化的数据,我们到底用哪些非结构化的数据,互联网介绍,介绍自己,我在银行里面,我们到底有哪些非结构化,我们大家列出来以后,我们有很多。比如说网银上面行为的数据,我们在客服有很多语音的数据,票证的数据,舆情分析,微博,微信,社交,这些数据放在一起作为交叉,成为数据资产的概念。这个概念大家其实争论还是比较多,一谈到资产大家就想到钱,我觉得好处在于,大家以资产角度看数据,把数据重要性提高上来。一个数据开放的概念,以前我们在银行里面,我们给我们下一个系统使用数据,对于金融机构来说既是数据的?,比如银联就考虑过,给我们合作伙伴能够提供这个行业分析的,这个行业发展趋势,我也是提供这样一个网点选址,或者是店铺选址,通过数据分析。我们今年会在其他行业做到一个项目,上海移动上海联通,把它的数据开发出来,第三方一些开发者,第三方的数据,今年他们很重要的,要在上线这样一个项目,我要把这个数据卖钱,能够发挥这样一个效益,这样一个价值,这样一个数据整合起来作为一个资产,对内发挥我的作用,对外产生这样一个效益。
      今天我跟大家分享的,普元软件技术平台,技术架构这样的工作,我们主要分析的在这样大数据的时代,我们做的这样一些大数据架构,技术方面的实践,怎么帮助合作伙伴,能够快速实施应用,产生效果。这些年我们在数据处理面临几个大问题:
     一个作为资产面临数据管理,数据这样的东西,刚才李博士也讲了,一个是宏观的分析,宏观分析里面实际数据质量要求不是很高,我们作为金融机构我们对数据分析,我们对数据精确度要求比较高,我对质量要求很高。大家现在都是做数据治理,怎么提高数据质量这个话题,未必是我们大数据时代,一直我们讲数据质量,以前受到限制,比如过数据库,技术上无法支撑它的折中的手段,这样情况下我们需要治理,当数据越来越多的,数据治理是我们现在很重要的问题。
     第二个讲到现在我们数据处理是多种技术的混合,以前我们做数据仓库的技术,挖掘分析的技术,那个技术很多,现在虽然说技术进步了,然后能达到更多混合数据处理,你发现这个技术混合的,现在更多了存储技术,数据仓库这样的技术,现在有些银行已经开始做历史数据处理,历史交易。数据多种技术混合处理,我们做技术的时候混合处理带来问题是交易速度不会太快。我们几千个指标在这个里面,但是每个业务需求时候要做一个分析或者是做一个查询,要做一个报表,怎么解决快速交互开发的问题,其实技术混合,我们看到很多数据,到仓库,第二天我们看到这样一个数据,现在我们更多看到有些实时的要求,实时的风险控制,主动营销,大家在互联网上,淘宝上做一个搜索,买一个商品,第二天第三天同样产品推给你,如果第二天信息基本都是垃圾信息。怎么解决实时的问题,实际是这些年研究的重点方向。还有一个数据怎么应用,运维都是比较麻烦。
     现在可以看到我们研发部技术用的X86技术,用一些存储,这样好处更便宜,坏处比以前更复杂。有什么样的好处我们这些年在数据领域研究,围绕这几个方向做。数据质量下午还有专门话题,不讨论怎么解决。我可能后面几个话题做简单的。刚才我讲到存储的模式,数据处理技术非常多。
     现在我们做一个ETL自动化有处理这样的方式,我们用这样一些抽象不断丰富我们算法,以前是生成一些脚本,现在生成一些,像处理对于大数据的,这样处理的话,实际上我们ETL作业标准化程度越来越高,这样处理模式,把我们作业用传统手工模式,能够更进一步。这个方式不能解决100%的问题,但是80%的情况可以解决的,比如说我们现在怎么用自动化的手段,可能配合excle就可以做。自动化的手段进行数据加工处理,同时加工处理把数据质量,把工艺体现出来,而不是个体根据需求再做ETL处理的研发。

     第二个我们现在数据已经在里面,在做这个时候,更多在我们金融机构这种结构化的,即使我非结构化,也要把非结构化转成结构化发挥作用。这些地方还是刚好提到,可能两三个月时间,我们才能把统一报表出来,查询来做,虽然做到一定查询,很多地方做了这些工作,限制比较多的,在这些限制之下才能做一些客户自定义的查询。我们会发现麻烦在于,如果你随便让他做查询,数据库的处理就比较麻烦。我们会把这个查询放到Hadoop分库,提高即席查询的速度。强的在于这样一些处理,索引处理是数据库非常难的,在Hadoop里面处理基本都是增量的数据。所以你在索引的时候,不是把所有的索引都做一个,用这种多级索引的方式,或者说增加索引的方式,提高Hadoop数据处理的能力,让很多数据能更好的做自定义的查询,能解决的怎么更快速的,给业务部门使用的数据。混合技术情况下,做这样的平台或者做这样的处理很困难,很多技术不一样的,数据查询里面,有一些比较非常热的数据,可能内存网格这样的方式做。一般热数据会在关系库和数据仓库,实际路由访问,先通过这样的数据源做路由的数据,到了相对另的Hadoop数据,再建立索引,提高这种处理的查询性能。这可能就是说怎么做一些数据应用快速实施里面,我们一些经验和做法。后面看到,在这种数据处理里面,有即席查询,有批量的,流失计算或者是复杂之间处理的模式,我们这种实时主动营销,需要这样一个模式,实时的能够把一些客户事件做一些处理,反馈到我们相关业务系统和业务人员里面去,这个数据处理用流失计算或者是复杂处理这样技术来完成。但是大家看到数据处理做的比较领先,互联网企业,他们讲到流失计算像开元的框架,怎么做流失计算。当然我们自己经验里面说只是有这样一个框架,还不是特别够,我们需要建立时间处理,基础设施来对不同系统产生事件,做一些关联新的处理,推到不同系统里面去。
     从信用卡这些事件到呼叫中心里面到客户关怀这样的,我在淘宝上买一个东西,立刻有相关广告推过来。这样实时处理,它的事件来自于我们很多这样的渠道,有可能信用卡信贷,推到网银上面去,推到电话银行,呼叫中心。这一块我会简易画一个图,把这些事件具体起来,服务器做这样一个复杂处理,发现它应用这样一个做法。我们写一个数据,到数据库查一下,我有这样一个事件,之后大概应该怎么办,我一定时间内可能有多比,有交易,可能是实时风险控制。如果传统方式就到数据库里查,这样作为一个实时风险来说,一个交易会非常多。比如说银联我们做的话,有几十个这样的处理,如果一个交易有几十个这样处理条件,这样处理性能,实际达不到交易要求,想要达到这种交易高标准的要求,该怎么办,处理在内存里面,而不是到数据库做这样的查询。
     目前业界流行的流式计算技术 Storm 不支持 SQL 语言,需要编程保证内存数据的高可用,实现上述场景比较困难。让我的应用开发会变得非常简单。同时你要保证内存高可用,实际保证内存高可用。这个处理的时候你会发现整个技术实践比较复杂的,但是对于应用开发者来讲,就是类似这样的语句,我们为了实现这样的,甚至有一些银行做的这样情况,我会给它一个规则控制台,风险这样一个部门自己定义一些规则,我会把这些规则转化成类似这样的语句,在事件平台里面做。它会有两个应用场景,实时风险控制,主动营销,也可以把一些事件的监控,时间预警的时候也可以做。
     它会有两个领域,一个业务,一个处理上。前面我会讲到我们怎么做数据治理,对于混合数据技术,比如我们有有IPP,数据仓库的,MPP数据库,各种各样ETL处理,这样一个混合模式下用什么手段,能够做到更快速用户交互开发。
     第三除了批量之外我们怎么把实时数据处理能力增强。最后我们最新做的一个事情,做一些轻量的虚拟化技术:基于 Linux LXC 的Docker,解决了高 IO 操作不能使用虚拟化技术的瓶颈。
     我刚才讲到用流失计算的技术,在内存里面保存几份,每一份需要独立的服务器,都会有很多的服务器,如果我们做应用交互的时候,实际这种运维成本比较高,我们一直有这个想法,我们第一次接触虚拟化技术的时候,当时我们有想法,虚拟化技术不是把大机器分成几份,而且把运维成本降下来。我们当时想如果我做这种大数据应用,如果有虚拟化技术该多好,我们现在虚拟化数据没有办法应用,其实就是IO数据类的应用,如果做虚拟化技术,左边那张图通过虚拟层。当你在机器到了一定程度的时候,网络,存储都是一个大幅度下降的关系,虚拟化我们没有办法运用在数据里。但是通过这两年我们可以看到新兴这样虚拟化的技术,轻量的虚拟化技术。它的做法很巧妙,也很简单,现在给你分一个组,5个进程,相当于一个虚拟技术,?可以根据这一组进程分配这样一个空间,内存使用CPU的资源,做这样一个分配之后,管理是统一的,支持类似的技术。但是这个虚拟化技术里面,配置,变更,调整,现在比较多的,由于今年开始火起来了,就是Docker,我们可以把这种数据类的应用用这种轻量数据管理起来。不是在我们金融行业,我们在上海移动做这样的,我们刚才讲到,它现在希望做数据开放,它会把它的很多数据开放给第三方,但是它带来新问题,如果我把这个数据开放给第三方,第三方把这个数据卖给别人怎么办,以后这个数据传给你,而是你把你的挖掘应用放到我这个平台上用,你会把你的分析工具,发到我上海移动来做,你会把你的结果传过去,我们就会提供容器,运营,分析处理这样的工具,但是这个容器以前可能用虚拟化手段,刚才我讲到传统虚拟化方式没有办法做在操作数据应用,有了这样一个技术,做这种数据开放平台。解决安全的问题,当然还有新问题,解决了这个问题,有些人不希望放在这个开放平台上,出现这样新的问题。

评论(0)

您可以在评论框内@您的好友一起参与讨论!

<--script type="text/javascript">BAIDU_CLB_fillSlot("927898");