ClickHouse/docs/ja/sql-reference/table-functions/urlCluster.md
2024-11-18 11:58:58 +09:00

63 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
slug: /ja/sql-reference/table-functions/urlCluster
sidebar_position: 201
sidebar_label: urlCluster
---
# urlCluster テーブル関数
URL からのファイルを指定したクラスタの多くのードから並行して処理することを可能にします。イニシエータではすべてのクラスタ内のードに接続を作成し、URLファイルパス内のアスタリスクを公開し、各ファイルを動的に分配します。ワーカーードではイニシエータに次の処理タスクを問い合わせ、それを処理します。この処理はすべてのタスクが完了するまで繰り返されます。
**構文**
``` sql
urlCluster(cluster_name, URL, format, structure)
```
**引数**
- `cluster_name` — リモートおよびローカルサーバーへのアドレスセットと接続パラメータを構築するために使用されるクラスタの名前。
- `URL` — `GET`リクエストを受け入れることができる HTTP または HTTPS サーバーアドレス。型: [String](../../sql-reference/data-types/string.md)。
- `format` — データの[フォーマット](../../interfaces/formats.md#formats)。型: [String](../../sql-reference/data-types/string.md)。
- `structure` — `'UserID UInt64, Name String'`形式のテーブル構造。カラム名とタイプを決定します。型: [String](../../sql-reference/data-types/string.md)。
**返される値**
定義された`URL`からのデータを指定されたフォーマットと構造で持つテーブル。
**例**
HTTP サーバーが [CSV](../../interfaces/formats.md#csv)形式で応答する`String`と[UInt32](../../sql-reference/data-types/int-uint.md) 型のカラムを含むテーブルの最初の3行を取得します。
1. 標準の Python 3 ツールを使用して基本的な HTTP サーバーを作成し、起動します:
```python
from http.server import BaseHTTPRequestHandler, HTTPServer
class CSVHTTPServer(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-type', 'text/csv')
self.end_headers()
self.wfile.write(bytes('Hello,1\nWorld,2\n', "utf-8"))
if __name__ == "__main__":
server_address = ('127.0.0.1', 12345)
HTTPServer(server_address, CSVHTTPServer).serve_forever()
```
``` sql
SELECT * FROM urlCluster('cluster_simple','http://127.0.0.1:12345', CSV, 'column1 String, column2 UInt32')
```
## URL のグロブ
中括弧 `{ }` 内のパターンはシャードのセットを生成するか、フェイルオーバーアドレスを指定するために使用されます。サポートされているパターンタイプと例については、[remote](remote.md#globs-in-addresses) 関数の説明を参照してください。
パターン内の文字 `|` はフェイルオーバーアドレスを指定するために使用されます。それらはパターンにリストされた順で反復されます。生成されるアドレスの数は [glob_expansion_max_elements](../../operations/settings/settings.md#glob_expansion_max_elements) 設定によって制限されます。
**関連項目**
- [HDFS エンジン](../../engines/table-engines/special/url.md)
- [URL テーブル関数](../../sql-reference/table-functions/url.md)