替换Cassandra表

时间:2017-06-29 05:10:51

标签: cassandra data-modeling cassandra-2.0 spark-cassandra-connector cassandra-2.1

在表中,集群键是一个int列,它是系统生成的数字 - chrg Issue is 由于它定义为int数据类型,因此它只能存储超过20亿的值。

由于表的数据很大......在接下来的两个月加载时,我们将达到可以存储在列中的最大值,超出此列将导致负载失败。

因此,要求是将列的数据类型更改为longint,而影响最小。

如何以最短的停机时间实现这一目标?

1 个答案:

答案 0 :(得分:0)

您无法更改主键的类型。

所以我能想到的一种方法是:

  1. 使用修改的数据类型创建单独的表。
  2. 修改您的应用程序以将数据写入两个表。
  3. 然后你就可以使用spark& cassandra从旧表中读取数据并将其写入新表。
  4. 然后在您的应用程序中,您可以停止写入旧表。
  5. 通过上述方法,我认为您不会产生重大影响。