ColumnStore 成为 MariaDB 10.5 的原生组成部分

2020 年 6 月 24 日星期三,MariaDB Server 10.5 发布了通用版本 (GA)。虽然其中包含了一些很酷的新功能,但这篇关于 10.5 的第一篇博客文章是关于其突破性的新组件 ColumnStore 的。

总体概览

ColumnStore 将数据仓库带入了 MariaDB Server 的世界。它是一个列式存储引擎(维基百科:列式数据库管理系统),实现了通常被称为 HTAP(维基百科:混合事务/分析处理)的功能。列式数据类型按列而不是按行存储数据,从而能够在海量数据上实现快速分析报告。

最新消息

ColumnStore 引擎是 MariaDB Server 10.5 的一部分。在此之前,ColumnStore 通过 MariaDB 的一个独立分支提供给开源社区。这意味着在两者之间连接数据需要使用非 GPL 版本的 MaxScale。现在,一旦安装,将数据从 InnoDB 移动到 ColumnStore 就像将数据从任何 MariaDB 存储引擎移动到另一个一样简单。

您需要了解的信息

虽然 MariaDB 10.5 是 GA 版本,但 ColumnStore 存储引擎是测试版 (beta),这是我们在添加新存储引擎时遵循的典型流程。独立的成熟状态是存储引擎架构的优势之一。ColumnStore 与 10.5 的集成已经完成,其成熟度与 MariaDB Server 10.5 整体本身一样。因此,修复新 ColumnStore 存储引擎中发现的任何问题的工作可以独立进行,ColumnStore 可以在接下来的几个月内被宣布为 GA 版本。(请注意,您可以使用 INFORMATION_SCHEMA.PLUGINS 表来查看插件的成熟度)。

ColumnStore 是 MariaDB Server 10.5 的集成部分,可以像 MyRocks 或 Spider 等其他存储引擎一样部署。要启用 ColumnStore,您需要将其插件化,这意味着需要额外的几个安装步骤(参见下面的“入门”部分)。

MariaDB ColumnStore 目前不支持与 MariaDB Server 相同的所有操作系统(目前不支持 Windows、不支持 Mac OS X)。根据您使用的 Linux 发行版,下载和安装将有所不同。

为什么这对开源社区很重要

从 MariaDB 社区的角度来看,**将分析能力引入 MariaDB Server** 是个好消息。它开辟了一类全新的应用程序,可以使用 MariaDB 用户已经拥有的相同技能集。到目前为止,开源数据库用户尚未能在同一产品中享受到混合事务/分析处理的便利。他们不得不转向专有解决方案,例如各种版本的 Oracle Database、IBM Db2 和 Microsoft SQL Server,或者 Amazon Redshift 或 Microsoft Azure SQL Data Warehouse 等平台即服务 (PaaS) 解决方案。

从 MariaDB 基金会的角度来看,ColumnStore 引擎已经**融入到开放开发模式**中一段时间了。项目的代码存储在 **GitHub** (https://github.com/mariadb-corporation/mariadb-columnstore-engine/) 上,问题在 **Jira** (https://jira.mariadb.org/projects/MCOL) 中管理。有许多社区**贡献**,其中最大的个人贡献是 https://jira.mariadb.org/browse/MCOL-265,即对 TIMESTAMP 的支持 (https://github.com/mariadb-corporation/mariadb-columnstore-engine/pull/739)。MCOL 任务已被纳入 Google Summer of Code。因此,我们正在讨论的是 MariaDB 世界的**一等公民**,考虑到将 ColumnStore 集成到 MariaDB Server 的工作几年前就开始了,这并不令人意外。

入门

**尝试 ColumnStore** 的通常方法是先从 https://downloads.mariadb.org/mariadb/repositories/ 安装 10.5 包,然后使 ColumnStore 可执行,并使用 yum 或 apt 安装 ColumnStore。部署的分步说明链接自 https://mariadb.com/kb/en/columnstore-getting-started/(我们知道步骤相当多;ColumnStore 团队正在研究简化的可能性)。

尽管 ColumnStore 在 MariaDB Server 中是新加入的,但 MariaDB Corporation 多年来一直将其作为其面向企业的产品的一部分提供。MariaDB Corporation 已提供其 ColumnStore 文档。为了便于查找,我们在 https://mariadb.com/kb/en/mariadb-columnstore/ 上整理了一系列指针。

如何提供反馈

前面提到的 ColumnStore Jira 可用于**任何形式的社区反馈**。

**文档反馈**关于 ColumnStore 的文档反馈可以使用文档页面右下角的 BugHerd 链接提交 (https://mariadb.com/docs/ 请参阅“加载反馈工具 -> 发送反馈 …”)。

谢谢!

总而言之:**感谢 MariaDB Corporation** 成功地将 ColumnStore 集成到 MariaDB Server 10.5 中,使其成为一个完整的组件!MariaDB 基金会认为这是对我们珍视的两件事的验证:MariaDB Server 的**开放开发模式**和开放的**存储引擎架构**。干得好!