热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

GBASE构建的中国农行数据仓库,为数字化转型提速

随着互联网和“大数据”时代的来临,传统银行如今面临来自其他领域的跨界挑战前所未有。如何转变思维,唤醒沉睡的数据,建立强大稳定的数据分析系统,开发创新数据应用,实现经营转型,是银行业“大数据”时代

随着互联网和“大数据”时代的来临,传统银行如今面临来自其他领域的跨界挑战前所未有。如何转变思维,唤醒沉睡的数据,建立强大稳定的数据分析系统,开发创新数据应用,实现经营转型,是银行业“大数据”时代迫在眉睫的任务。同时,也是农业银行在转变经营思路的过程中,一直思考的问题。

中国农业银行数据仓库项目最初是基于Sybase IQ建设的,主要应用于统计报表。随着数据量的不断增大、接入的系统越来越多,Sybase IQ由于性能的限制,已经很难在指定的时间窗口中完成数据统计分析工作,也无法继续接入其它的业务系统数据,无法满足银行内部数据分析和监管机构的监管数据要求。

系统架构的障碍影响了农行从宝贵的数据资源中挖掘价值,寻找新的、更先进的产品构建核心数据仓库成为农行迫在眉睫的任务。

为了应对上述问题,农行着手构建新型大数据平台时提出了以“数据是基础,治理是保障,技术是支撑,分析是关键,应用是目标”的原则,核心目标是实现数据价值在业务应用中转变为生产力,构建数据价值利用的有效闭环,真正实现从数据支撑到数据运用的转变。在此过程中,需要对数据治理,提高数据质量,从而更好地满足数据挖掘需求,为数据价值在业务中的深入应用夯实基础。

农业银行作为典型的数据密集型单位,数据的重要性日益凸现:一方面,数据是其信息化的核心,是保障银行正常运转的关键,对数据库系统的稳定性和安全性有着十分苛刻的要求;其次,数据是宝贵的资源和财富,体量增长非常迅速,新构建的数据仓库系统必须具备对新生数据进行及时处理,计算和管理的能力。其主要需求,概括如下:

(1)    解决海量数据快速运算与管理的问题:

l  能够支持PB级以上数据、超过万亿行的数据库表、可以支撑每天处理4000个以上的复杂作业处理能力的并行数据库产品(本条目中的性能指标为2014年项目启动之初的原始需求,目前已经构建的数据仓库系统性能指标远远大于如上数据)。

(2)    系统需要灵活可扩展:

l  要求系统能够具有不断的线性可扩展的能力,具备较高比例的数据压缩能力,从而能够保障系统随着数据的增长而线性扩展。

(3)    安全稳定:

l  数据仓库系统必须安全稳定,具备7×24小时不间断提供服务的能力,保障上层业务系统稳定运行;

l  MPP数据库需要具备强大的备份和容灾能力,能够保障数据本身的安全,杜绝因故障引起的任何数据丢失的可能。

(4)    开放可靠:

l  能够基于x86和Linux开放平台搭建;

l  产品厂商需要具有强大的本地支持团队,能够为客户提供及时的、全方位的服务。

为此,GBASE提出以下解决方案:

农行数据仓库架构如下图所示,由数据来源层,数据处理层,模型指标层,数据集市层,分析展示以及应用门户层组成。

l  数据来源层:

最下层为数据来源层,数据来源层包括新一代核心银行系统、综合应用系统、客户管理系统、贷记卡、银行卡、电子银行、反洗钱征信和财务系统等78个源系统,分别按照一定时间窗口,进行全量/增量数据加载,要求满足T+1需求。目前,数据来源层共计上万张表,最大表超过千亿行。

l  数据处理层:

数据处理层由Hadoop构建,完成对数据的抽取,清晰转换以及拉链表的加工。目前,数据处理层每日处理完毕的数据输出达2.5TB左右。数据加工完成之后,加载至模型指标层,即农行数据仓库主库。



l  模型指标层:

模型指标层即农行数据仓库,采用GBase 8a MPP Cluster构建,使用双集群组成双活主库,其中每个安全组有2个节点。同组的两个节点,放在不同的机架上,以保证全方位的高可用性。此外,系统部署十几台加载机实现集群的数据分发加载任务。

数据仓库的双活系统分为主库和备库两个系统。主库对数据进行批量操作,生成原始数据。备库将主库加工后的数据按照时间机制定时将主库加工的数据以表增量的形式进行更新。备库对数据进行批量更新后后向上层数据集市和应用提供联机查询的服务。

在数据仓库内部,从功能上可以划分为ODS层,BDS层及GDS层三个逻辑层次。ODS(Operational Data Storage)层即为贴源层,用于存放从业务系统直接抽取出来的数据,这些数据从数据结构、数据之间的逻辑关系上都与业务系统基本保持一致。BDS(Base Data Storage)层全称为基础数据层,主要加工任务为在数据库按照对象的需求建模成功之后,对ODS层的数据进行加工和整理。GDS(General Data Storage)即公共数据层,主要目的是为了满足上层应用加工的需求,对BDS层中的数据按照主题或需求进一步进行加工整合,完成轻度数据汇总或宽表加工等任务。

l  数据集市层:

同时,通过使用GBase 8a MPP Cluster构建了针对上层业务的资负集市,零售集市,个人客户集市,对公客户集市、分行数据集市、运营风控集市、信用风险集市、财务数据集市、广东分行信用预警分析系统以及分析数据集市等各个集市子系统。为了实现数据的高安全、系统的高可用,采用双活集群组成数据仓库。数据仓库主库加工后的数据,通过DBLink方式,由主库传输到集市环境。

l  分析展示层:

使用特定的计算分析引擎,建立数据模型等方法,完成对数据的挖掘和使用。

l  应用展示层:

应用展示对数据进行最终的调取使用,以供服务和业务的展开。


推荐阅读
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 浏览器作为我们日常不可或缺的软件工具,其背后的运作机制却鲜为人知。本文将深入探讨浏览器内核及其版本的演变历程,帮助读者更好地理解这一关键技术组件,揭示其内部运作的奥秘。 ... [详细]
  • Python错误重试让多少开发者头疼?高效解决方案出炉
    ### 优化后的摘要在处理 Python 开发中的错误重试问题时,许多开发者常常感到困扰。为了应对这一挑战,`tenacity` 库提供了一种高效的解决方案。首先,通过 `pip install tenacity` 安装该库。使用时,可以通过简单的规则配置重试策略。例如,可以设置多个重试条件,使用 `|`(或)和 `&`(与)操作符组合不同的参数,从而实现灵活的错误重试机制。此外,`tenacity` 还支持自定义等待时间、重试次数和异常处理,为开发者提供了强大的工具来提高代码的健壮性和可靠性。 ... [详细]
  • 本文详细介绍了如何使用OpenSSL自建CA证书的步骤,包括准备工作、生成CA证书、生成服务器待签证书以及证书签名等过程。 ... [详细]
  • 本文详细介绍了在 Ubuntu 系统上搭建 Hadoop 集群时遇到的 SSH 密钥认证问题及其解决方案。通过本文,读者可以了解如何在多台虚拟机之间实现无密码 SSH 登录,从而顺利启动 Hadoop 集群。 ... [详细]
  • 单片微机原理P3:80C51外部拓展系统
      外部拓展其实是个相对来说很好玩的章节,可以真正开始用单片机写程序了,比较重要的是外部存储器拓展,81C55拓展,矩阵键盘,动态显示,DAC和ADC。0.IO接口电路概念与存 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • 本文通过思维导图的形式,深入解析了大型网站技术架构的核心原理与实际案例。首先,探讨了大型网站架构的演化过程,从单体应用到分布式系统的转变,以及各阶段的关键技术和挑战。接着,详细分析了常见的大型网站架构模式,包括负载均衡、缓存机制、数据库设计等,并结合具体案例进行说明。这些内容不仅有助于理解大型网站的技术实现,还能为实际项目提供宝贵的参考。 ... [详细]
  • 在Linux系统中避免安装MySQL的简易指南
    在Linux系统中避免安装MySQL的简易指南 ... [详细]
  • 深入解析C语言中结构体的内存对齐机制及其优化方法
    为了提高CPU访问效率,C语言中的结构体成员在内存中遵循特定的对齐规则。本文详细解析了这些对齐机制,并探讨了如何通过合理的布局和编译器选项来优化结构体的内存使用,从而提升程序性能。 ... [详细]
  • 本文详细解析了Java类加载系统的父子委托机制。在Java程序中,.java源代码文件编译后会生成对应的.class字节码文件,这些字节码文件需要通过类加载器(ClassLoader)进行加载。ClassLoader采用双亲委派模型,确保类的加载过程既高效又安全,避免了类的重复加载和潜在的安全风险。该机制在Java虚拟机中扮演着至关重要的角色,确保了类加载的一致性和可靠性。 ... [详细]
  • 本文详细探讨了几种常用的Java后端开发框架组合及其具体应用场景。通过对比分析Spring Boot、MyBatis、Hibernate等框架的特点和优势,结合实际项目需求,为开发者提供了选择合适框架组合的参考依据。同时,文章还介绍了这些框架在微服务架构中的应用,帮助读者更好地理解和运用这些技术。 ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • SecureCRT是一款功能强大的终端仿真软件,支持SSH1和SSH2协议,适用于在Windows环境下高效连接和管理Linux服务器。该工具不仅提供了稳定的连接性能,还具备丰富的配置选项,能够满足不同用户的需求。通过SecureCRT,用户可以轻松实现对远程Linux系统的安全访问和操作。 ... [详细]
  • 本文探讨了如何通过编程手段在Linux系统中禁用硬件预取功能。基于Intel® Core™微架构的应用性能优化需求,文章详细介绍了相关配置方法和代码实现,旨在帮助开发人员有效控制硬件预取行为,提升应用程序的运行效率。 ... [详细]
author-avatar
陈跃西vs_298
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有