Kafkaコネクタの管理

このトピックでは、Kafkaコネクタの管理に関連する管理タスクについて説明します。

このトピックの内容:

Kafkaコネクタで使用されるSnowflakeオブジェクトの削除

Kafkaコネクタを使用してSnowflakeテーブルにデータをロードする予定がなくなった場合は、Kafkaをシャットダウンして、コネクタで使用されているSnowflakeオブジェクトをドロップできます。

コネクタは、次のタイプのSnowflakeオブジェクトを使用してデータを取り込みます。

  • 名前付き内部ステージ

  • パイプ

  • テーブル

このセクションでは、Kafkaコネクタで使用されるSnowflakeオブジェクトを見つけてドロップする手順を説明します。

ステージのドロップ

コネクタは、Kafkaトピックごとに1つの名前付き内部ステージを作成します。ステージ名の形式は次のとおりです。

SNOWFLAKE_KAFKA_CONNECTOR_コネクタ名_STAGE_テーブル名

各内部ステージには、テーブルにロードされるファイルだけでなく、Kafkaからテーブルへの行の正確な1回の配信を保証するために使用される「状態」情報も保存されることに注意してください。

ステージとその状態情報が保存されている場合、コネクタが停止して再起動すると、コネクタは中断した時点から自動的に再開を試みます。ただし、ステージが削除されると、コネクタは中断したところから再開できず、1回限りの配信は保証されません。

Kafkaコネクタで使用されるステージをドロップするには:

  1. ステージの所有者(つまり、ステージに対する OWNERSHIP 権限を持つロール)として SHOW STAGES を実行して、ステージの名前を見つけます(これは、Kafkaコネクタを実行するためにKafka構成ファイルで定義されているユーザーの既定のロールである必要があります)。

  2. DROP STAGE を実行して、システムから削除する各ステージをドロップします。

パイプのドロップ

コネクタは、Kafkaトピックの パーティション ごとに1つのパイプを作成します。パイプ名の形式は次のとおりです。

SNOWFLAKE_KAFKA_CONNECTOR_コネクタ名_PIPE_テーブル名_パーティション数

Kafkaコネクタが使用するパイプをドロップするには:

  1. パイプの所有者(つまり、パイプに対する OWNERSHIP 権限を持つロール)として SHOW PIPES を実行して、パイプの名前を見つけます(これは、Kafkaコネクタを実行するためにKafka構成ファイルで定義されているユーザーの既定のロールである必要があります)。

  2. DROP PIPE を実行して、システムから削除する各パイプをドロップします。

テーブルのドロップ

ターゲットテーブルにロードされたデータが不要になった場合、これらの表をドロップすることもできます。

Kafka構成プロパティsnowflake.topic2table.map パラメーターを使用してKafkaトピックをテーブルにマップしなかった場合、Kafkaコネクタはトピック名を使用して新しいテーブルを作成しました。テーブル名は大文字ですが、トピック名がSnowflakeオブジェクトの命名規則に違反しない限り、それ以外はトピック名と同じです。例えば、Snowflakeは temperature_data という名前のKafkaトピックのテーブル名 TEMPERATURE_DATA を作成します。

Kafkaコネクタが使用するテーブルをドロップするには:

  1. テーブルの所有者(つまり、テーブルに対する OWNERSHIP 権限を持つロール)として SHOW TABLES を実行して、テーブルの名前を見つけます(これは、Kafkaコネクタを実行するためにKafka構成ファイルで定義されているユーザーの既定のロールである必要があります)。

  2. DROP TABLE を実行して、システムから削除する各テーブルをドロップします。