メインコンテンツへスキップ
このエンジンは Azure Blob Storage エコシステムと連携し、ストリーミングデータをインポートできます。

テーブルの作成

エンジンパラメータ AzureQueue のパラメータは、AzureBlobStorage テーブルエンジンでサポートされているものと同じです。パラメータについては、こちらを参照してください。 AzureBlobStorage テーブルエンジンと同様に、ローカルで Azure Storage を開発する際には Azurite エミュレータを使用できます。詳細はこちらを参照してください。

設定

サポートされている設定のほとんどは S3Queue テーブルエンジンと同じですが、s3queue_ プレフィックスは付きません。設定の完全な一覧を参照してください。 テーブルに対して設定されている項目の一覧を取得するには、system.azure_queue_settings テーブルを使用します。24.10 から利用できます。 以下は、AzureQueue でのみ使用でき、S3Queue には適用されない設定です。

after_processing_move_connection_string

宛先が別の Azure コンテナーである場合に、正常に処理されたファイルの移動先として使用する Azure Blob Storage の接続文字列。 設定可能な値:
  • String。
デフォルト値: 空文字列。

after_processing_move_container

宛先が別の Azure コンテナーである場合に、正常に処理されたファイルの移動先となるコンテナーの名前。 設定可能な値:
  • String.
デフォルト値: 空文字列。 例:

AzureQueue テーブルエンジン での SELECT

AzureQueue テーブルに対する SELECT クエリは、デフォルトで禁止されています。これは、データは一度読み取るとキューから削除されるという、一般的なキューの動作に従うためです。SELECT が禁止されているのは、意図しないデータ損失を防ぐためです。 ただし、場合によっては直接 SELECT したいこともあります。その場合は、設定 stream_like_engine_allow_direct_selectTrue にする必要があります。 AzureQueue engine には、SELECT クエリ向けの特別な設定 commit_on_select があります。読み取り後もキュー内のデータを保持するには False に設定し、削除するには True に設定します。

説明

SELECT はストリーミングインポートにはあまり適していません (デバッグ用途を除く) 。各ファイルは一度しかインポートできないためです。代わりに、materialized view を使ってリアルタイムの処理パイプラインを作成するほうが実用的です。手順は次のとおりです。
  1. エンジンを使用して、Azure Blob Storage 内の指定したパスからデータを読み込むためのテーブルを作成し、それをデータストリームとして扱います。
  2. 必要な構造を持つテーブルを作成します。
  3. エンジンからのデータを変換し、あらかじめ作成したテーブルに書き込む materialized view を作成します。
MATERIALIZED VIEW でそのエンジンを参照すると、バックグラウンドでデータの収集が開始されます。 エンジンの引数は AzureQueue(connection_string, container_name, blobpath, format[, compression]) の形式です。 例:

仮想カラム

  • _path — ファイルのパス。
  • _file — ファイル名。
仮想カラムの詳細については、こちらを参照してください。

イントロスペクション

テーブル設定 enable_logging_to_queue_log=1 で、このテーブルのログ記録を有効にします。 イントロスペクション機能は S3Queue テーブルエンジン と同じですが、いくつか異なる点があります。
  1. server バージョンが >= 25.1 の場合、queue のインメモリ状態には system.azure_queue_metadata_cache を使用します。古いバージョンでは system.s3queue_metadata_cache を使用します (これには azure テーブルの情報も含まれます) 。
  2. メインの ClickHouse 設定で system.azure_queue_log を有効にします。例:
この永続テーブルには、system.s3queue_metadata_cache と同じ情報が含まれていますが、対象は処理済みおよび失敗したファイルです。 このテーブルの構造は次のとおりです。
例:
最終更新日 2026年7月2日