基于HADOOP实现历史数据线上化

  在国内银行业尚无Hadoop技术成型案例的情况下,光大银行首个基于Hadoop技术的应用试点项目——历史数据查询项目于2013年10月底成功投产上线,这是Hadoop技术在银行系统应用上的一个重要里程碑。

  从硅谷到北京,从中关村到金融街,大数据的话题越来越热门,关于大数据技术的探索越来越广泛。致力于打造最具创新力银行的中国光大银行紧密跟踪业务、技术发展趋势,开展了对大数据技术的深入研讨,并尝试将大数据领域的Hadoop技术应用于银行IT系统建设。光大银行首个基于Hadoop技术的应用试点项目——历史数据查询项目于2013年10月底成功投产上线,这是Hadoop技术在银行系统应用上的一个重要里程碑。本文将浅析光大银行历史数据线上化研究和Hadoop技术应用。

  一、历史数据线上化带给系统的需求

  中国光大银行的客户历史交易数据原本存放在磁带库和光盘库中,查询的效率较低、工作量较大。将这些历史数据放入联机服务系统,提供即时高效的查询服务,既是提升客户服务的迫切要求,也是盘活数据资产、发挥数据价值的重要基础。

  从业务需求角度看,这个系统需要提供历史交易数据的导入和查询服务,具有对数据一次写入多次读取的功能特性;从系统功能上看,该系统需要具备存储光大银行10余年历史交易明细数据的能力,并依托于历史积存的大数据,支持大时间跨度的高性能查询,实现线下数据线上化的目标;从系统运维角度看,该系统需要具有可持续发展的能力,满足未来增量交易数据的持续沉淀以及数据规模外延的扩大,具备较好的可扩展性。可以看出,虽然这个系统的业务功能并不复杂,但对系统的技术要求很高。

  二、选择Hadoop技术

  光大银行在项目技术选型期间,首先考虑了利用传统技术的可能性。采用传统技术,优点在于具备充沛的成型案例,相对承担较小的风险。然而传统存储技术对于硬件设备要求较高,成本昂贵。同时,响应效率随着存储数据量和查询数据量的增长而降低;在扩展性方面具有较大局限性。

  限于传统技术所带来的诸多问题,在科技飞速发展的时代,是否有更适合本项目特点的新技术?答案是肯定的。

  Hadoop技术,在大数据时代应运而生,已经在互联网行业广泛应用,依靠分布式架构实现大数据存储和大数据运算,具有低硬件成本、高性能、高可用性、高可扩展性的特点,尤其适用于对数据一次写入多次读取。这些特点正是历史数据线上化的要求。然而,该技术在国内银行尚无成型案例,是否适合银行运营体系,是否能满足银行系统对稳定性、安全性的要求还有待考察。

  以“打造国内最具创新能力的银行”为愿景的光大银行,持续保持着对各项新业务、新技术发展趋势的跟踪,光大科技人对于在互联网领域应用广泛的Hadoop技术也进行了充分预研。在历史数据查询项目中,Hadoop的解决方案以其低成本、易扩展、高可靠的特点在各项方案中脱颖而出。

  三、Hadoop技术在项目中的应用

  Hadoop,由HDFS、MapReduce、Hbase、Pig、Hive和ZooKeeper等成员组成,各成员都具有独特的功能和鲜明的特点。根据历史数据线上化的特点,本项目主要选择使用了HDFS、MapReduce、Hbase和ZooKeeper等成员。

  下面介绍应用Hadoop技术方面的特点。

  1.单集群VS双集群。为满足对系统灾备的要求,需要同时在生产机房和灾备机房部署集群,且当生产机房失效,灾备机房的集群可对外独立提供服务支持。

  Hadoop技术的设计初衷是依靠集群力量高效工作,基于集群架构的优势,从理论上可以在多个机房部署同一大型集群。在两个机房部署单集群的方案虽然可以充分利用Hadoop技术的集群理念,但也会遇到一些问题:首先,需要保证单一机房数据完整性,使数据复本分布到不同的机房,以保证单边机房可以随时对外独立提供服务支持。其次,当出现非系统性突发状况时,很难保证持续稳定的服务供应,容易造成集群内管理的混乱。此外,DateNode间的数据传输是常态,会大量占用机房间的网络带宽资源。要解决上述问题,需要对Hadoop架构进行周密的重构,进行大规模的改造。

  综合分析,结合项目背景,改进原有思路,采用双集群解决方案。在两个机房分别部署一个集群,集群间服务、数据独立。在单机房,单系统出现异常时,快速切换,保证数据安全性和业务连续性;双集群的数据独立传输、整合和加载,最大力度节约机房间的网络资源;双集群特有的双活设计,即两个集群同时提供查询服务,提高了硬件资源利用率。

  2.高可用性。预防出现单点故障,保证系统运行,在HDFS采用双NameNode,在Hbase采用双Hmaster的设置,并由ZooKeeper进行管理,出现故障时的自动切换。

  采用Hadoop技术对数据的多冗余复本机制,确保无单点故障。在数据节点的某一节点出现故障时,仍保证数据完整,可以提供服务,并且可以自动复制数据,保证达到设置的复本数量。

  3.可扩展性。系统采用Hadoop架构,实现动态扩展,系统扩容,平台增加新节点后,自动在所有节点之间均衡数据。后台根据忙闲程度自动发起,占用少量系统资源,无需人工干预,实现数据均衡分布(如图所示)。

  四、银行数据支持平台的创新

  通过历史数据查询项目的实施,光大银行完成了历史数据线上化,提高了业务办理效率,提升了客户服务质量。本项目使银行对Hadoop技术的研讨付诸于实践,使Hadoop技术与银行运营体系深度结合,是对银行数据支持平台的一次勇敢创新。这项技术具有低成本、高可用、易扩展三大特点,有效解决了海量数据存储问题,突破计算能力瓶颈,大幅度节约投资,从而优化投资效率,提高投入产出比。此外,本项目在大数据存储、大数据查询、大数据运算等领域,对Hadoop技术的应用进行了有益的探索,为银行迎接“大数据”时代积累了宝贵经验。

时间: 2024-10-23 19:31:41

基于HADOOP实现历史数据线上化的相关文章

业务技术协同线上化的研发管理实战

摘要:2017年1月13日举办的[云栖计算之旅]线下沙龙第4期研发管理专场,阿里巴巴B2B事业群产品专家代平为大家带来了题为业务技术协同线上化的研发管理实战的演讲.本文主要从管理产品研发的理念开始谈起,着重说明了云效指挥部的六大步骤,最后对使用产品的效果进行了简要分析.一起来欣赏吧. 以下是精彩内容整理: 我叫代平,是阿里巴巴的一位产品经理,负责云效平台研发综合效能管理产品的设计,这款产品目前已经支撑了阿里巴巴1688.国际站.村淘.速卖通.合一集团土豆以及外部的金融.保险等行业的公司.这些公司

基于Hadoop云盘系统1:上传和下载效率优化

 一.读写机制 首先来看文件读取机制:尽管DataNode实现了文件存储空间的水平扩展和多副本机制,但是针对单个具体文件的读取,Hadoop默认的API接口并没有提供多DataNode的并行读取机制.基于Hadoop提供的API接口实现的云盘客户端也自然面临同样的问题.Hadoop的文件读取流程如下图所示: 使用HDFS提供的客户端开发库,向远程的Namenode发起RPC请求: Namenode会视情况返回文件的部分或者全部block列表,对于每个block,Namenode都会返回有该blo

基于Hadoop的云盘系统客户端技术难点之一 上传和下载效率优化

作者:张子良  声明:版权所有,转载请注明出处 一.概述 基于任何平台实现的云盘系统,面临的首要的技术问题就是客户端上传和下载效率优化问题.基于Hadoop实现的云盘系统,受到Hadoop文件读写机制的影响,采用Hadoop提供的API进行HDFS文件系统访问,文件读取时默认是顺序.逐block读取:写入时是顺序写入. 二.读写机制 首先来看文件读取机制:尽管DataNode实现了文件存储空间的水平扩展和多副本机制,但是针对单个具体文件的读取,Hadoop默认的API接口并没有提供多DataNo

【Hadoop Summit Tokyo 2016】操纵云上基于Hadoop 集群的YARN

本讲义出自Abhishek Modi在Hadoop Summit Tokyo 2016上的演讲,主要介绍了Qubole的Hadoop技术.Qubole的架构设计.短生命周期的Hadoop集群的相关内容以及面对的挑战以及YARN的自动扩展和不断发展的HDFS技术.

基于Hadoop的数据仓库Hive基础知识

Hive是基于Hadoop的数据仓库工具,可对存储在HDFS上的文件中的数据集进行数据整理.特殊查询和分析处理,提供了类似于SQL语言的查询语言–HiveQL,可通过HQL语句实现简单的MR统计,Hive将HQL语句转换成MR任务进行执行. 一.概述 1-1 数据仓库概念 数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented).集成的(Integrated).相对稳定的(Non-Volatile).反应历史变化(Time Variant)的数据集合,用于支持

基于Hadoop大数据分析应用场景与实战

为了满足日益增长的业务变化,京东的京麦团队在京东大数据平台的基础上,采用了Hadoop等热门的开源大数据计算引擎,打造了一款为京东运营和产品提供决策性的数据类产品-北斗平台. 一.Hadoop的应用业务分析 大数据是不能用传统的计算技术处理的大型数据集的集合.它不是一个单一的技术或工具,而是涉及的业务和技术的许多领域. 目前主流的三大分布式计算系统分别为:Hadoop.Spark和Strom: Hadoop当前大数据管理标准之一,运用在当前很多商业应用系统.可以轻松地集成结构化.半结构化甚至非结

基于Hadoop数据仓库Hive1.2部署及使用

接下来安装Hadoop数据仓库Hive,上节了解HBase简单使用,听起来HBase与Hive有些类似,概念也有点模糊,那我们先了解下他们之间有什么区别:   HBase是一种分布式.面向列的NoSQL数据库,基于HDFS存储,以表的形式存储数据,表由行和列组成,列划分到列族中.HBase不提供类SQL查询语言,要想像SQL这样查询数据,可以使用Phonix,让SQL查询转换成hbase的扫描和对应的操作,也可以使用现在说讲Hive仓库工具,让HBase作为Hive存储.   Hive是运行在H

基于Hadoop云计算智能家居信息处理平台

近年来,在物联网等具有海量数据需求的应用变得越来越普遍时,无论是从科学研究还是从应用开发的角度来看,掌握云计算技术已成为一种趋势.智能家居作为物联网应用的主要领域之一,自然离不开云计算.云计算的发展使用户无需关注复杂的内部工作机制.无需具备丰富的分布式系统知识及开发经验,即可实现大规模分布式系统规定部署,以及海量数据的并行处理. Hadoop是目前较为成熟和应用较为广泛的云计算架构之一.Hadoop的核心思想是分布式并行处理.Hadoop技术中的关键技术是 HDFS(分布式文件系统)和Map/R

基于hadoop的推荐系统设计与实现

基于hadoop的推荐系统设计与实现 电子科技大学  唐真 主要工作内容如下:1.通过对Hadoop运行机制和MapReduce编程原理的研究,结合对推荐系统与推荐算法,特别是对以物质扩散推荐算法和热传导推荐算法为代表的网络推荐算法的深入分析,设计和实现基于Hadoop平台的网络推荐算法MapReduce化编程实现方案,将该算法复杂的计算任务分解为一系列MapReduce作业流程,以便于在Hadoop和云计算平台上进行分布式并行化处理,通过一系列实验测试证明算法在集群上具有良好的并行性和可扩展性