メインコンテンツまでスキップ
メインコンテンツまでスキップ

AzureBlobStorage テーブルエンジン

このエンジンは、Azure Blob Storage エコシステムとの統合を提供します。

テーブルの作成

エンジンパラメータ

  • endpoint — AzureBlobStorage エンドポイント URL とコンテナおよびプレフィックス。オプションで、必要に応じてアカウント名を含めることができます。(http://azurite1:{port}/[account_name]{container_name}/{data_prefix})または、これらのパラメータは、storage_account_url、account_name & container を使用して別々に提供できます。プレフィックスを指定するには、エンドポイントを使用する必要があります。
  • endpoint_contains_account_name - このフラグは、エンドポイントがアカウント名を含むかどうかを指定するために使用されます。これは特定の認証方法にのみ必要です。(デフォルト: true)
  • connection_string|storage_account_url — connection_string にはアカウント名とキーが含まれます(接続文字列を作成)または、ここでストレージアカウント URL とアカウント名およびアカウントキーを別々のパラメータとして提供することもできます(パラメータ account_name & account_key を参照)。
  • container_name - コンテナ名
  • blobpath - ファイルパス。次のワイルドカードをリードオンリー モードでサポートします: *, **, ?, {abc,def} および {N..M} ここで NM は数字、'abc''def' は文字列です。
  • account_name - storage_account_url が使用されている場合、ここでアカウント名を指定できます。
  • account_key - storage_account_url が使用されている場合、ここでアカウントキーを指定できます。
  • format — ファイルの形式
  • compression — サポートされる値: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst。デフォルトでは、ファイルの拡張子によって圧縮を自動的に検出します。(auto に設定するのと同じ)。

ユーザーは、ローカルの Azure Storage 開発のために Azurite エミュレーターを使用できます。詳細はこちらをご覧ください。ローカルの Azurite インスタンスを使用している場合、ユーザーは以下のコマンドの中で http://azurite1:10000http://localhost:10000 に置き換える必要があるかもしれません。ここでは、Azurite がホスト azurite1 で利用可能であると仮定しています。

仮想カラム

  • _path — ファイルへのパス。タイプ: LowCardinality(String)
  • _file — ファイル名。タイプ: LowCardinality(String)
  • _size — ファイルのサイズ(バイト)。タイプ: Nullable(UInt64)。サイズが不明な場合、値は NULL です。
  • _time — ファイルの最終更新時刻。タイプ: Nullable(DateTime)。時刻が不明な場合、値は NULL です。

認証

現在、認証方法は 3 つあります:

  • Managed Identity - endpointconnection_string、または storage_account_url を提供することで使用できます。
  • SAS Token - endpointconnection_string、または storage_account_url を提供することで使用できます。URL に ? が存在することで識別されます。例については azureBlobStorage を参照してください。
  • Workload Identity - endpoint または storage_account_url を提供することで使用できます。use_workload_identity パラメータが設定されている場合、(workload identity) が認証に使用されます。

データキャッシュ

Azure テーブルエンジンは、ローカルディスクでのデータキャッシュをサポートしています。ファイルシステムキャッシュの構成オプションと使用法については、このセクションを参照してください。キャッシュはストレージオブジェクトのパスと ETag に基づいて行われるため、ClickHouse は古いキャッシュ バージョンを読み取ることはありません。

キャッシュを有効にするには、設定 filesystem_cache_name = '<name>'enable_filesystem_cache = 1 を使用します。

  1. ClickHouse 構成ファイルに以下のセクションを追加します:
  1. ClickHouse の storage_configuration セクションからキャッシュ構成(およびキャッシュストレージ)を再利用します。これは、ここで説明されています。

参照

Azure Blob Storage テーブル関数