次の方法で共有


ストリーミング インジェストとスキーマ変更

クラスター ノードは、 ストリーミング インジェストによってデータを取得するデータベースのスキーマをキャッシュし、パフォーマンスとリソースの使用を向上させます。 ただし、スキーマが変更されると、更新が遅延する可能性があります。

スキーマの変更とストリーミング インジェストが同期されていない場合は、スキーマ関連のエラーや、テーブル内の不完全で歪んだデータなどのエラーが発生する可能性があります。

この記事では、一般的なスキーマの変更について説明し、これらの変更中のストリーミング インジェストに関する問題を回避するためのガイダンスを提供します。

スキーマ変更

スキーマ変更の主な例を次に示します。

ストリーミング インジェストを使用してスキーマの変更を調整する

クラスターがオンラインの間、スキーマ キャッシュは保持されます。 スキーマの変更がある場合、システムはキャッシュを自動的に更新しますが、この更新には数分かかることがあります。 自動更新に依存している場合は、調整されていないインジェスト エラーが発生する可能性があります。

クラスター ノードのスキーマ キャッシュを明示的にクリアすることで、伝達遅延の影響を軽減できます。 ストリーミング インジェストのフローとスキーマの変更が調整されている場合は、エラーとそれに関連するデータの歪みを完全に排除できます。

ストリーミング インジェスト フローとスキーマの変更を調整するには:

  1. ストリーミング インジェストを停止します。
  2. 未処理のストリーミング インジェスト要求がすべて完了するまで待ちます。
  3. スキーマの変更を行います。
  4. 1 つまたは複数の .clear cache ストリーミング インジェスト スキーマ コマンドを発行します。
    • 成功するまで繰り返し、コマンドの出力ですべての行が成功を示します
  5. ストリーミング インジェストを再開します。

Note

カスタム インジェスト用のアプリケーションを構築した場合は、設定された期間再試行するか、キューに置かれたインジェスト方法を使用して失敗した要求からデータをリダイレクトすることで、スキーマ関連のエラーを管理することをお勧めします。