Overview of OLAP products

While there are many products claiming they are HTAP instead of OLAP, the majority of the market is still OLAP products. This blog is a try to summarize the most well known products, refering to the Gartner reports published in recent three years.

I like to divided the products into five categories, that is,

  1. The traditional products
  2. The inovation products
  3. The cloud computing products
  4. The big data products
  5. The Others

In fact, they can learn from each other and create new combinations.

概述

从 Gartner 报告1, 2, 3等来源 中可以看到主流的产品代表。我将其分为几个大类:

  1. 传统产品,包括 Oracle、Teradata、DB2、SQL Server、SAP Sybase 等。
  2. 创新产品,包括 Vertica、Greenplum、MemSQL、SAP HANA 等。“创新”是相对 Teradata 等而言。
  3. 云计算产品,包括 Redshift、BigQuery、Snowflake Computing 等。
  4. 大数据产品(Hadoop 生态),包括 Cloudera Enterprise、Hortonworks、Huawei FusionInsight、MapR、Transwarp、HAWK 等。
  5. 其他产品,包括 EDB、1010data (Insights Platform)、MarkLogic (NoSQL)、 MongoDB 等。

结合国内的情况,还有阿里云的 AnalyticDB、MaxCompute 等、南大通用的 GBase 8a 等。还有其 他一些更小众的产品,例如: 俄罗斯的 ClickHouse、MariaDB 的 ColumnStore、加拿大的 Infobright、Oracle labs 的 MySQL Analytic Service 等。

  1. Cloudera Enterprise 包括 Hadoop、Spark、Impala、Kudu 等。
  2. Huawei FusionInsight 包括 Hadoop、Spark、Storm、MPPDB 等。
  3. Transwarp 包括 Hadoop、Spark 等,也是国内的 Hadoop 发行版。
  4. MemSQL 最初是以兼容 MySQL 的分布式内存 OLTP 出现,后来重点专向了 OLAP,它也集成了 Spark 和 Kafka。
  5. DB2 也提供 Hadoop 等选项。
  6. MaxCompute 可近似认为是 Cplusplus 版本的 Hadoop。
  7. Infobright 因为营收不足被排除在 Gartner 2017 年的名单之外。

可以看出,很多产品都集成了 Hadoop 并且提供了云上的产品,这也是此类产品的两个很重 要的演化方向。 Hadoop 生态的演进已经进入了新的阶段,2018 年,Cloudera 与 HortonWorks 的合并是一个重要的标志性事件。随后的 2019 年,HPE 又收购了 MapR。有 关 SQL 和大数据库的集成类的研究和产品,还可以参看 VLDB 2019 的 “Integration of Large-Scale Data Processing Systems and Traditional Parallel Database Technology”。

近三年 Gartner 报告的截图

首先出场的是 Gartner 2016、2017 年的报告截图:

img

img

从图中可以看出,除了 AWS 之外,主要的玩家还是传统产品。

其次,再看看 Gartner 2018 年的报告截图:

img

从这几年入围的公司的变化中可以看到,云计算产品进步很大,Hadoop 生态的发展出现了 瓶颈。详细的情况可以参阅完整的报告,这里就不再摘录了。

OLAP 产品主要特点

  1. 数据量很大,几十 TB 都算小的。相对而言,传统 MPP 支持的节点数以及处理的总数据量比 Hadoop 生态要小。
  2. 数据加载,有些场景是批量加载,有些场景是流式加载。从 OLTP 等经过 ETL 来的数据属于二手数据,通常是批量加载。
  3. 查询优化,查询可能是相对固定的,也可能是不固定的即席查询。查询大多比较复杂。 与大数据生态的优化器相比,传统 MPP 系统的优化器更为强大。
  4. 高级分析能力,包括高级数仓函数、机器学习、集成 R 语言等。
  5. 多种数据源的支持,包括外部数据访问。传统数仓是把大数据作为外部数据源,而大数据则是把传统数仓作为外部数据源。
  6. 查询响应时间以及入库数据的及时可见性。批量数据加载的数据时效性相对较差,实时数据加载则较好。
  7. 事务能力,MPP 数据库通常都支持事务,大数据生态的支持较弱,还有一些则不支持事务。
  8. 存储格式,大都采用列式存储或行列混合存储,并提供高压缩比。
  9. 系统可用性,包括数据多副本等。传统产品都是主备模式,Haddop 生态依靠 HDFS 的多副本能力。
  10. 生态完整性,OLAP/BI 生态有很多成熟软件,无缝接入是一项很重要的能力。

OLAP 产品云化的方式

经过传统数仓、MPP、大数据、云计算等不同阶段的演化,OLAP 产品市场相对比较成熟,但 是因为不同的产品实际上覆盖了不同的需求,还没有哪一个产品形成类似 OLTP 领域那样的 高度集中。

云计算厂商推出产品主要有以下几种形式:

在现有产品基础上结合云计算的特点推出新产品

最典型的如 Amazon 的 RedShift,其基础是一个与 Greenplum 等同时代的创新产品 ParAccel,Amazon 充分发挥了云平台优势,看起来还比较成功。而 ParAccel 本身已经没 有什么消息了。

提供公有云接口,支持各种产品部署上云

很多云厂商与合作伙伴的合作都是此类做法。例如国内比较多的额 Greenplum 衍生品。这 也是其他很多数据库产品最初的上云方式。

内部大量使用验证后的产品上云

最典型的就是互联网公司自研自用的产品,例如 Google 的 BigQuery、阿里云的 AnalyticDB 等。

其他

值得注意的是,Gartner 还在几年前发明了 HTAP 这个词,因此后来出现了对应的 HTAP 产 品分类。不过到底什么是 HTAP 没法有一个完全统一的说法,很多产品都是想办法往这上面 靠,号称已经是 HTAP 或者将要成为 HTAP 的产品也不少见。

Footnotes

1 https://www.gartner.com/doc/reprints?id=1-3VPGAWJ&ct=170316&st=sb

2 https://myleadcorner.files.wordpress.com/2017/07/magic-quadrant-for-data-management-solutions-for-analytics-feb-2017.pdf

3 https://cloud.google.com/gartner-magic-quadrant-for-dmsa/

Written on October 24, 2019