mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-10-18 06:20:51 +00:00
2.7 KiB
2.7 KiB
machine_translated | machine_translated_rev | toc_priority | toc_title |
---|---|---|---|
true | d734a8e46d |
41 | URL |
URL(URL,フォーマット)
リモートhttp/httpsサーバー上のデータを管理します。 このエンジンは同様です に ファイル エンジン。
Clickhouseサーバーでのエンジンの使用
その format
ClickHouseが使用できるものでなければなりません
SELECT
クエリと、必要に応じて、 INSERTs
. サポートさ
形式.
その URL
統一リソースロケータの構造に準拠する必要があります。 指定されたURLはサーバーを指す必要があります
HTTPまたはHTTPSを使用します。 これには何も必要ありません
サーバーからの応答を取得するための追加のヘッダー。
INSERT
と SELECT
質問への POST
と GET
リクエスト,
それぞれ。 処理のため POST
ご要望遠隔のサーバをサポートする必要があ
チャンク転送エンコード.
HTTP GETリダイレクトホップの最大数を制限するには、次のコマンドを使用します max_http_get_redirects 設定。
例えば:
1. 作成する url_engine_table
サーバー上の表 :
CREATE TABLE url_engine_table (word String, value UInt64)
ENGINE=URL('http://127.0.0.1:12345/', CSV)
2. 標準のPython3ツールを使用して基本的なHTTPサーバーを作成し、 それを開始:
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()
$ python3 server.py
3. 要求データ:
SELECT * FROM url_engine_table
┌─word──┬─value─┐
│ Hello │ 1 │
│ World │ 2 │
└───────┴───────┘
実装の詳細
- 読み書きできる並列
- サポートなし:
ALTER
とSELECT...SAMPLE
オペレーション- インデックス。
- 複製だ