url テーブル関数
url
関数は、指定された format
と structure
を持つ URL
からテーブルを作成します。
url
関数は、URL テーブルのデータに対する SELECT
および INSERT
クエリで使用できます。
構文
パラメータ
URL
—GET
またはPOST
リクエストを受け付ける HTTP または HTTPS サーバーアドレス(それぞれSELECT
またはINSERT
クエリ用)。タイプ: String。format
— データの形式。タイプ: String。structure
— テーブル構造の'UserID UInt64, Name String'
形式。カラムの名前とタイプを決定します。タイプ: String。headers
- HTTP コール用のヘッダーを'headers('key1'='value1', 'key2'='value2')'
形式で設定します。
返される値
指定された形式と構造、および定義された URL
からのデータを持つテーブル。
例
String
および UInt32 タイプのカラムを含むテーブルの最初の 3 行を、CSV 形式で応答する HTTP サーバーから取得する。
URL
からテーブルにデータを挿入する:
URL のグロブ
中括弧 { }
内のパターンは、シャードのセットを生成するためやフェイルオーバーアドレスを指定するために使用されます。サポートされているパターンタイプと例は、remote 関数の説明で確認できます。
パターン内の文字 |
はフェイルオーバーアドレスを指定するために使用されます。これらは、パターンにリストされた順序で繰り返されます。生成されるアドレスの数は、glob_expansion_max_elements 設定によって制限されます。
仮想カラム
_path
—URL
へのパス。タイプ:LowCardinality(String)
。_file
—URL
のリソース名。タイプ:LowCardinality(String)
。_size
— リソースのサイズ(バイト単位)。タイプ:Nullable(UInt64)
。サイズが不明な場合、値はNULL
です。_time
— ファイルの最終更新時刻。タイプ:Nullable(DateTime)
。時刻が不明な場合、値はNULL
です。_headers
- HTTP 応答ヘッダー。タイプ:Map(LowCardinality(String), LowCardinality(String))
。
Hiveスタイルのパーティショニング
use_hive_partitioning
設定が 1 に設定されていると、ClickHouse はパス (/name=value/
) における Hiveスタイルのパーティショニングを検出し、クエリ内でパーティションカラムを仮想カラムとして使用できるようにします。これらの仮想カラムは、パーティションされたパスでの同じ名前を持ちますが、_
で始まります。
例
Hiveスタイルのパーティショニングを使用して作成された仮想カラムを使用する。
ストレージ設定
- engine_url_skip_empty_files - 読み取り中に空のファイルをスキップすることを許可します。デフォルトでは無効です。
- enable_url_encoding - URI におけるパスのデコーディング/エンコーディングを有効/無効にします。デフォルトでは有効です。
関連項目