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,
- The traditional products
- The inovation products
- The cloud computing products
- The big data products
- The Others
In fact, they can learn from each other and create new combinations.
概述
从 Gartner 报告1, 2, 3等来源 中可以看到主流的产品代表。我将其分为几个大类:
- 传统产品,包括 Oracle、Teradata、DB2、SQL Server、SAP Sybase 等。
- 创新产品,包括 Vertica、Greenplum、MemSQL、SAP HANA 等。“创新”是相对 Teradata 等而言。
- 云计算产品,包括 Redshift、BigQuery、Snowflake Computing 等。
- 大数据产品(Hadoop 生态),包括 Cloudera Enterprise、Hortonworks、Huawei FusionInsight、MapR、Transwarp、HAWK 等。
- 其他产品,包括 EDB、1010data (Insights Platform)、MarkLogic (NoSQL)、 MongoDB 等。
结合国内的情况,还有阿里云的 AnalyticDB、MaxCompute 等、南大通用的 GBase 8a 等。还有其 他一些更小众的产品,例如: 俄罗斯的 ClickHouse、MariaDB 的 ColumnStore、加拿大的 Infobright、Oracle labs 的 MySQL Analytic Service 等。
- Cloudera Enterprise 包括 Hadoop、Spark、Impala、Kudu 等。
- Huawei FusionInsight 包括 Hadoop、Spark、Storm、MPPDB 等。
- Transwarp 包括 Hadoop、Spark 等,也是国内的 Hadoop 发行版。
- MemSQL 最初是以兼容 MySQL 的分布式内存 OLTP 出现,后来重点专向了 OLAP,它也集成了 Spark 和 Kafka。
- DB2 也提供 Hadoop 等选项。
- MaxCompute 可近似认为是 Cplusplus 版本的 Hadoop。
- 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 年的报告截图:
从图中可以看出,除了 AWS 之外,主要的玩家还是传统产品。
其次,再看看 Gartner 2018 年的报告截图:
从这几年入围的公司的变化中可以看到,云计算产品进步很大,Hadoop 生态的发展出现了 瓶颈。详细的情况可以参阅完整的报告,这里就不再摘录了。
OLAP 产品主要特点
- 数据量很大,几十 TB 都算小的。相对而言,传统 MPP 支持的节点数以及处理的总数据量比 Hadoop 生态要小。
- 数据加载,有些场景是批量加载,有些场景是流式加载。从 OLTP 等经过 ETL 来的数据属于二手数据,通常是批量加载。
- 查询优化,查询可能是相对固定的,也可能是不固定的即席查询。查询大多比较复杂。 与大数据生态的优化器相比,传统 MPP 系统的优化器更为强大。
- 高级分析能力,包括高级数仓函数、机器学习、集成 R 语言等。
- 多种数据源的支持,包括外部数据访问。传统数仓是把大数据作为外部数据源,而大数据则是把传统数仓作为外部数据源。
- 查询响应时间以及入库数据的及时可见性。批量数据加载的数据时效性相对较差,实时数据加载则较好。
- 事务能力,MPP 数据库通常都支持事务,大数据生态的支持较弱,还有一些则不支持事务。
- 存储格式,大都采用列式存储或行列混合存储,并提供高压缩比。
- 系统可用性,包括数据多副本等。传统产品都是主备模式,Haddop 生态依靠 HDFS 的多副本能力。
- 生态完整性,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