0

テーブル内では、クラスタキーはシステム生成番号のintカラムです。chrg問題は です。intデータ型として定義されているため、値は最大20億倍しか格納できません。Cassandraテーブル内の整数カラムの置換

テーブルのデータが巨大であるため、次の2か月間の読み込みで、ロードが失敗する列に格納できる最大値に達します。

したがって、最小限の影響でlongintのような列にデータ型を変更する必要があります。

どのようにこれを最小限のダウンタイムで達成できますか?

答えて

0

プライマリキーの種類を変更することはできません。

だから私は考えることができるアプローチの一つは、次のとおりです。

  1. 修正データ型を持つ別のテーブルを作成します。
  2. 両方のテーブルにデータを書き込むようにアプリケーションを変更します。
  3. 次に、spark & cassandraを使用して、古いテーブルのデータを読み取り、新しいテーブルに書き込むことができます。
  4. また、アプリケーションで古いテーブルへの書き込みを停止することもできます。

上記のアプローチでは、大きな影響はないと思います。

関連する問題