【问题标题】:Cassandra 1.2 : Updating type in primary Key CQL3Cassandra 1.2:更新主键 CQL3 中的类型
【发布时间】:2013-12-19 04:28:04
【问题描述】:

我们目前有一个如下定义的表

create table tableA(id int,
                    seqno int,                    
                    data text,
                    PRIMARY KEY((id), seqno))
                    WITH CLUSTERING ORDER BY (seqno DESC);

我们需要将 id 列的类型从 int 更新为 text。我们想知道这两种方法中哪一种是最可取的。

  1. ALTER TABLE tableA ALTER id TYPE varchar; (命令成功,但是我们在读取数据时遇到问题。这是因为 ALTER 表没有更新 id 列的底层存储吗?)

  2. 复制到/从旧表/新表。这可行,但我们遇到了 RPC 超时问题(我们可以更改),但这对跨集群的表来说是个坏主意吗?

我们检查了在线文档,这些只是我们可以找到的 2 个选项。还有其他选择吗??

谢谢 保罗

【问题讨论】:

    标签: cassandra datastax-enterprise


    【解决方案1】:

    我会说选项 1 并不受支持。如果您的整数没有映射到实际的字符串,您将遇到问题,您可能会看到密钥验证错误。

    对于选项 2,您可能只需要为每次读取/写入复制较小的数据块。

    【讨论】:

      猜你喜欢
      • 2015-10-28
      • 2023-03-31
      • 2013-08-04
      • 1970-01-01
      • 2013-05-15
      • 2013-09-04
      • 2017-06-15
      • 1970-01-01
      • 2013-05-22
      相关资源
      最近更新 更多