大数据平台技术发展脉络
作为集团“大数据平台技术”战略研究的准备工作,本文梳理了近年来作者观测到的大数据行业技术演进的路径,希望把握发展脉络,找到适合公司业务实际的方向。文章力求用通俗的方式描述概念,最大程度减少专业图表与细节,以便向公司管理层与业务部门同事介绍大数据平台技术的发展与趋势,这里分享给金融行业的朋友参考。
数据技术演进
软件系统,小到HelloWorld编程入门,大到数亿人同时使用的社交软件、搜索引擎,或者是基于公有云的软件即服务(SaaS),本质上都是在处理两件事情:业务逻辑与数据。随着信息时代的纵深发展,业务逻辑不断丰富与演化的同时,其所产生与处理的数据量(Volume)也出现指数级的迅速增长,业务所要求的系统处理速度(Velocity)从批量向准实时与实时过度,数据的种类(Variety)也从简单的结构化的记录向文本、语音、图像视频等丰富的形式发展。这就是 大数据 的三个最典型的特征。
传统的结构化数据处理过程是:在线交易系统(OLTP,通常是关系型数据库)产生的数据,经过Federation/ETL工具整合清洗后,加载到在线分析系统(OLAP,通常是数据仓库、BI与统计分析),然后生成报表或统计模型。大数据的三个V对吞吐量、响应时间的要求都超越了这个成熟的模式的技术上限。因而催生了大量的能处理海量数据的新框架。
这些新框架沿着两个思路解决吞吐量与响应时间的问题:垂直扩展(scale up)或 水平扩展(scale out)。垂直扩展门槛高,技术为IBM之类的大公司所垄断,而水平扩展则门槛相对较低,以源自Google公司的Map Reduce为代表,在开源的推动下迅速普及。著名的Apache Hadoop就是此类技术的代表,具备强大的生命力。
这些新框架多来自程序社区,其繁荣一度让人们觉得可以淘汰数据社区SQL那套技术体系。随着多种NoSQL 数据库的广泛应用,人们发现,数据的一致性,可用性与并行性三者不是可以同时获得的,强化其中之一是以弱化另外一个要素为代价的。而且编程方式的数据使用缺乏一致的标准,造成诸多问题。因而,程序社区与数据社区的逐步融合成为趋势选择,NoSQL 发展成 Not Only Sql, 再到 NewSQL, 水平扩展的新型数据处理框架获得了标准化的SQL访问界面。
在很多场景下,分而治之的方式可以解决吞吐量的问题,单位时间内,增加更多的机器,可以增加处理的数据量,Volume的问题得到解决。而系统对于处理速度的不懈追求,则可以通过不断拉近数据与处理器(CPU)的距离得到满足,磁带到硬盘,硬盘到SSD,SSD 到 Flash, Flash到内存,内存到一二级Cache, 再到寄存器。从内存数据库到分布式Cache,再到Spark, 处理同等量的数据越来越快。
处理多样性数据的系统也在与时俱进,对应数仓/BI时期的多媒体内容管理系统,多是以描述这些多媒体内容的元数据作为索引,访问链接到这些内容数据。新分布式大数据处理框架下,则引入了文本分析,语音图像的机器学习以至深度学习技术来“认识”这些内容,而不是简单的存储与访问。基于互联网海量内容的知识图谱的构建也有大幅度进步。
Fintech数据处理
金融,一直是数据系统的重量级应用行业,信息化早,程度也高。随着IBM ORACLE等巨头在该行业深耕多年,金融机构大多在传统的数据体系上有了较为完备的建设。OLTP交易系统、数据同步、整合与治理、数据仓库/集市、BI 报表与统计分析,是相对完善的。不少的企业还实现了内容管理系统的建设使用。
互联网企业在大数据上面构筑的数据资产壁垒,开发利用后获取的竞争优势,让传统的金融企业,特别是那些坐拥亿万客户资源的金融企业,开始意识到大数据带来的价值以及潜在的驱动与变革力量,逐步重视积累与发掘利用大数据资产,籍此提升企业的科技能力,获取行业的竞争优势。“数据阳光”就是阳光保险集团高瞻远瞩的重要战略。
金融行业服从严格的数据安全与监管,对数据一致性近乎苛求。因而传统的金融数据体系以可靠性与一致性为原则构建,强调事务处理,其中涉及到的分布系统也都具备两阶段提交(2PC)等分布式事务能力。起源于互联网企业的大数据处理框架,则多选择放松处理过程中的一致性要求,提升系统并行能力与性能,仅追求最终一致性。因而在金融数据体系中,分析型的系统相对交易系统,更适合采用这些框架。
风险控制是金融企业核心能力,风控与征信变成金融大数据的主场景。获取足够的用户行为数据,建立合理的评估模型,有助于企业在用户金融活动的整个生命周期规避风险,提升服务水平。现行的金融技术体系,无法从技术上确保交易主体间的相互信任,需要依赖第三方征信主体参与,而鉴于数据碎片化、交易壁垒与隐私保护等因素,基于大数据的征信,目前以至未来很长时间,还有较大的改进空间。
区块链技术的繁荣,以及与金融科技的逐步融合,有巨大的潜力改变现有的金融数据体系。区块链被认为是技术保证信任的价值网络,或者说是业务互联网。业务实体可以相互信任的处理之间的金融交易,而无需中心征信机构的参与。链上的数据以加密方式参与分布式事务/容错(Paxos/PBFT),确保不可篡改的一致性。强的分布式与一致性,需以牺牲系统性能为代价,因而较为适合替代现有金融系统中的数据骨干网络。而对于类似每秒10几万次交易的支付系统则是不适合的。
云支撑大数据
大数据是资源密集型的系统,对于存储、计算、网络等核心IT资源需求强劲,自然成为云计算最佳支撑领域。目前主流的云平台都配有自成体系的大数据系统,满足企业大数据处理端到端的需求,也就是从数据采集获取、同步加载、整合清洗、安全管控、分析建模、 可视化 、机器学习、深度学习一整套支撑工具与系统。多数基于开源的体系定制并优化,典型的如亚马逊AWS 上的EMR,微软Azure上的HDInsight等, 都基于Apache Hadoop。 这些能力通常具有非常强的伸缩性,多租户共享,适应企业忙时闲时的不同需求,并且按照用量计费,用多少付多少费用。这些系统和工具多以平台即服务(PaaS)+ 设施即服务(IaaS)方式在公有云上提供。
考虑到不少企业,特别是金融企业的数据体系,具有非常强的数据安全与监管要求,不少云平台提供商将其公有云上的数据能力,也整合打包到其相应的私有云商业软件套件之中,例如微软私有云套件,阿里云私有云中的大数据平台等。这些商业软件套件按照企业用户的要求,部署到企业自建自营的数据中心中,提供类似公有云上的端到端的数据能力。企业用户获得了对平台、对数据自主控制的能力,损失了相应的弹性与及时更新。
云计算技术已进入普及阶段,寡头产生。国际巨头亚马逊、微软、IBM纷纷落地中国,阿里,腾讯等几家云计算也强势崛起。这些主流的云平台除了提供通用的大数据能力之外,还纷纷针对金融企业的特殊性推出相应的金融云服务,这里包括金融业务系统以及相应的数据保护、安全防攻击等等,不同层级的软硬件隔离或共享的策略,满足不同的安全意愿。相应的服务日趋健全,例如新筹建保险公司,金融云可以与筹建团队一起满足保监会在IT与数据层面的筹建要求。
目前国内大型企业多采用公有云与私有云相结合的混合云方式,将核心的数据系统控制在自家的数据中心中,将部分前端业务系统与外围业务系统部署到公有云上,以获取一定的弹性与灵活性,节约成本。
从技术层面讲,目前主流云平台多以提供资源的虚拟化为基础,将存储、CPU、内存、网络以虚拟机或容器的方式实现逻辑隔离,基于逻辑上的隔离共享与调度支持上层的数据处理体系,如数据仓库、分布式大数据框架(Hadoop, Spark等)、机器学习模型与算法等。并且依据大数据应用负载的不同,针对计算密集,磁盘IO密集或网路IO密集的不同特点,做不同的优化,甚至抛开虚拟化,直接在硬件系统上部署大数据框架。
人工智能平台
年过半百的 人工智能 ,经历两次发展低谷到近十年来再次爆发,与大数据在深度与广度上的积累,以及相关处理技术的长足进步密不可分。人工智能依赖机器学习,垂直领域不断丰富的数据积累,为机器学习提供了原材料;开源的水平扩展的大数据框架为各种复杂的机器学习算法提供了价格低廉的算力,从而推动了人工智能在包括搜索、广告、语音识别、图像识别、自然语音理解等等领域的质的飞跃。
机器学习就是发现用来学习的数据集里面隐含的规律的过程,简单情况下,可以将这种隐含的规律描述为某种数学函数,给定某些输入,可以得到某些输出。但大部分时候,机器学习的结果无法直观表达为函数,而是一个可以运行的计算模型,从此种意义上看,是数据产生了程序逻辑,以前这些逻辑只能由程序员编码实现。目前这些机器学出来的模型广泛应用在许多不同领域,来做分群、分类或者预测。
作为机器学习的一个重要前沿分支,深度学习技术在语音与图像识别、自然语言处理,概念与内容理解等方面带来实质性重大技术进步,已成为大数据价值转化商业财富的有效手段。Google,微软,Facebook,百度等科技巨头在深度学习领域持续取得进展,研发成果也以开源的方式分享出来,例如Google的Tensorflow, 微软的CNTK 等优秀的深度学习框架,以及海量的标注数据。这些工具对Hadoop, Spark等开源大数据框架提供了良好支持,显著降低了企业应用深度学习的门槛。
作为机器学习成果的综合试验场,移动设备上的智能聊天机器人(或称私人助手)大热。苹果Siri, Google Now, 微软Cortana都可以学习用户行为习惯,理解语义语境,与用户人机对话。这些聊天机器人吸引并沉淀了大量用户,成为新的人机交互入口。Facebook,Google与微软更是顺势推出 Bot Engine/Bot Framework等机器人引擎,其背后是云端的认知服务体系,一套也可做语音识别、自然语言理解、语音合成、视觉识别、情感分析、面部识别、视频检测,搜索等功能的人工智能平台。厂商将这种智能的人机交互能力以机器人引擎加人工智能平台的方式开放出来,用来构建庞大的生态系统。
综上所述,随着企业与互联网数据技术不断融合,大数据平台技术呈现出两大发展脉络:(1)沿着从依托编程、专注物理底层逻辑,到深度依赖数据、数据产生业务逻辑的脉络不断进化。(2)新型的人机交互方式,则将大数据平台技术能力服务化,而平台支撑的机器学习算法的革新,则为这种服务持续赋予智能。可以预见,不远的将来,智能化大数据平台将成为公司数字化经营决策的中枢神经,每一个公司都会有自己的数字大脑。
注:本文摘自数据阳光,作者王庆法,版权著作权系原创者所有,转载请注明出处。数据观微信公众号(ID:cbdioreview) ,欲了解更多大数据行业相关资讯,可搜索数据观(中国大数据产业观察网www.cbdio.com)进入查看。
责任编辑:汤德正