4.3.6.2. ホットスキーマの更新
ホットスキーマの更新では、アプリケーションとデータ処理のダウンタイムは必要ありません。この手順自体は、コールドスキーマ更新の場合よりもはるかに簡単です。
- ソーステーブルスキーマにすべての変更を適用します。
-
パラメーター
@capture_instance
の一意の値でsys.sp_cdc_enable_table
の手順を使用して、更新ソーステーブルの新しいキャプチャーテーブルを作成します。 -
Debezium が新しいキャプチャーテーブルからストリーミングを開始する場合、パラメーター
@capture_instance
を古いキャプチャーインスタンス名に設定したsys.sp_cdc_disable_table
ストアドプロシージャーを使用すると、古いキャプチャーテーブルからストリーミングを削除できます。
ホットスキーマの更新には、欠点が 1 つあります。データベーススキーマの更新と新しいキャプチャーインスタンスの作成の間には、期間があります。この期間中に到達するすべての変更は、古い構造を持つ古いインスタンスによってキャプチャーされます。たとえば、これは、新たに追加された列に、この時間内に生成された変更イベントには、その新しい列のフィールドがまだ含まれないことを意味します。アプリケーションがこのような移行期間を許容しない場合は、コールドスキーマの更新に従うことを推奨します。