DB2并行数据库核心技术分析
2018-03-05孔祥宗杜丛强
◆孔祥宗 杜丛强
DB2并行数据库核心技术分析
◆孔祥宗 杜丛强
(山东省农村信用社联合社 山东 250000)
目前,DB2并行数据库系统已被广泛应用于银行业的诸多核心业务系统中。本文分别从并行数据库系统的目标、本质、原则、方法及逻辑结构模型等方面,对DB2并行数据库系统的核心技术做一全面、系统化分析,望能为DB2实践应用提供些许借鉴与指导。
并行数据库系统;DB2;表分区
0 引言
伴随科学技术的不断发展,信息化程度日渐提升,各个行业所需处理的信息量持续增大,特别是在通信、海洋开发、航天等领域,数据规模已达TB级,针对如此大的数据量,传统数据库系统已经难以满足实际需要。所以,大力开展并行数据库系统设计研究,将其更好地用于数据的管理与储存,意义重大。本文根据当前信息技术发展需要,探讨了一种新型的DB2并行数据库核心技术,望能为数据领域发展有所帮助。
1 并行数据库系统的本质分析
现阶段,在整个银行业当中,诸如征信系统、支付清算系统及记账系统等核心业务系统,伴随业务范围的扩充,业内内容的增加,以及业务流程的转变、业务方式的调整,业务系统当中所充斥的生产性子系统,每日均需接受与应对数量庞大的高并发实时访问,在此过程中,需要吐出可以用海量一词来形容的交易数据;针对银行企业来讲,这些交易信息、数据可谓无价资源,业务系统当中配套的管理性子系统,需要根据实际情况及需要,对每日所生成的海量交易数据进行不间断的、实时性的归档,开展统计学分析,并对金融服务、货币政策等业务价值进行深入、全面的挖掘与处理。通常情况下,其数据容量可以达到惊人的TB级,甚至达到了更为惊人的PB级。银行企业发展至今,数据信息量仍然处于持续攀升状态,因此,对于传统数据库系统而言,其已经无法满足现阶段的空间需求。
1945年,世界首台电子管计算机应运而生,时至今日,已有七十余年的历史,在此进程中,计算机硬件得到全面、深层化发展,尤其是在微处理器方面,更是发展势头迅猛,处理器在具体的运算性能方面,往往用摩尔定律来提速,每1.5年速度便能提升1倍;而在主存储器方面,其容量可以每3~4年便增加1倍。而针对硬盘容量来讲,则可每年提升60%,另外,还需要指出的是,这些硬件的价格始终呈现下跌状态,整个性价比始终呈提升趋势,有力推动着新型计算机体系机构的不断发展与完善。现阶段,在业界范围内,始终在提倡将并行处理机当作用于满足实时性能计算需求以及海量数据处理需求的解空间,为此领域问题的有效解决奠定坚实、高质量的物质基础。
在大规模并行处理机的解空间与海量数据实时处理的问题空间之间,因二者有着不同的处理逻辑,在概念上也不同,要想将此距离较好地弥补掉,需从当前的问题空间映射至解空间,构建映射函数:f:y=f(x),其定义域是:{x/x=海量数据实时处理的问题空间的处理逻辑与概念},定义域:{y/y=大规模并行处理机解空间的处理逻辑与概念}。由此得知,针对并行数据库系统来讲,其核心课概括为:自海量数据实时处理的问题空间至大规模并行处理机的解空间的映射f。此外,另需强调的是,自问题空间直接映射至解空间,在此过程中会存在一定复发性,为了施加有效控制,需专门构建一个复合映射函数f,也就是f(x)=P(L(x)),其中,L就是自问题空间至并行数据库系统之间的逻辑映射,而对于P来讲,就是自并行数据库系统至解空间的物理映射。建立模型是实现映射的主要方式与手段,专门为逻辑映射构建围绕并行数据库系统的逻辑结构模型,而针对物理映射,则专门为其构建并行数据库系统的物理结构模型。
2 并行数据库系统的原则、目标与方法分析
由映射f的相关定义得知,高性能、高可用性为并行数据库系统的目标所在。冗余机制保证高可用性的实现,而并行机制保证高性能。
针对高性能来讲,其主要由2个指标来度量,其一为线性扩展,其二是线性加速。假设无并行性,将1个单位计算资源投入,那么在1个单位时间中,可以将1个单位计算规模的1个计算任务完成。所谓线性加速,从根本上来讲,就是将n个单位计算资源投入,在1/n个单位计算时间中,将1个单位计算规模的1各计算任务完成。针对线性扩展而言,即把n个单位计算资源投入,在指定的1个单位时间中,将1个单位计算规模的n个计算任务完成。
在实际操作中,为了能使并行数据库系统达成上述目标,需要秉持如下原则:从之前的有限构建无限。也就是没有一台无限快的处理器来提供无限能力的计算资源,而是借助于一定的结构关系,由无限多个有限能力的计算资源,来构建一个有无限能力的计算资源。此种结构关系便为本文所指出的并行计算体系结构。针对并行机构的实现方法来讲,可划分为两种,一种是分区并行性,另外一种是流水线并行性。针对流水线并行性而言,就是串联一个关系运算的输出结果,并将其接入到另外一个关系运算所对应的输入端,使各个关系运算之间形成和谐、高效的流水线,借助于流水线深度,来得到并行性。需要指出的是,在关系运算过程中,流水线大小、深度等因素,在某种程度上会对其并行性发挥造成限制。对于分区并行性而言,从基本层面来分析,即转化大任务,使之成为若干个彼此独立的小任务,包含两个方面,即并行运算与数据分区,也就是对大规模数据集进行分割,使之成为若干小规模数据集,使原本一个整体的关系运算,被划分为若干相同的子关系运算;针对此些子运算来讲,其均作用于各小规模数据集上。
3 逻辑结构模型分析
DB2并行数据库系统的逻辑结构模型为:针对DN2数据库分区来讲,在对其进行设计时,多选用分区并行性中的散列分区策略来实现。各数据库分区被称之为数据库节点,或者是直接被称为节点。各数据库分区均有专属自身的计算资源,比如磁盘、主存储器、CPU等。而对于各数据库分区来讲,其均为其一独立的数据库,而且均有自己的索引、数据、配置稳健等。查询间、节点间、查询内部及节点内为支持的并行性粒度。无横向扩展及限制的规模。以分区键为基础,利用散列函数,实现数据到各数据库分区的均匀映射,如果用于对外发出SQL操作时,那么此时处于被连接状态的分区,便可成为协调节点,主要职责就是对用户的各种请求进行处理,且依据分区键与分布图,分解用户的请求,使之成为多个子任务,然后交给各个分区进行并行处理,最后,汇总各分区的执行结果,返回给用户。
针对DB2表空间来讲,其在设计中选用的是分区并行性中的轮转法策略,DB2中又被称作条带化。容器构成表空间,且还是数据的物理存储,若在1个表空间中同时有多个容器,则在写容器时,数据是依据循环方式按块来写的。当将第一个容器写完之后,便可以写第二个容器,以此类推。
4 物理结构模型分析
在DB2并行数据库系统的逻辑结构模型向大规模并行处理机的解空间进行映射时,为了能够给予最大支持,需将DB2并行数据库系统相应物理结构模型引入。
针对大规模并行处理机MPP来讲,其主要有无共享、共享磁盘及共享内存等物理结构。
4.1 共享内存SE
全部的处理器与磁盘共享一个主存储器,总线连接。其优点为:在各个处理器间,有着非常高的通信效率。不足之处就是其规模不得大于64个处理器,不然会出现瓶颈。
4.2 共享磁盘SD
全部处理器共享一个磁盘。互联网进行连接,各处理器均能对全部磁盘进行访问,各处理器均有专属自己的主存储器。容错性为其优点,速度较慢为其不足。
4.3 无共享SN
从根本上来讲,就是各个处理器对公共主存储器并不共享,不共享磁盘。其优点为无共享体系结构,扩展性更好,能支持诸多处理器工作,不足是在进行数据传输时,会涉及到两端的软件交互,速度相对较慢。通过对上述物理结构进行比较,得知无共享SN的结构与架构高性能数据库系统更为适宜,因此,DB2可优先选择。
5 结语
综上,本文探讨了一种能满足高可靠性需求及提高吞吐量的问题空间,指出了解空间的映射及模型,另外,还对DB2并行数据库的查询性能的构成进行了深入剖析。从中得知,DB2并行数据库有着强大的功能类型,其在银行业中有着重要的应用价值。
[1]张爱文,王宇颖.基于查询优化的并行数据库自动数据划分设计[J].哈尔滨师范大学自然科学学报,2004.
[2]杜丛强,孙丙腾. DB2数据库读写分离技术在银行核心系统中的应用[J].信息技术与信息化,2017.
[3]张勤.主机DB2数据库重组技术的应用与实践[J].中国金融电脑,2011.