FEDERATEDストレージエンジンを使用すると、レプリケーションやクラスタリング技術を使用せずに、PolarDB for MySQLクラスターまたはMySQL Community Editionデータベースのデータにリモートアクセスできます。 ローカルFEDERATEDテーブルにはデータが格納されません。 ローカルFEDERATEDテーブルを照会すると、リモートテーブルからデータが抽出されます。 PolarDB for MySQLまたはMySQL Community Editionのストレージエンジンを使用してテーブルを作成する場合、テーブルはテーブル定義と関連データで構成されます。 FEDERATEDテーブルを作成すると、共通テーブルと同じテーブル定義が使用されますが、データの物理ストレージはリモートサーバーに実装されます。
FEDERATEDテーブルは2つの要素で構成されます。
リモートのPolarDB for MySQLクラスターまたはMySQL Community Editionサーバー。このサーバーには、テーブル定義 (MySQLデータディクショナリに格納されている) で構成され、ローカルテーブルに関連付けられているテーブルが含まれています。 リモートテーブルは、MyISAM、InnoDB、CSVなど、リモートサーバーでサポートされている任意のタイプにすることができます。
リモートテーブルと同じテーブル定義を使用するテーブルを含むローカルクラスター。 テーブル定義はMySQLデータ辞書に保存されます。 ローカルクラスターにはデータファイルが含まれていません。 テーブル定義には、リモートテーブルを指す接続文字列が含まれています。
PolarDB for MySQLクラスターのFEDERATEDテーブルでSQL文を実行すると、ローカルのPolarDB for MySQLクラスターからデータファイルが挿入されます。 データファイルを更新または削除する操作は、リモートのPolarDB for MySQLクラスターまたはMySQL Community Editionサーバーに送信されて実行され、更新されたデータファイルまたは返された行がFEDERATEDテーブルに送り返されます。