早期银行业务系统处理的主要是交易型数据,数据量较少,传统关系型数据库(如Oracel、DB2等)已足够应对。随着互联网金融业务的快速发展,业务系统需要处理的数据呈爆炸式增长,传统数据库无法满足业务系统越来越高的数据处理能力要求。于是,新型的分布式数据库系统应运而生。
本文拟先对数据库进行分类,了解各类数据库的特点,参考人行的分布式数据库技术架构规范,并结合业界主流分布式数据库的技术实现,试图梳理出通用技术框架,并根据各功能模块的主要技术特点,结合业务场景,提出分布式数据库系统在金融领域的应用规划,供大家参考。
一、数据库的分类
为了更高效地了解不同厂商分布式数据库的产品特点,我们需要对数据库产品进行分类。业界对数据库的分类尚未形成统一的标准,但都大同小异,本文数据库分类参考了451 Group分析报告中的《数据库行业全景图》。
数据库根据其数据模型,可分为关系型数据库和非关系型数据库。其中,关系型数据库根据其技术特性,分为传统关系型数据库和NewSQL数据库;根据业务负载特征,可分为OLTP数据库和OLAP数据库。
根据部署架构,可分为集中式数据库和分布式数据库。其中NoSQL数据库与NewSQL数据库多为分布式数据库。
数据库分类示意图:
二、分布式数据库的技术框架
就分布式数据库的技术框架而言,可分为计算模块、存储模块和管理模块。各模块的技术框架介绍如下