データは以下の2つに分類します。
各ノード専用のデータ
支店情報や顧客情報など支店ごとに情報が異なり、テーブルのデータ構造が各支店で同じものを指します。本テーブルは、シャード表として、中央管理ノードで定義した後、各ノードでパーティションとして定義します。
本モデルでは、支店情報テーブル(branches)や顧客情報テーブル(accounts)をシャード表とし、支店コードをパーティションキーとして支店ごとのパーティション(branches_x, accounts_x)をシャードと紐づけることで、支店ごとのノードにデータを分散しています。
全ノード共通のデータ
支店コードなど、一元管理しているマスター情報のデータを指します。マスター情報を保持するテーブルは、管理ノードをソースとし、各ノードをターゲットとして複製されるレプリケーションテーブルとして定義します。
本モデルでは、銀行コードテーブル(bank_info)、支店コードテーブル(branch_info)をレプリケーションテーブルとして構築しています。