【问题标题】:Altering a Cassandra UDT column更改 Cassandra UDT 列
【发布时间】:2020-10-09 20:56:21
【问题描述】:

我有一个 Cassandra UDT 列,它有大约 10 个属性,现在我们计划再添加 3 个属性。我想知道如果我在具有大量数据的高级环境中更改 UDT 类型,它是否会表现良好。

【问题讨论】:

    标签: cassandra user-defined-types alter


    【解决方案1】:

    更改 UDT 与更改表相同,只是您无法删除现有 UDT,除非您删除所有依赖的表。您也不能更改列的类型。以下是如何添加新 udt 列的查询。

    alter TYPE commentmetadata ADD columnname <type>;
    

    【讨论】:

      【解决方案2】:

      应该是安全的。 只是一些预防措施:

      1. 不要在混合版本的 Cassandra 集群中运行。
      2. 不要尝试从多个客户端(驱动程序)同时进行相同的架构更改

      【讨论】:

        【解决方案3】:

        使用 UDT 集合数据类型更改表时的其他指针:

        • 切勿在集合中插入超过 20 亿个项目,因为只能查询该数字。
        • 地图集合的最大键数为 65,535。
        • 列表或地图集合中项目的最大大小为 2GB。
        • 集合中项目的最大大小为 65,535 字节。
        • 保持集合较小,以防止查询期间出现延迟。
        • 集合不能被“切片”; Cassandra 会完整读取集合,从而影响性能。

        点击here 了解更多信息。

        [Alex Ott] MAP 和 LIST 限制取决于版本。 v3.0+ 支持 65,535 字节,而较低版本限制为 64,000 字节。修复版本ticket。

        【讨论】:

        • 抱歉,回答的意义何在?问题是关于 UDT,而不是集合......此外,限制取决于版本,并且项目“集合中项目的最大大小为 65,535 字节”。在 2020 年 (issues.apache.org/jira/browse/CASSANDRA-10374) 不正确,这只是文档中的错误...
        猜你喜欢
        • 1970-01-01
        • 2018-06-17
        • 2018-08-23
        • 1970-01-01
        • 1970-01-01
        • 2015-09-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多