ExternalDistributed
ExternalDistributed
エンジンは、リモートサーバーのMySQLまたはPostgreSQLに保存されたデータに対してSELECT
クエリを実行することを可能にします。シャーディングが可能なように、引数としてMySQLまたはPostgreSQLエンジンを受け入れます。
テーブルの作成
CREATE TABLEクエリの詳細説明を参照してください。
テーブルの構造は、元のテーブルの構造と異なる場合があります:
- カラム名は元のテーブルと同じである必要がありますが、これらのカラムの一部のみを使用することができ、順序は任意です。
- カラムの型は、元のテーブルのものと異なる場合があります。ClickHouseは、値をClickHouseのデータ型にキャストしようとします。
エンジンパラメータ
engine
— テーブルエンジンMySQL
またはPostgreSQL
。host:port
— MySQLまたはPostgreSQLサーバーのアドレス。database
— リモートデータベース名。table
— リモートテーブル名。user
— ユーザー名。password
— ユーザーパスワード。
実装の詳細
複数のレプリカをサポートし、レプリカは |
で、シャードは ,
で区切る必要があります。例えば:
レプリカを指定する場合、読み取り時に各シャードの利用可能なレプリカの1つが選択されます。接続が失敗した場合は次のレプリカが選択され、すべてのレプリカについて同様に続けられます。すべてのレプリカに対する接続試行が失敗した場合、同じ方法で数回試行が繰り返されます。
各シャードに対して任意の数のシャードと任意の数のレプリカを指定できます。
関連情報