Mariadb columnstore的最大限制是多少?

时间:2018-05-15 10:18:33

标签: mariadb columnstore infinidb

我想在mariadb columnstore中创建数千行的宽表。我没有找到存储引擎允许的最大列数的任何文档。我还想知道列存储的1000个整数列的性能如何?

2 个答案:

答案 0 :(得分:1)

(警告:这个'答案'是基于我对设计的理解,而不是基于任何事实'。)

表的磁盘占用空间应与列数成比例。

与MariaDB中的大多数事情一样,列数可能存在严格限制,但我认为没有理由将其置于1000以下。或许相反,可能会有更大的2的幂。

当仅引用少量列时,表中的列数应该无关紧要。数据结构的方式应该允许以相对固定的努力量来获取每一列。

对于过滤,我希望所做的努力取决于用于过滤的列数及其分布。如果您的WHERE子句引用了很多列,我就不会期望有良好的性能。

对于任何引擎,拥有大量列并不一定是明智的设计。通常,当您有许多不用于过滤或排序的列(WHEREORDER BY)时,您也可以将它们扔到JSON字符串(或其他结构)中并存储为单个TEXTBLOB列。然后让应用程序解析字符串以获取各列。

Columnstore为'过滤'而闪耀。它在压缩数据方面也非常出色,我的JSON建议会打败这个。但现在你正在进行速度与空间的权衡,这些权衡是非常特定于数据的。

您是否愿意描述您建议的数据集?

答案 1 :(得分:0)

对Columnstore的列数没有限制,但是数据吸收性能并不是最佳的ATM。在不远的将来,我们将大大减少时间。