【问题标题】:What are maximum limits of Mariadb columnstore?Mariadb 列存储的最大限制是多少?
【发布时间】:2018-05-15 10:18:33
【问题描述】:

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

【问题讨论】:

    标签: mariadb columnstore infinidb


    【解决方案1】:

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

    表的磁盘占用量应与列数成正比。

    与 MariaDB 中的大多数内容一样,列数可能存在硬性限制,但我认为没有理由低于 1000。也许,相反,2 的更大幂。

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

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

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

    列存储在“过滤”方面大放异彩。它在压缩数据方面也非常好,我的 JSON 建议会打败这一点。但现在您需要在速度与空间之间进行权衡,这种权衡是非常特定于数据的。

    您愿意描述一下您提议的数据集吗?

    【讨论】:

      【解决方案2】:

      Columnstore 的列数没有限制,但数据摄取性能并不是最好的 ATM。我们将在最近的将来显着缩短时间。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-05-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多