Snowflake High Performance connector for Kafka¶
このトピックでは、|KAFKAOFHP|の基本概念、ユースケース、利点、主な機能、および制限について説明します。
注釈
|KAFKAOFHP|は、Kafkaトピックからデータを読み取り、そのデータをSnowflakeテーブルにロードする :emph:` シンクコネクタ` です。Kafka Connectとそのフレームワークの詳細については、 Apache KafkaおよびKafka Connectフレームワーク をご参照ください。
利点¶
|KAFKAOFHP|は、ほぼリアルタイムの分析情報を必要とする現代のデータ集約型組織向けに設計された、Snowflakeの 高性能Snowpipe Streamingアーキテクチャ を活用します。この次世代アーキテクチャは、Snowflakeへのリアルタイムインジェスチョンのスループット、効率、柔軟性を大幅に向上させます。
高性能アーキテクチャには、いくつかの重要な利点があります。
優れたスループットとレイテンシ:テーブルあたり最大10GB/秒の取り込み速度をサポートするように設計されており、エンドツーエンドの取り込みからクエリまでのレイテンシは5~10秒以内で、ほぼリアルタイムの分析が可能になります。
請求の簡略化:透明性が高くスループットに基づいて請求を行うため、コストの予測と理解がしやすくなります。
パフォーマンスの強化:以前の実装と比較して、クライアント側のパフォーマンス向上とリソース使用量の削減を実現するRustベースのクライアントコアを使用します。
同時進行の変換:PIPEオブジェクト内のCOPYコマンド構文を使用して、取り込み中にデータのクレンジングと再形成をサポートし、データがターゲットテーブルに到達する前に変換できるようにします。
サーバー側のスキーマ検証:PIPEオブジェクトを介してスキーマ検証をクライアント側からサーバー側に移動するため、データの品質を確保しクライアントの複雑さを軽減します。
事前クラスタリング機能:ターゲットテーブルにクラスタリングキーが定義されている場合は、インジェスチョン中にデータをクラスタリングできるため、取り込み後のメンテナンスを必要とせずにクエリパフォーマンスが向上します。
コネクタは、インジェスチョンを管理するための中心コンポーネントとしてSnowflake PIPE オブジェクトを使用します。PIPEオブジェクトは、すべてのストリーミングデータのエントリポイントおよび定義レイヤーとして機能し、データがターゲットテーブルにコミットされる前にどのように処理、変換、検証されるかを定義します。コネクタがテーブルとパイプで動作する方法の詳細については、 コネクタがテーブルとパイプで動作する方法 をご参照ください。
コネクタのバージョンの選択¶
KafkaコネクタはKafka Connectクラスターで実行され、Kafkaトピックからデータを読み取り、Snowflakeテーブルに書き込みます。
Snowflakeは、次の2つのバージョンのコネクタを提供します。どちらのバージョンのコネクタも、KafkaからSnowflakeにデータをストリーミングするコア機能は同じです。
Confluent version of the connector
Kafka向け高性能Snowflakeコネクタは、Confluent Cloudではまだ利用できません。Confluent Cloudを使用している場合は、カスタムプラグインコネクタとしてコネクタを手動でインストールする必要があります。
The Confluent version is packaged as a zip file for installation through Confluent Hub or Confluent Control Center and includes all external libraries required to run the connector.
Choose this version if you're using the Confluent Platform or Confluent Cloud.
Confluentバージョンのコネクタを入手してインストールするには、Snowflakeサポートにお問い合わせください。
For more information, see Kafka Connect.
OSS Apache Kafka version of the connector
オープンソースソフトウェア( OSS )Apache Kafkaパッケージ から入手可能です。
The Apache version is distributed as a standard fat JAR file and requires manual installation into your Apache Kafka Connect cluster. This version requires Bouncy Castle cryptography libraries that must be downloaded separately.
For more information, see Apache Kafka.
Apache Iceberg™ テーブルでのコネクタの使用¶
コネクタは、Snowflakeが管理する Apache Iceberg™テーブル にデータを取り込むことができます。Icebergテーブルの取り込みにKafkaコネクタを構成する前に、Icebergテーブルを作成する必要があります。詳細については、 インジェスチョン用の Apache Iceberg™ テーブルを作成する をご参照ください。
制限事項¶
|KAFKAOFHP|には、以下の制限があります。
- Apache Iceberg™ テーブルとスキーマの進化
コネクタは Apache Iceberg™ テーブルのスキーマ進化をサポートしません。
- バージョン3.x以前の既存パイプラインの移行
The connector does not support migration of the existing pipelines from version 3.x and earlier. You must manually migrate the existing pipelines to the new connector. Ensure that existing pipelines don't rely on any features that are not yet available with this connector.
- 単一メッセージ変換(SMTs):
コミュニテ コンバーターを使用する場合、ほとんどの単一メッセージ変換(SMTs)がサポートされますが、現在サポートされていない
regex.routerは例外です。- Not all broken records are sent to Dead Letter Queue (DLQ) by the connector
errors.tolerance=allおよびerrors.deadletterqueue.topic.nameが構成されている場合、コネクタは 最大1回 の配信を保証します。変換できない記録のみがKafka Connectによって DLQ に送信されます。Snowflakeの取り込みに失敗した記録はそこにルーティングされません。Snowpipe Streamingは、失敗した記録は検出できますが、特定の記録は検出できません。- インジェストに失敗した破損した記録は、手動で再試行する必要があります
When
errors.tolerance=noneandrows_error_countincreases, the connector task fails. To retry broken records, review the channel history to find the broken records. For more information about troubleshooting broken records and ingestion errors see error handling. You can also use gap finding technique described in メタデータオフセットを使用したエラーの検出と復旧. Kafka offset information needed to use this technique is available in theRECORD_METADATAcolumn.
コネクタのフォールトトレランスの制限¶
Kafkaトピックは、ストレージスペースまたは保持時間の制限で構成できます。
保持時間を超えてシステムがオフラインしている場合、期限切れの記録はロードされません。同様に、Kafkaのストレージスペースの制限を超えると、一部のメッセージは配信されません。
Kafkaトピックのメッセージが削除された場合、これらの変更はSnowflakeテーブルに反映されません。
SMTsの詳細については、 Confluent CloudまたはConfluent Platform向けKafka Connect単一メッセージ変換の参照情報 をご参照ください。
Snowflake support for the connector¶
The following table describes the supported versions and information about pre-release and release candidates.
リリースシリーズ |
ステータス |
メモ |
|---|---|---|
4.x.x |
プライベートプレビュー |
Early access. Currently the migration from 3.x and 2.x is not supported. |
3.x.x |
正式にサポート |
最新バージョンで、強くお勧めします。 |
2.x.x |
正式にサポート |
アップグレードをお勧めします。 |
1.x.x |
サポート対象外 |
以下の機能はサポートされていません。
Breaking changes in the Preview version¶
See the release notes for the Preview versions for a list of breaking changes
次のステップ¶
Review how the connector works topic for more information about how the connector works with tables and pipes. . Review Snowflake High Performance connector for Kafka のタスクの設定 topic for the steps to set up the Snowflake High Performance connector for Kafka.