Kafkaコネクタの制限
備考
ベータ版
この機能はベータ版です。ワークスペース管理者は、 プレビュー ページからこの機能へのアクセスを制御できます。Databricksのプレビューを管理するを参照してください。
このページでは、Databricks Lakeflow Connectを使用してApache Kafkaからデータを取り込む際の制限事項と考慮事項を示します。
サポートされているデータ
Kafkaコネクタは、1つまたは複数のKafkaトピックからデータを取り込みます。コネクタオプションtopicsまたはtopic_patternを使用して、取り込むトピックを指定します。Kafka接続を通じてアクセス可能なトピックはすべて取り込むことができます。
コネクタ固有の制限事項
- メタデータ列は利用できません :キーと値の列のみが宛先テーブルに書き込まれます。ベータ版では、
topic、partition、offset、timestamp、timestampType、およびheadersを含むKafkaメタデータ列は宛先テーブルで利用できません。 - **追記専用テーブル**:宛先テーブルは追記専用です。アップサートと削除はサポートされていません。
- **パイプラインごとに1つのクラスター**: 各パイプラインは、単一のUnity Catalog接続(1つのKafkaクラスター)を使用します。複数のKafkaクラスターからインジェストするには、個別のパイプラインを作成します。
- サーバレスコンピュートのみ :マネージドKafkaコネクタは、サーバレスコンピュート上でのみ動作します。クラシックコンピュートパイプラインはサポートされていません。
- UI ベースのパイプライン作成はできません :ベータ版では、Databricks UI を介したパイプライン作成はサポートされていません。Declarative Automation Bundles または Databricks ノートブックを使用してください。
- 列の選択または選択解除なし : 特定の列の選択または選択解除は、ベータ版ではサポートされていません。
- UI ベースのパイプライン作成はできません :行レベルのフィルター処理はサポートされていません。
- No SCD type 2 :宛先テーブルは追記専用であるため、SCDタイプ2の履歴追跡はサポートされていません。
- **名前が変更された列のスキーマ進化なし**:列の名前変更は追跡されません。ソースで名前が変更された列は、宛先では新しい列として扱われます。
- **Databricks Workflows を使用したオーケストレーションなし**:パイプラインは継続的に実行されます。ワークフローベースのスケジューリングはサポートされていません。
ファンアウトの制限
備考
プレビュー
この機能はプライベート プレビュー段階です。お試しいただくには、Databricksの担当者にお問い合わせください。
ファンアウトを使用して複数のテーブルにレコードをルーティングする場合、次の制限が適用されます。ファンアウトを構成するには、複数のテーブルへのレコードのルーティング (ファンアウト)を参照してください。
- テーブルオブジェクトではなく、スキーマオブジェクトに
fanout_optionsを構成してください。ファンアウトスキーマオブジェクトにsource_catalogまたはsource_schemaを設定しないでください。 - 各レコードは、その
fanout_by値によって決定される1つの宛先テーブルにルーティングされます。1つのレコードを複数のテーブルに振り分けることはサポートされていません。 - ファンアウトには継続的パイプラインが必要です(
continuous: true)。Triggerパイプラインはサポートされていません。 - 各ルートに適用できる変換は1つまでであり、
format: JSONを使用する必要があります。AVROおよびPROTOBUF変換はファンアウトでサポートされていません。 fanout_by式はSTRINGに解決し、少なくとも1つの入力列を参照し、決定論的である必要があります。ユーザー定義関数(UDF)はサポートされていません。ルーティングキーはヌルであってはなりません。- 解決された
fanout_by値は、引用符やサニタイズなしで宛先テーブル名のセグメントとしてそのまま使用されるため、有効な引用符なしのテーブル識別子である必要があります。スペース、ドット、または引用符なしの識別子では無効なその他の文字を含む値は、書き込みに失敗します。完全に数字である値(例:123)も同様です。値に文字またはアンダースコアも含まれている場合、2024_eventsのように先頭の数字が許可されます。 fanout_byKafkakey列とvalue列を含む生のソースレコードに対して評価されます。value列はバイナリなので、フィールドを抽出する前に文字列にキャストします(たとえば、cast(value as string):event_type::string)。ルーティング後にfanout_options変換が実行されるため、fanout_byが参照する列を生成することはできません。