Db2发展历程:混合数据库的演进史

2018-01-17 11:29:00 作者:George Baklarz 出处 : 比特网

  “混合”一词最近使用频率颇高,从数据库角度来说,可以指代很多东西。对于系统管理员,混合数据库可能意味着在端、内部或者设备中配置数据库,同时向应用或最终用户透明公开位置信息。对于应用开发人员,混合数据库可能指数据库处理 JSON 等非关系型数据的能力,以及用来查询和管理这些记录类型的 SQL 工具。而对于业务部门来说,混合数据库可能是指数据库的运行情况,这样单个数据库引擎可以同时运行在线事务处理工作负载 (OLTP) 和在线分析处理工作负载 (OLAP)。

  Db2® 产品系列已包含许多混合配置。Db2 可在多个内部配置中提供,内含对 Linux on Intel®、Power® 和 zLinux® 平台、Windows® 以及 AIX® 的支持。此外,还支持对这些平台实施虚拟化技术,包括 VMware®、KVM、PowerVM® 和 Docker 容器。最后,Db2 的云版本还支持客户在托管或受管的云环境中运行其工作负载。

  从应用开发角度而言,Db2 始终支持主流的开发平台和语言。多年以来,这款数据库一直支持 C、C++、Java 等传统编程语言,以及 Ruby、Python、Perl、PHP 和 Node.JS 等 Web 开发语言。IDE 开发环境(包括 Eclipse 和 Microsoft Visual Studio)具备用于 Db2 支持的本机插件。最后,新型的 API,例如 IBM Data Server Gateway for OData,使用户能够快速创建 OData RESTful 服务来查询和更新 Db2 中的数据。

  随着对开发语言支持的日益关注,新数据类型(JSON、Graph)支持需求随之而来,同时与其他数据库供应商的 SQL 语法扩展的兼容性需求也逐渐增加。 Db2 增添了对重要 SQL 语法扩展的支持,以支持 Oracle® PL/SQL 语法、 PostgreSQL、Netezza® (PDA) 和 SQLServer® SQL 的扩展。在某些方面,Db2 还新增了支持其他 SQL 方言的混合功能。

  应用还需要能够根据不同的数据源整合信息和构建报告。通常,这需要将数据提取整合至单一存储库中。为了满足此项需求,Db2 开发了联合功能,从而支持标准 SQL 用于各种数据存储库。对 Oracle、SQL Server 和 Teradata® 等传统关系型数据源的支持进一步扩展演化,最终涵盖 Hadoop®、Spark®、Hive®、MongoDB®、HAWQ®、Hive®、Impala® 等非结构化数据源。开发人员和用户目前可使用熟悉的 SQL 语法,创建针对非关系型数据库源的查询,而无需处理这些数据源的底层复杂关系。

  对于业务部门而言,能够同时运行 OLTP 和 OLAP 事务的混合数据库拥有诸多优点。Gartner 率先提出了 HTAP(Hybrid Transactional/Analytical Processing,“混合事务/分析处理”)这个词。HTAP 一词用于描述能够同时执行 OLTP 和 OLAP 以进行实时运营情报处理的单个数据库。虽然这个定义中没有提到,但是有人指出,这类数据库应该能够满足在混合工作负载环境中将数据存储在“内存中”的需求,以便显著提升分析工作负载 (OLAP) 的运行速度。

  HTAP 系统的一个关键特征是,它将记录系统 (OLTP) 与对当前数据进行 OLAP 查询的功能相结合。因此,报告的数据和实际事务数据之间能够实现零延迟或者最小延迟。对于生产数据而言,这似乎也行得通,但是多年来,客户使用了各种技术来开展报告工作,但无法在存储了运营数据库的服务器上就地运行报告工作负载。

  这是为什么?部分原因是由于两种处理类型彼此分离。通常情况下,OLTP 事务非常简短,所需资源很少,但性能要求极高(智库)。OLAP 用于处理分析和报告工作负载,所涉事务的运行时间很长,需要扫描数千或数百万行数据,消耗大量的处理能力。OLAP 查询还需要密集的调优和优化操作,以便实现高效运行。过去,解决这种冲突的方法是混合两种工作负载,但是当您在针对分析工作负载添加额外的索引和优化对象时,如何才能确保实现 OTLP 工作负载的服务级别协议(响应时间和吞吐量)?

  客户需要将这两种工作负载分开。这需要使用 ETL(提取、转换、加载)工具将数据从一个系统移至另一个系统。系统管理员将会创建若干索引、视图、物化查询表和其他优化对象,以改善查询的性能。在许多情况下,此方法都会奏效,但是也会产生相应的成本。运行两个系统会导致复杂性加剧,许可和维护成本随之升高,最终记录系统和分析系统之间也难免会产生延迟。

  多年来,Db2 客户能够通过多种技术和技巧在单个系统上实现一定程度的 HTAP 功能,包括数据库分区(数据分区功能)、物化查询表 (MQT)、HADR (High-Availability Data Replication,“高可用性数据复制”)中的只读表格以及其他优化策略。如果延迟不是特别重要,则可使用变更数据捕获 (CDC) 或队列复制 (QRep)。但是这些策略都需要额外的管理、调优和资源。要尽可能地减少延迟、改善报告性能,更为重要的是,简化 HTAP 系统的调优和管理,其他技术必不可少。

  2013 年,IBM 推出了 BLU 技术,将其内置于了 Db2 产品之中。BLU 是一项具有革命性的“内存列式技术”,已在 Db2 V10.5 中引入。这项技术可为客户提供惊人的速度和性能来处理分析工作负载。过去需要数小时来完成的工作负载,现在只需几秒钟!更为重要的是 BLU 的“载入并执行”理念。BLU 消除了高效运行查询所需的几乎所有调优工作。

  Db2 BLU 拥有若干功能,可带来卓越性能。BLU 表是按列组织存储的,从而 Db2 能够实现 10 倍的压缩率。经压缩的数据进一步存储于块中,这些存储块可以模拟数据库运行的硬件中的寄存器大小。这项特性与 SIMD(单指令多数据)相结合,使 Db2 能够充分利用硬件中已有的内在并行性。当数据存储到数据库中后,Db2 可自动跟踪其看到的每个输入数据块的值范围,因此,在查询处理期间,只读取可能包含所需值的数据块,跳过其他的数据块。数据页以压缩格式存储于内存中,并以压缩格式进行分析,从而消除了对每个值进行解压缩的需要。Db2 还会使用分配给其的任何内存,无需将所有数据放入内存中。智能预取系统旨在确保系统以内存的速度运行,即使只有数据库的一部分放于内存中。

  最初,Db2 BLU 主要面向分析工作负载,因为这类工作负载的性能需求最高。2015 年,公司推出了 Db2 BLU 产品增强功能,进一步演化成为了 BLU 的 HTAP 功能。影子表允许客户继续在现有行格式表中运行 OLTP/报告工作负载,但是添加了一系列 BLU 列式格式的副表(“影子”)。影子表中包含分析工作负载所需的列的副本,并且为 OLAP/报告查询提供所有 BLU 性能优势,这些查询会透明地路由至影子表中。默认情况下,影子表每五秒更新一次,因此路由至它们的 OLAP 查询能够获取最新数据。如果需要,用户可以始终覆盖延迟需求,同时避免使用影子表。

  2016 年,DB2 V11.1 中推出了 BLU 增强功能,包括跨数百个服务器进行分区(或“共享”)的功能。这项功能可将 BLU 的内存处理速度扩展至庞大的 PB 级别数据量和数千内核。此外,此发行版中首次包含一系列 Db2 BLU 的内部更新,用于改善其本机 OLTP 处理性能。例如,针对小型 OLTP 插入作业,对跟踪数据页中数据范围(以实现数据跳过)的概要表进行了优化,从而在某些情况下实现 50% 的性能提升。进一步优化升级包括针对要求苛刻的 OLTP 工作负载的高级索引、针对小型 OLTP 型事务的深入增强功能,未来还将实施更多的功能改进。

  向 BLU 添加更多的 OLTP 处理功能可为客户带来诸多好处。首先,客户不再需要决定以行还是列的格式编制表。第二,不再需要数据的其他副本(影子格式),与保持数据更新有关的管理工作和资源消耗也随之消失不见。第三,消除了数据延迟!OLAP 查询和报告,以及其所影响的决策和交易始终能够得到最新提交的数据的支持。

  2017 年还推出其他 Db2 BLU 增强功能,其中会包含更多的 HTAP 性能功能部件。客户采用此项技术的步伐会继续加快,将 OLTP 功能部件纳入 BLU 中简化客户工作负载的部署,同时提供更高的性能。

    面向数字化、云计算和认知时代,您是否想拥有一款无边界数据库软件?目前,IBM DB2正发起免费试用活动,如果您恰好感兴趣,快速速报名>>

最近更新
科普

科普图集
互联网+升级到智能+,开启万物智联新时代

互联网+升级到智能+,开启万物智联新时代>>详情

中国互联网消费市场,发展潜力一片大好

中国互联网消费市场,发展潜力一片大好>>详情

邮件订阅

软件信息化周刊
比特软件信息化周刊提供以数据库、操作系统和管理软件为重点的全面软件信息化产业热点、应用方案推荐、实用技巧分享等。以最新的软件资讯,最新的软件技巧,最新的软件与服务业内动态来为IT用户找到软捷径。
商务办公周刊
比特商务周刊是一个及行业资讯、深度分析、企业导购等为一体的综合性周刊。其中,与中国计量科学研究院合力打造的比特实验室可以为商业用户提供最权威的采购指南。是企业用户不可缺少的智选周刊!
网络周刊
比特网络周刊向企业网管员以及网络技术和产品使用者提供关于网络产业动态、技术热点、组网、建网、网络管理、网络运维等最新技术和实用技巧,帮助网管答疑解惑,成为网管好帮手。
服务器周刊
比特服务器周刊作为比特网的重点频道之一,主要关注x86服务器,RISC架构服务器以及高性能计算机行业的产品及发展动态。通过最独到的编辑观点和业界动态分析,让您第一时间了解服务器行业的趋势。
存储周刊
比特存储周刊长期以来,为读者提供企业存储领域高质量的原创内容,及时、全面的资讯、技术、方案以及案例文章,力求成为业界领先的存储媒体。比特存储周刊始终致力于用户的企业信息化建设、存储业务、数据保护与容灾构建以及数据管理部署等方面服务。
安全周刊
比特安全周刊通过专业的信息安全内容建设,为企业级用户打造最具商业价值的信息沟通平台,并为安全厂商提供多层面、多维度的媒体宣传手段。与其他同类网站信息安全内容相比,比特安全周刊运作模式更加独立,对信息安全界的动态新闻更新更快。
新闻中心热点推荐
新闻中心以独特视角精选一周内最具影响力的行业重大事件或圈内精彩故事,为企业级用户打造重点突出,可读性强,商业价值高的信息共享平台;同时为互联网、IT业界及通信厂商提供一条精准快捷,渗透力强,覆盖面广的媒体传播途径。
云计算周刊
比特云计算周刊关注云计算产业热点技术应用与趋势发展,全方位报道云计算领域最新动态。为用户与企业架设起沟通交流平台。包括IaaS、PaaS、SaaS各种不同的服务类型以及相关的安全与管理内容介绍。
CIO俱乐部周刊
比特CIO俱乐部周刊以大量高端CIO沙龙或专题研讨会以及对明星CIO的深入采访为依托,汇聚中国500强CIO的集体智慧。旨为中国杰出的CIO提供一个良好的互融互通 、促进交流的平台,并持续提供丰富的资讯和服务,探讨信息化建设,推动中国信息化发展引领CIO未来职业发展。
IT专家网
IT专家新闻邮件长期以来,以定向、分众、整合的商业模式,为企业IT专业人士以及IT系统采购决策者提供高质量的原创内容,包括IT新闻、评论、专家答疑、技巧和白皮书。此外,IT专家网还为读者提供包括咨询、社区、论坛、线下会议、读者沙龙等多种服务。
X周刊
X周刊是一份IT人的技术娱乐周刊,给用户实时传递I最新T资讯、IT段子、技术技巧、畅销书籍,同时用户还能参与我们推荐的互动游戏,给广大的IT技术人士忙碌工作之余带来轻松休闲一刻。