在表中群集键是一个int列,是系统生成的编号-CHRG问题是由于其定义为INT Datatype,它只能存储价值超过200亿美元。
并且由于表的数据很大。在接下来的两个月中,我们将点击最大值,该值可以存储在列中,然后负载将失败。
因此,要求是将列的数据类型更改为影响最小的longint。
。如何使用最小的停机时间来实现?
您无法更改主键的类型。
所以我能想到的一种方法是:
- 使用修改的数据类型创建一个单独的表。
- 修改您的应用程序以将数据写入两个表。
- 然后您可以使用Spark&Cassandra从旧表中读取数据并将其写入新表。
- 然后在您的应用程序中再次可以停止写入旧表。
使用上述方法,我认为您不会产生重大影响。