ストリーミング インジェストとスキーマ変更
クラスター ノードは、 ストリーミング インジェストによってデータを取得するデータベースのスキーマをキャッシュし、パフォーマンスとリソースの使用を向上させます。 ただし、スキーマが変更されると、更新が遅延する可能性があります。
スキーマの変更とストリーミング インジェストが同期されていない場合は、スキーマ関連のエラーや、テーブル内の不完全で歪んだデータなどのエラーが発生する可能性があります。
この記事では、一般的なスキーマの変更について説明し、これらの変更中のストリーミング インジェストに関する問題を回避するためのガイダンスを提供します。
スキーマ変更
スキーマ変更の主な例を次に示します。
- テーブルの作成
- テーブルの削除
- テーブルへの列の追加
- テーブルからの列の削除
- テーブルの列を再入力する
- テーブルの列の名前を変更する
- 事前に作成されたインジェスト マッピングを追加する
- 事前に作成されたインジェスト マッピングの削除
- ポリシーの追加、削除、または変更
ストリーミング インジェストを使用してスキーマの変更を調整する
クラスターがオンラインの間、スキーマ キャッシュは保持されます。 スキーマの変更がある場合、システムはキャッシュを自動的に更新しますが、この更新には数分かかることがあります。 自動更新に依存している場合は、調整されていないインジェスト エラーが発生する可能性があります。
クラスター ノードのスキーマ キャッシュを明示的にクリアすることで、伝達遅延の影響を軽減できます。 ストリーミング インジェストのフローとスキーマの変更が調整されている場合は、エラーとそれに関連するデータの歪みを完全に排除できます。
ストリーミング インジェスト フローとスキーマの変更を調整するには:
- ストリーミング インジェストを停止します。
- 未処理のストリーミング インジェスト要求がすべて完了するまで待ちます。
- スキーマの変更を行います。
- 1 つまたは複数の .clear cache ストリーミング インジェスト スキーマ コマンドを発行します。
- 成功するまで繰り返し、コマンドの出力ですべての行が成功を示します
- ストリーミング インジェストを再開します。
Note
カスタム インジェスト用のアプリケーションを構築した場合は、設定された期間再試行するか、キューに置かれたインジェスト方法を使用して失敗した要求からデータをリダイレクトすることで、スキーマ関連のエラーを管理することをお勧めします。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示