大数据处理技术参考架构.docx
- 文档编号:10096299
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:18
- 大小:502.31KB
大数据处理技术参考架构.docx
《大数据处理技术参考架构.docx》由会员分享,可在线阅读,更多相关《大数据处理技术参考架构.docx(18页珍藏版)》请在冰豆网上搜索。
大数据处理技术参考架构
大数据处理技术参考架构
二〇一五年十二月
1.背景1
2.技术目标2
3.技术要求2
4.大数据处理业务场景3
5.大数据处理技术对比4
5.1.MPP与Hadoop&Spark技术对比4
5.2.Hadoop&Spark技术优势6
5.3.Hadoop框架对比6
5.4.Hadoop使用情况7
5.5.Hadoop血缘关系8
5.6.行业大数据应用场景对比分析12
6.大数据处理参考架构13
6.1.参考架构13
6.2.与JavaEE体系对比14
6.3.参考架构运行状态15
7.总结与思考16
附录:
名词解释18
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语言接口等。
MPP
Hadoop&Spark
集群规模
近百个节点(中国大陆很少有100+节点的案例)
几千个节点
动态扩展运算能力
扩容通常导致停机、服务中断;
数据需要重新分布,性能严重下降。
扩容无需停机、服务不中断;
扩容时数据无需重新分布,新数据自动被分配到新的节点中,性能没有影响。
数据分布方式
数据以预定义的分布策略,
按列进行散列或轮询分布;
真实数据通常有倾斜,将导致数据不均匀分布,
对计算效率影响较大。
数据以预定义的块大小自动均匀分布,
通过blockmap映射表查询数据位置;
数据分布均匀、扩容无需停机。
处理数据量
数十TB
PB
容错能力
不存放中间结果,出错时需要重新执行整个任务
存放中间结果,出错时只需要重新运行出错的子任务
并发能力
用于分析型应用场景,数据装载时建立索引较慢;
通常不超过数百个并发。
数据装载快,采用公平调度/配额调度;
可支持上亿用户并发数据插入、查询、检索。
数据存储对象
结构化数据
结构化、半结构化、非结构化数据
应用运算逻辑
实现方式
SQL语言
SQL2003、部分PL/SQL、R、Java、Scala等
数据访问接口
JDBC、ODBC
JDBC、ODBC、R语言接口等
索引
支持
支持(rowkey索引、二维索引、全文关键字索引)
5.2.Hadoop&Spark技术优势
存储、处理、分析PB级别的结构化、半结构化、非结构化数据。
低成本运算能力,使用低成本的存储和服务器构建,仅花费40%左右价格,便可以达到甚至超越IOE架构的性能。
动态扩展运算能力,扩容无需停机、服务不中断,数据无需重新分布,新数据自动被分配到新的节点中,性能没有影响。
高扩展能力,集群规模可扩展至几千个节点。
高容错能力,数据处理过程中存放中间结果,出错时只需要重新运行出错的子任务。
应用运算逻辑,支持Java、R语言、Scala、SQL2003等。
5.3.Hadoop框架对比
ApacheHadoop
ClouderaCDH
HortonworksHDP
开源程度
完全开源
部分开源
(包含免费版/企业版)
完全开源
(包含免费版/企业版)
技术支持
无
每年按节点数量收费
每年按节点数量收费
集群部署
复杂
容易
容易
集群监控
较易
容易
容易
集群管理
较易
容易
容易
专有代码依赖
无
有
(如:
管理工具)
无
主要特点
ApacheHadoop已经形成生态系统,除了包含HDFS、YARN、MapReduce,还包含了很多其他Apache项目,如:
HBase、Hive、ZooKeeper、Ambari、Sqoop等等,使用者可以根据需要自由组合。
通过添加专有代码实现的ClouderaManager完成集群的部署和管理,并对集群的节点及服务进行实时监控。
所有解决方案都通过ApacheSoftwareFoundation以项目形式开发,HDP内无需专用扩展。
避免随着扩展而背离主干,以及随之而来的兼容性问题。
5.4.Hadoop使用情况
根据咨询机构Wikibon在2014年进行的一项调查,部署Hadoop的机构中,仅有25%是付费用户,而有51%是基于Hadoop的开源版本自行开发,还有24%的用户则是使用Cloudera、Hortonworks等Hadoop开发商推出的免费版本。
5.5.Hadoop血缘关系
IBMBigInsights是基于ApacheHadoop框架的存储,管理和分析Internet级别数据量的半结构化和非结构化数据的方案,具备企业级管理、工作流管理、安全管理、可视化挖掘与展现等能力,能与现有基础设施和大数据流计算技术集成。
产品设计思路是基于ApacheHadoop框架,在保持完全100%ApacheHadoop兼容的情况下,加入IBM的项目和研究开发的分析能力。
整体架构如下图所示:
EMCPivotalHD是EMC公司进行自主研发的Hadoop商业化产品,在2013年2月独立推出的商业发行版(2013年以前EMC和MapR公司在Hadoop领域为合作伙伴)。
PivotalHD产品包括Hadoop2.0的MapReduce和HDFS,可以利用Hive、HBase、Pig开发语言、Yarn资源管理、Mahout分析工具和Zookeeper工具等。
还包括HardwareVirtualExtensions(HVE)组件,它可以让Hadoop集群知道自己是建立在虚拟机还是物理服务器上。
整体架构如下图所示:
MapRHadoop是MapRTechnologies公司于2011年正式发布的产品,目标是使Hadoop变为一个速度更快、可靠性更高、更易于管理、使用更加方便的分布式计算服务和存储平台,同时性能也不断提高。
它将极大的扩大了Hadoop的使用范围和方式。
它包含了开源社区许多流行的工具和功能,例如Hbase、Hive。
它还100%与ApacheHadoop的API兼容。
目前有M3(免费版)和M5(收费版)两个版本。
整体架构如下图所示:
天云趋势科技Hadoop解决方案主要基于Hortonworks发行版,同时也提供了对ClouderaHadoop发行版的支持。
整体架构如下图所示:
音智达Hadoop解决方案基于ClouderaHadoop发行版。
整体架构如下图所示:
浪潮Hadoop解决方案基于IntelHadoop发行版。
整体架构如下图所示:
华为FusionInsightHadoop是完全基于ApacheHadoop组件构建的Hadoop产品,在ApacheHadoop版本的基础上对HBase、HDFS和MapReduce等组件增加了HA、查询和分析功能,进行了性能优化,并及时回馈Hadoop社区,保持版本同步,接口与社区版本完全一致。
整体架构如下图所示:
星环科技TranswarpDataHub(TDH)基于ApacheHadoop组件构建,并在此基础之上研发了交互式SQL分析引擎Inceptor、实时NoSQL数据库Hyperbase和TranswarpManager等引擎。
同时支持R语言数据挖掘、机器学习、实时流处理、全文搜索和图计算和系统安装及集群配置功能。
整体架构如下图所示:
5.6.行业大数据应用场景对比分析
基于MPP的数据仓库
Hadoop&Spark
阿里云
工商银行
Teradata
信息库
建设银行
Teradata
交通银行
Teradata
广发银行
Oracle
中国银联
风险控制与交易查询(Cloudera)
实时查询采用Hadoop-HBase
民生银行
大数据分析平台(星环科技)
实时查询采用基于Hadoop-HBase的星环Hyperbase
恒丰银行
数据仓库(星环科技)
实时查询采用基于Hadoop-HBase的星环Hyperbase
北京银行
历史明细数据查询、司法查询(东方国信)
上海银行
核心系统及
数据分析
天弘基金
核心系统及
数据分析
众安保险
核心系统及
数据分析
新华保险
精准营销分析(Cloudera)
中国联通
通话及短信息记录舆情分析(东方国信)
美团网
大数据分析平台(Apache)
实时查询采用Hadoop-HBase和MySQL
6.大数据处理参考架构
6.1.参考架构
结合统计分析Web应用的数据处理典型场景,在Hadoop&Spark开源框架中,分布式文件系统HDFS、资源调度引擎YARN、内存计算引擎Spark、挖掘分析引擎SparkR、分布式迁移引擎Sqoop等较为符合统计类应用场景。
分布式文件系统HDFS,是Hadoop体系中数据存储管理的基础,也是高度容错的系统,能检测和应对硬件故障,用于在低成本的通用硬件上运行。
资源调度引擎YARN,是通用资源管理系统,可以为上层应用提供统一的资源管理和调度。
计算引擎MapReduce,用以进行大数据量的计算。
Hadoop的MapReduce与Common、HDFS一起,构成了Hadoop发展初期的三个组件。
分布式数据仓库Hive是建立在Hadoop基础上的数据仓库架构,为数据仓库的管理提供的主要功能包括:
数据ETL工具、数据存储管理和大型数据集的查询和分析能力。
分布式协作服务ZooKeeper,提供了统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。
ZooKeeper通过封装好复杂、易出错的关键服务,将简单易用的接口和性能高效、功能稳定的服务提供给用户。
分布式迁移引擎Sqoop主要作用是在结构化数据存储与Hadoop之间进行数据交换。
Sqoop可以将一个关系型数据库(如:
MySQL、DB2等)中的数据导入Hadoop的HDFS、Hive中,也可以将HDFS、Hive中的数据导入关系型数据库中。
内存计算引擎Spark是与Hadoop相似的开源集群计算环境,Spark启用了内存分布数据集,基于内存进行分布式计算,除了能够提供交互式查询外,还可以优化迭代工作负载。
配置管理监控服务Ambari是基于Web的工具,用于配置、管理和监视Hadoop集群,并支持HDFS、MapReduce、Hive、ZooKeeper、Sqoop等框架。
Ambari还提供了集群状况仪表盘,以及查看MapReduce、Hive应用程序的能力,以友好的用户界面对它们的性能进行诊断。
下图基于ApacheHadoop的开源框架,给出了大数据处理的参考架构。
统计类系统数据处理流程主要包括以下步骤:
采集(解压报文等文件操作)-校验(每笔数据各字段的格式校验、各笔数据之间的逻辑关系校验等)-审核(与历史数据的比对,同期/上期;或执行自定义审核SQL、算法等)-汇总计算(指标计算、数据汇总等)-查询-数据分析-报表-信息发布。
结合统计类系统的处理流程,对于现有系统的数据,可以通过分布式迁移引擎Sqoop将数据同步至分布式文件系统HDFS中加以分析利用。
对于采集数据的校验审核、汇总计算等应用功能,可以通过分布式数据仓库Hive或直接内存计算引擎Spark进行异步计算和处理。
对于数据处理过程中的状态跟踪和监控以及简要的信息发布,可以通过分布式数据库HBase直接从HDFS中获取相应的信息。
6.2.与JavaEE体系对比
通过下图的对比不难看出,大数据处理参考架构中的各类引擎主要是拓展JavaEE体系中业务逻辑层与数据持久层对大数据的支撑。
6.3.参考架构运行状态
通过下图的能够看出,参考架构在运行时,各引擎在主机节点中均会有对应的进程,YARN的集群在运行时提供了资源的调度和管理,ZooKeeper的集群在运行时为各引擎提供了高可用的保障。
Spark引擎中的进程分为Master和Worker,当节点故障时,由协作服务ZooKeeper进行Master切换,保障Spark的持续可用。
7.总结与思考
大数据是指不用随机分析法(如:
抽样调查)这样的捷径,而采用所有数据进行分析处理。
大数据的主要特点包括:
海量的、高增长率的(Volume),数据处理模式的高效性(Velocity),数据来源、种类的多样化(Variety),待探勘的数据价值(Value)。
从业务角度来看,在数据来源和种类多样化的环境中为了能够更加深入的对数据价值进行探勘,还需要注重以下几方面:
1.数据来源的准确。
大数据应用的核心是挖掘数据价值,而挖掘数据价值的前提是数据来源的准确性。
没有准确的数据来源,很难得到有价值的结果。
2.数据质量的持久。
为了充分挖掘大数据的价值,业务系统必须持久的保证数据质量。
高质量的数据不仅仅体现在质量管控,更要有持续的治理。
业务系统中需要有完善的数据质量管理流程,能够作用于数据生命周期的不同阶段。
3.数据标准的一致。
大数据在挖掘分析之前需要先将数据标准化,利用标准化后的数据进行分析。
单个业务系统内部的数据标准化主要体现在数据无量纲化处理,即:
解决数据的可比性(如:
指标数据的定性转定量处理)。
多个业务系统之间的数据标准化主要体现在数据的公共维度所遵循标准的一致性上。
业务系统在规划阶段,必须充分使用人民银行公共代码规范,将业务数据的公共维度与规范统一,并遵循人民银行信息技术标准体系。
4.数据价值的探索。
在大数据时代中业务系统已经逐渐由功能是价值转变为数据是价值,对大数据价值的挖掘是探索性的。
大数据的出现填补了无数的空白,面对海量的、高增长率的、种类多样化的大数据仅采用传统的数据分析方法是不够的,需要采用大数据的思维模式,例如:
由传统的因果思维转变为相关思维,深入的探索数据的关联性。
从而能够更加有效的进行预测分析、辅助决策,为央行履职提供更强有力的支撑。
面对海量、高增长率、多样化信息资产的诸多特点,在技术上我们需要引入新的处理模式以具有更强的决策力、洞察发现力和流程优化能力。
结合统计分析类业务在数据处理和数据展现环节的特点进行分析以及对原型系统的测试情况,数据处理环节采用Hadoop&Spark技术较为适宜,主要包括:
采集(解压报文、每笔数据各字段的格式校验等文件操作)、校验(各字段的合规校验、数据之间的逻辑关系校验等)、审核(与历史数据比对,同期/上期;或执行审核SQL、算法等)、汇总计算(指标计算、数据汇总等)各环节处理情况监控、以及挖掘分析(基于全量数据)、数据存储(TB~PB)、数据整合加工和数据分发。
数据展现环节采用关系型数据库集群技术较为适宜,主要包括:
报表、综合查询(具有实时、多表关联、自定义条件或表样的特点)、多维分析(如:
维度表、事实表)。
在研发能力方面,现有的技术团队在Hadoop&Spark技术方面的技能和经验比较欠缺,特别是大数据相关的技术正处于成长阶段,技术团队丰富的实践经验尤为重要,否则难以快速响应和处理突发问题。
具有大数据处理需求的系统在建设过程中,可以考虑通过与实施经验丰富的、有较强的自主研发能力的大数据技术平台厂商或技术团队进行合作。
一方面,能够通过借鉴外界成熟的实践经验,来应对研发能力不足所带来的风险;另一方面,能够引入外界技术力量对系统研发过程进行指导,促进大数据技术团队的组建。
附录:
名词解释
大数据:
由维克托·迈尔-舍恩伯格和肯尼斯·库克耶在2008年8月提出,大数据指不用随机分析法(如:
抽样调查)这样的捷径,而采用所有数据进行分析处理。
全球最具权威的IT研究与顾问咨询机构Gartner将大数据定义为,需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
IBM提出大数据的5V特点,Volume(大量)、Velocity(高速)、Variety(多样)、Value(价值)和Veracity(真实性)。
2015年8月国务院在《促进大数据发展行动纲要》中指出,大数据是以容量大、类型多、存取速度快、应用价值高为主要特征的数据集合,正快速发展为对数量巨大、来源分散、格式多样的数据进行采集、存储和关联分析,从中发现新知识、创造新价值、提升新能力的新一代信息技术和服务业态。
互联网+:
“互联网+”是把互联网的创新成果与经济社会各领域深度融合,推动技术进步、效率提升和组织变革,提升实体经济创新力和生产力,形成更广泛的以互联网为基础设施和创新要素的经济社会发展新形态。
IOE:
指服务器提供商IBM,数据库提供商Oracle,存储设备提供商EMC的简称。
互联网金融:
是传统金融机构与互联网企业利用互联网技术和信息通信技术实现资金融通、支付、投资和信息中介服务的新型金融业务模式。
P2P借贷:
peertopeer网络借贷的一种模式,包括个体网络借贷(即P2P网络借贷)和网络小额贷款。
个体网络借贷是指个体和个体之间通过互联网平台实现的直接借贷。
众筹:
股权众筹融资,主要是指通过互联网形式进行
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据处理 技术 参考 架构
![提示](https://static.bdocx.com/images/bang_tan.gif)