当前位置: 代码迷 >> 综合 >> TPCH10G 测试:OceanBase TiDB Oracle SPL
  详细解决方案

TPCH10G 测试:OceanBase TiDB Oracle SPL

热度:3   发布时间:2023-12-09 16:50:30.0

前几天听说 OceanBase 打榜了 TPCH 的第一名,之后又看到这样一个测试报告《OceanBase 开源版与 TiDB 对比测试报告》。

先点评一下这个测试报告:

1. 坦白地说,这个测试还不太专业,并不能比出分布式大数据计算的关键能力。TPCH10G 的数据量相对于这些机器内存实在太小了(单机内存都超过数据量 18 倍以上)。这种情况下,再加上预热,数据已经全部缓存到内存了,列存基本不起作用,也就谈不上对比列存引擎的能力了。而且,数据量太小,会被作为小表复制到集群中的每个节点,分布式计算中重要的 Shuffle 能力也无法被考查到,网络负担仅仅是些汇总结果的传输,而 TPCH 的结果集都很小,这个时间可以忽略不计。

2. 目前这个数据量对比的是纯 CPU 计算能力,本质上是在对比 SQL 优化引擎的能力。如果直接按 SQL 书写的逻辑去计算,那计算量通常会很大,也就会很慢了。但数据库都会有优化,不会严格按 SQL 的逻辑来计算,会在不改变运算目标时尽量采用更低复杂的算法,就可能跑得更快了。从这个测试结果上看,TiDB 的 SQL 优化引擎要明显强过 OceanBase。

以往的经验,Oracle 的 SQL 优化引擎做得很好。如果不能在列存和集群上占便宜的话,很多专业 OLAP 数据库都跑不过 Oracle。而当前这个场景就是这样,数据量太小可以全部缓存进单机的内存,列存失去意义,集群也沦为简单地用多机分摊运算。所以我们猜测 Oracle 会比这两个都快,单机的 Oracle 甚至有可能跑过集群的 OceanBase。

之前我们还用

  相关解决方案