大数据处理技术参考架构
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大数据处理技术参考
架构
二〇一五年十二月
目录
1.背景
随着大数据时代的到来,数据由海量拓展为多样,在注重计算速度的同时更加关注挖掘有价值的数据。以IOE体系为核心的数据计算和存储方式越来越不能满足目前大数据处理在性能和成本上的综合
要求。为适应对大数据处理的要求,众多的分布式计算平台随之兴起,在对众多分布式计算平台进行权衡的同时,增强自主创新能力,以满足人民银行对信息技术安全可控的要求。
在核心应用自主研发、核心知识自主掌控的氛围下,保障大数据技术达到灵活可用的目标,确保数据和信息的有效、及时,确保信息系统的可靠、灵活。同时,充分的利用开源产品透明公开的关键信息,做到对技术细节的掌控和验证,开源产品的特点也更能够激发开发者的热情并推进技术的快速变革。
在“互联网+”的战略布局下,当利用信息通信技术把互联网和包括金融行业在内的相关行业结合起来时,能够更加合理和充分的利用大数据技术促进互联网金融的健康发展。当前互联网金融的格局中,由传统金融机构和非金融机构组成。传统金融机构的发展方向主要为传统金融业务的互联网创新以及电商化创新、手机APP服务等;非金融机构的发展方向则主要是指利用互联网技术进行金融运作的
电子商务企业、P2P模式的网络借贷平台,众筹模式的网络投资平台或掌上理财服务,以及第三方支付平台等。在金融行业新兴业态下,
为促进互联网金融的健康发展,为全面提升互联网金融服务能力和普惠水平,为有效防范互联网金融风险及其外溢效应而提供技术支撑。
在金融领域,新生业态层出不穷,金融机构日益多样化,金融资产的流动性快速上升,金融体系的关联度、复杂度大幅提高。金融业的快速发展和创新,使货币政策操作环境、传导渠道发生重大变化。在数据的处理分析上,对原有的宏观审慎分析框架及其有效性、准确性提出了挑战。
2.技术目标
✧获得最优系统价值,满足大数据的处理性能,节约系统建设成
本。
✧充分利用开源产品,做到对技术细节的掌控和验证,以保障大
数据技术达到灵活可用。
✧增强自主创新能力,满足人民银行对信息技术安全可控的要
求。
✧有效提供技术支撑,适应金融行业新兴业态下对大数据技术的
需要。
3.技术要求
在满足海量数据高效处理的同时,对用户的访问能够保持较高的实时性,快速响应用户的请求。
采用的大数据技术架构能够支持水平扩展(Scale-out),适应未来五年对大数据存储和处理的需要。
采用的大数据技术架构能够支持故障的检测和自动快速恢复,确保系统的高可用性。
在满足大数据业务场景性能要求的同时,采用更加经济的大数据技术解决方案。
4.大数据处理业务场景
以统计分析类的业务场景为例,针对大数据的处理主要经过采集、存储、校验、审核、汇总、计算、分析挖掘等过程,在数据粒度上,既要包逐笔的标准化源数据,还要包括不同层次的总量指标数据,从而实现对统计体系业务的全覆盖、无遗漏。统计分析类大数据处理、报表展现和信息发布的典型流程如下图所示:
统计分析类业务的特点主要包括:
•在每个处理环节中,均能够为业务操作员提供实时的业务处理情况或处理结果的查询。
•校验、汇总、计算等环节中,所涉及到的运算规则均定义在数据库或配置文件中,在执行处理之前,需要获取运算规则。
•在报表数据生成或信息发布环节,能够提供逐笔数据、指标数据、汇总数据和报表数据的实时查询,并能够通过BI工具访
问以上数据。
•统计类的数据查询多为综合查询,条件通常可由用户在查询前定制,有查询响应实时性、查询条件多样性、查询多表关联
性的特点。
•能够灵活的通过数据挖掘技术对数据进行价值分析,例如:R 语言。
•能够灵活的使用数据可视化技术对数据进行互动展现,例如:EChars。
统计系统业务量以每月增量40亿笔进行估算(以每笔1KB估算,约4TB/月增量数据;每笔数据平均包含20个字段),现有存量数据大约在20TB。增量数据在当月5-8日进行校验、审核等处理,数据处理过程希望在T+0完成。实时查询业务为用户随机进行。在使用数据进行分布式计算时,一般情况当月4TB的数据全部参与计算。比较复杂场景之一是逻辑校验部分的算法,按不同的规则,有的规则会使用到当月的全部增量数据参与校验,有的规则会按金融机构维度使用当前机构的历史数据参与校验。
5.大数据处理技术对比
目前对海量数据进行分布式处理的技术主要分为两类:
✓MPP(MassivelyParallelProcessing)大规模并行处理技术;
MPP技术大多用于数据仓库领域,是将任务并行的分散到多个服务器节点上,在每个节点上计算完成后,将各自部分的结果汇总在一起得到最终的结果的一项技术,典型的代表例如:Teradata,HPVertica,EMCGreenplum,GBase,OracleExadata等。
✓ApacheHadoop、Spark技术。
Hadoop&Spark是由Apache基金会所开发的分布式系统基础架构,它所解决的核心问题是,通过部署在低廉的硬件上的、可以协同工作的软件组件,来完成分布式数据存储、高吞吐量数据访问、以及高负载的分布式计算。近些年在众多行业都得到广泛应用。
5.1.MPP与Hadoop&Spark技术对比
集群规模上,MPP技术支持近百个节点(中国大陆很少有100+节点的案例)。Hadoop&Spark技术支持几千个节点。
扩容影响上,MPP技术扩容通常导致停机、服务中断;数据需要重新分布,性能严重下降。Hadoop&Spark技术扩容无需停机、服务不中断;数据无需重新分布,新数据自动被分配到新的节点中,性能没有影响。
数据分布方式上,MPP技术以预定义数据分布策略,按列进行散列或轮询分布;真实数据通常有倾斜,将导致数据不均匀分布,对计算效率影响较大。Hadoop&Spark技术中,数据按预配置的块大小自动均匀分布,通过blockmap映射表查询数据位置;数据分布均匀、扩容无需停机。
处理数据量上,MPP技术在数十TB级别。Hadoop&Spark技术在PB级别。
容错能力上,MPP技术不存放中间结果,出错时需要重新执行整个任务。Hadoop&Spark技术存放中间结果,出错时只需要重新运行出错的子任务
并发能力上,MPP技术多用于分析型应用场景,数据装载时建立索引较慢;通常不超过数百个并发。 Hadoop&Spark技术数据装载快,采用公平调度/配额调度;可支持上亿用户并发数据插入、查询、检索。
数据存储对象,MPP技术支持结构化数据,Hadoop&Spark技术支持结构化、半结构化、非结构化数据。
应用运算逻辑实现方式上,MPP技术SQL语言,Hadoop&Spark技术支持SQL2003、部分PL/SQL、R、Java、Scala等。
数据访问接口,MPP技术支持JDBC、ODBC,Hadoop&Spark技术支持JDBC、ODBC、R语言接口等。