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