ハイブリッド主権:安全なトンネルを通じたスプリットブレインデータベース構築

ハイブリッド主権:安全なトンネルを通じたスプリットブレインデータベース構築
あなたのアプリは一つのデータベースを見ています。監査人にはコンプライアンスの傑作が映る。アプリケーションコードに一行も触れずに、カラム認識プロキシを使ってクラウドとローカルラックにまたがる単一テーブルを分割する方法をご紹介します。
コンプライアンスの罠がエンジニアリングチームを包囲
グローバルなソフトウェア配信の現代において、エンジニアリングチームは二つの対立する要求の間に閉じ込められています。一方では、ビジネスはハイパースケーラビリティ、グローバルリードレプリカ、パブリッククラウドの弾力性を求めます。もう一方では、規制当局は絶対的な管理、厳格なデータ居住性、ローカルプライバシーの強制を求めます。
この緊張はもはや理論的なものではありません。数字は明白です。2011年から2025年までに、データ保護法を有する国の数は76か国から120か国以上に増加し、さらに24の枠組みが進行中です。最近のBARCの調査では、300社の企業のうち69%が、新しい法的・規制要件をクラウドアーキテクチャの変更の主な推進力としています。一方、19%の企業はオンプレミス投資を増やす計画を立てており、これは過去10年のクラウド移行の流れの大逆転です。
これを誤ると罰則は抽象的なものではありません。2024年だけで、グローバルなプライバシー関連の罰金は12億ドルに達しました。GDPR違反一つで€2000万または世界売上高の4%の罰金が科される可能性があります。
長年、業界の答えはブルートフォースでした。特定の地域向けに完全に孤立したインフラを構築するか(クラウドコスト効率を放棄)、複雑な暗号化スキームでデータを隠し、パフォーマンスを遅延させクエリ能力を損なうかのいずれかです。
新たな道が現れました。それは、データベースの物理的な記憶域を意図的に破壊しつつ、アプリケーション層にはシームレスな一体感を維持する方法です。これがハイブリッド主権です。スプリットブレインデータベースを故障モードとしてではなく、意図的かつ高度に設計されたコンプライアンスメカニズムとして構築します。
1. 主権データベースアーキテクチャの構造
データ主権は、デジタルデータが収集された国や地域の法律とガバナンス構造の下にあるという原則です。この概念を積極的に体系化した枠組みには次のようなものがあります:
- EU GDPR — データの取り扱い、処理、保護に厳格なルールを課し、EU内に保存する必要はありませんが、十分に同等の保護がない国への転送を制限します。
- カリフォルニア CCPA — 一つの国の中でもコンプライアンスの複雑さを示し、州レベルのプライバシー法がアーキテクチャに影響を与えています。
- インド DPDPA規則、2025年 — 2025年11月14日に通知され、長い準備期間を経て、段階的に18ヶ月のコンプライアンス期限を設けています。越境データ転送は一般的に許可されますが、インド中央政府は特定のデータカテゴリの国外流出を制限する明示的な権限を保持しています。特に、重要なデータ義務者(大規模プラットフォーム)に対しては、インド国内にのみ保存することが求められます。主要な運用義務のコンプライアンス期限は2027年5月です。
- カナダ PIPEDA / ケベック法25 — ケベック州の法25は、北米で最も厳しいプライバシー規制の一つを形成し、越境転送に対してプライバシー影響評価を義務付けています。
エンジニアリングチームにとって、これらの規制の下では、個人識別情報(PII)— 国民ID番号、健康記録、生体情報、住所 — は多くの規制の下で物理的な境界を越えて合法的に移動できません。
この問題を解決するのが、規制分類に基づいてデータを物理的に切り離す、すなわち物理的な分離を行う主権データベースアーキテクチャです。すべてのデータが平等に作られているわけではないことを認識します。
標準的なSaaSのUsersテーブルを例にとると:
| カラム | 機微性 |
|---|---|
user_id (UUID) |
非機微 |
account_status (Boolean) |
非機微 |
tenant_id (UUID) |
非機微 |
last_login (Timestamp) |
非機微 |
social_security_number (String) |
高度に機微なPII |
home_address (String) |
高度に機微なPII |
このテーブル全体を許可された管轄外のクラウドリージョンに移行するとコンプライアンス違反になります。全てをオンプレミスに置くとクラウドの弾力性を失います。ハイブリッド主権の目的は、垂直分割—列ごとに地理的に分割することです。非機微のテレメトリやメタデータはAWS、GCP、Azureに残し、機微なPIIは認定された地域データセンターの堅牢なラックに保存します。
これは今や主流の戦略的対応です。BARCの調査によると、51%の企業がデータ主権を達成するためにハイブリッドクラウド戦略を強化しています。ForresterのSovereign Cloud Platforms Waveレポートもこの動きを裏付けており、企業はパブリッククラウドとデータ境界を持つアーキテクチャ、多様なハイブリッドプライベートクラウド、完全にエアギャップされた環境を採用しています。
2. アプリレベルの分割が失敗する理由
多くの開発者はこの課題に直面すると、アプリケーション層での分離を試みます。クラウドのメタデータ用データベースとローカルのPII用データベースを立ち上げ、それらをコードでつなぎ合わせる例です:
# アプリレベルのスプリットの悪夢
def get_user_profile(user_id):
# クラウドから非機微データを取得
cloud_data = cloud_db.execute(
"SELECT account_status FROM users WHERE id = ?", user_id
)
# ローカルラックから機微データを取得
local_data = local_db.execute(
"SELECT ssn, address FROM pii_vault WHERE id = ?", user_id
)
# メモリ上で結合
return {**cloud_data, **local_data}
このアプローチは以下の理由で壊滅的です:
技術的負債の拡大。 アプリ開発者全員がデータベースルーティングエンジンにならざるを得ません。ORM呼び出しやJOIN、WHERE句の手動解読が必要となり、マイクロサービス全体に負債が積み重なります。
原子性の喪失。 2つの異なるデータストア間の分散トランザクションは複雑なTwo-Phase Commit(2PC)やSagaパターンを必要とします。ネットワークの一時的な障害でデータが破損したスプリットブレイン状態になるリスクもあります。
分析の麻痺。 ビジネスインテリジェンスツールは、2つの物理的に分離されたシステム間でのGROUP BYやJOINを実行できません。分析スタックは事実上、PIIに近いデータに盲目になります。
ガバナンスのギャップ。 クエリ時のマスキングポリシーは、データが保存されている状態では保護しません。dbtのSnowflakeにおけるカラムタグマスキングの例のように、マスキングポリシーはクエリ時に適用されますが、未マスクの生データは生のスキーマアクセスを持つ者に見え続けます。本当の保護には、データがストレージに到達する前に施行する必要があります。
真にローカライズされたPIIストレージを実現しつつ、開発者の速度を損なわないためには、分離は透過的に行う必要があります。アプリケーションは標準のSQLをそのまま送信し続ける必要があります。魔法はネットワーク層でのみ起こるのです。
3. コアエンジン:カラム認識プロキシ
このアーキテクチャの秘密は、カラム認識プロキシです。これは、アプリケーションとデータベースの間に位置し、ネイティブのワイヤープロトコル(PostgreSQLやMySQL)を理解するインテリジェントなネットワークインターセプターです。
アプリケーションから見ると、プロキシはデータベースそのものです。アプリは標準の接続文字列を使って接続し、その背後の物理的な構造には気づきません。
この分野の最新ツールには次のようなものがあります:
- Cyral — ポリシーベースのカラム制御を備えたエンタープライズグレードのデータセキュリティプロキシ
- Skyflow Data Privacy Vault — 地域ごとのVaultにPIIを格納し、不可逆トークンに置き換えることで多管轄のコンプライアンスを支援
- Hoop.dev — ID認証付きのプロキシで、敏感なカラムを動的にマスクし、設定不要で動作。すべてのクエリ、更新、管理操作を検証・記録・監査可能
- Baffle — ホモモルフィック暗号やトークナイゼーションをサポートする暗号化プロキシ
- PgBouncer/ProxySQLの高度なカスタマイズ版 — エンジニアリングリソースのあるチーム向けのオープンソース選択肢
Databricksはこのコンセプトの大規模な内部例を公開しています。彼らのLogSentinelシステムは、LLMを活用したカラム分類を用いて、テーブルのタグ付けやスキーマ変更時のラベリングドリフトを検出し、マスキングやアクセス制御、保持、居住ルールに信頼性のあるラベルを直接供給します。これにより、従来の「ベストエフォートガバナンス」が自動化されたポリシーに変わります。
プロキシの動作原理
アプリケーションがクエリを発行すると、プロキシは次のようなマイクロ操作をミリ秒単位で行います:
- インターセプション&パース — SQL文字列をキャッチし、抽象構文木(AST)に解析
- 分類 — 要求されたカラムを事前定義されたガバナンスポリシーと照合し、PII制限のあるカラムを特定
- クエリの書き換え(スプリット) — 単一のクエリを二つに分割
- 並列実行 — 一つはクラウドデータベースにルーティング、もう一つは安全なハイブリッドクラウドSQLトンネルを通じてローカルPIIデータベースへ
- 結果の結合 — 両方からの結果をメモリ上で結合し、アプリに一つの統合された行セットを返す
アプリ開発者はルーティングコードを書かずに済みます。常に一つのデータベースを見ているのです。
4. ハイブリッドクラウドSQLトンネルのエンジニアリング
このスプリットブレインアーキテクチャを安全かつ信頼性高く動作させるには、パブリッククラウドとローカルラック間の接続が完璧である必要があります。これがハイブリッドクラウドSQLトンネルです。ゼロトラストネットワークの哲学に基づいています。
主要コンポーネント
相互TLS(mTLS)
トンネルを通じて送信されるすべてのパケットは、双方向で認証される必要があります。ローカルデータベースは暗号的にプロキシの正体を検証し、逆もまた然りです。一方向TLSだけではこの脅威モデルには不十分です。
専用インターコネクト — パブリックインターネットではない
同期的なデータベースクエリにパブリックインターネットを使うと、遅延が著しく増加します。企業は次のような専用インターコネクトを使用します:
- AWS Direct Connect — オンプレミスとAWS間の専用ファイバー
- Google Cloud Interconnect — GCP向けの同等サービス、パートナーインターコネクトも利用可能
- Azure ExpressRoute — Microsoftのプライベート接続オプション。BNPパリバのハイブリッド主権展開でも使用されています。
専用インターコネクトを使うと、フランクフルトのローカルラックとAWSのeu-central-1リージョン間の往復遅延を2ミリ秒未満に抑え、リアルタイムの結果結合を実現します。AWSはまた、Well-Architected Data Residency with Hybrid Cloud Services Lensを公開しており、複雑なデータ居住要件を満たすハイブリッドワークロード設計を支援します。
コネクションプーリング
地理的距離を越える新しいSSL/TLS接続の確立はコストが高いため、常に維持されるプールされた接続を持つ必要があります。ProxySQLやPgBouncerはこれをネイティブにサポートします。プーリングがないと、最初の接続時の遅延が2msから100ms以上に跳ね上がることがあります。
アウトバウンド専用ネットワーク
現代のハイブリッド制御プレーンアーキテクチャは、オンプレミス環境からクラウド制御プレーンへのアウトバウンド接続のみを好みます。データプレーンはすべてのトラフィックを制御プレーンに向けて開始し、インバウンドのファイアウォールポートを閉じ、攻撃面を縮小します。これにより、従来の双方向設定に比べてセキュリティが大幅に向上します。
5. スプリットブレインクエリの実例
複雑なクエリがこのプロキシメカニズムを通じてどのように処理されるか、その全ライフサイクルです。
あなたのアプリは次のクエリを実行します:
SELECT u.user_id, u.account_status, u.home_address
FROM users u
WHERE u.account_status = 'ACTIVE';
ステップ1 — プロキシがインターセプト
カラム認識プロキシはASTを解析し、user_idとaccount_statusはクラウドDBにあり、home_addressはローカルラックのPII制限対象であることを識別します。
ステップ2 — クラウドクエリ
WHERE句がaccount_status(クラウドにあるカラム)でフィルタリングしているため、プロキシは最初のフィルタリングをクラウドデータベースにプッシュします:
-- クラウドDB上で実行
SELECT user_id, account_status
FROM users_cloud
WHERE account_status = 'ACTIVE';
クラウドDBはアクティブなユーザIDのリストを返します:[101, 102, 103]。
ステップ3 — トンネルクエリ
プロキシは必要なレコードを正確に把握しており、二次的に絞ったクエリを生成し、安全なトンネルを通じてローカルラックのDBに送信します:
-- ローカルラックDBで実行(安全トンネル経由)
SELECT user_id, home_address
FROM users_pii_local
WHERE user_id IN (101, 102, 103);
ステップ4 — 結合
プロキシはローカルラックから住所を受け取り、user_idをキーに二つのデータセットを結合し、単一の統合行セットをアプリに返します。アプリ側のコード変更は不要です。クエリが二つの物理データセンターにまたがっていることを開発者は知りません。
6. ネイティブの代替アプローチ:Foreign Data Wrappers
PostgreSQLを使うチームは、専用のプロキシを導入せずとも、Foreign Data Wrappers (FDW)を使った同様のアーキテクチャを実現できます。
postgres_fdwは、リモートサーバー上のテーブルをローカルのように扱える拡張です。このスプリットブレインシナリオでは、クラウドDBがオーケストレーター役、ローカルラックDBがリモートサーバー役を果たします。
FDWを使ったアーキテクチャの構築
ステップ1 — クラウドDBにリモートサーバー接続を作成:
CREATE SERVER local_pii_rack
FOREIGN DATA WRAPPER postgres_fdw
OPTIONS (
host '10.0.0.5',
dbname 'pii_db',
port '5432',
sslmode 'require'
);
ステップ2 — ユーザーマッピングを作成:
CREATE USER MAPPING FOR app_user
SERVER local_pii_rack
OPTIONS (user 'pii_reader', password 'your_secure_password');
ステップ3 — 外部テーブルのマッピングを作成:
CREATE FOREIGN TABLE pii_data (
user_id UUID,
ssn VARCHAR,
home_address VARCHAR
) SERVER local_pii_rack;
ステップ4 — アプリに統合ビューを公開:
CREATE VIEW unified_users AS
SELECT
c.user_id,
c.account_status,
p.ssn,
p.home_address
FROM cloud_users c
LEFT JOIN pii_data p ON c.user_id = p.user_id;
アプリがSELECT * FROM unified_usersを実行すると、PostgresのクエリプランナーはPIIのリクエストをインテリジェントにトンネル経由でローカルサーバーにプッシュし、必要な行だけを取得し、結合します。これは追加インフラなしで動作する効率的な「リーンプロキシ」ですが、ポリシーの集中管理や監査ログ、ASTレベルの分類はできません。
7. パフォーマンス低下の緩和
どんなアーキテクチャにもトレードオフはつきものです。地理的に分散したデータベースは物理的な遅延を伴います。ネットワーク遅延は避けられません。ダッシュボードのレンダリングに50回の連続呼び出しで15msの遅延が追加されると、痛感します。
プリデケートプッシュダウン最適化
設定が不十分なプロキシは、ローカルラックから何百万行も引き出してローカルでフィルタリングを行うことがあります。適切に調整されたカラム認識プロキシは、predicate pushdownをサポートし、アプリのWHERE句を各データベースでローカルに条件として変換します。上記のステップ2/3の例はこれを示しており、クラウド側で最初にフィルタリングし、ローカルラックには必要なIDだけを送ります。
選択的トークナイズされたマテリアライズドビュー
複雑なレポーティングには、リアルタイムのクロスデータセンター結合は計算コストが高いため、安全なトークナイズされたマテリアライズドビューを生成できます。PIIはローカルラックに残り、暗号学的に不可逆なハッシュ値(トークン)をクラウドに送信し、統計集計やインデックスに利用します。SkyflowのVaultアーキテクチャはこれを実現しており、機微なデータは地域ごとのVaultに保持され、アプリは対応する不可逆トークンで操作します。元のデータは移動せず、参照だけが移動します。
暗号化されたインメモリキャッシュ
ローカルのPIIストレージに対するリード負荷の高いワークロードは、暗号化されたインメモリキャッシュ(例:TLSと暗号化-at-restを備えたRedis)を導入することで高速化できます。プロキシはローカルキャッシュをトンネル経由で確認し、ディスクアクセスを避けて、同じユーザレコードの繰り返し読み込みの遅延を削減します。
AIによるスキーマドリフト検知
スキーマの進化に伴い、新しいカラムが出現し、データの意味論も変化します。これにより、未分類のPIIカラムが増え、ガバナンスのギャップが生まれます。DatabricksのLogSentinelは、継続的なスキーマ監視を行い、ラベリングのドリフトを検出し、新しいカラムが適切に分類されていない場合は自動修正チケットを発行します。これにより、以前は数週間かかっていたコンプライアンス作業が数時間で完了します。この継続的なガバナンスモデルは、もはや贅沢ではなく、運用の必須となっています。
8. ガバナンス、監査、コンプライアンスの傑作
このアーキテクチャの真の成功は、監査官が到着したときに実現します。
中央集権的ポリシーの施行
セキュリティチームは、YAMLやJSONのポリシーファイルを一つ作成し、プロキシに適用します。このポリシーは、「PII」とラベル付けされたカラムの抽出を、認証されたローカルサービスアカウントからのリクエストに限り許可します。新しい規制が登場したら、一箇所のルールを更新するだけで、すべてのデータプレーンが従います。これがハイブリッド制御プレーンの利点です。ポリシーを中央で強制しつつ、証拠はオンプレミスに残すことで、コンプライアンスレビューのためにテラバイト単位のデータをエクスポートする必要がなくなります。
暗号学的境界
PIIがクラウドストレージやスナップショットに全く存在しないため、AWS S3バケットやRDSスナップショット、クラウドバックアップの侵害があっても、敏感なデータはゼロです。クラウドのデータは、物理的なローカルラックがなければ実質的に役に立ちません。Forresterの調査では、現代の主権は、技術的制御(顧客管理の暗号鍵を含む)、運用実践、現地スタッフ、独立した監査、契約上の約束の組み合わせによって最もよく実現されると結論付けています。カラム認識プロキシアーキテクチャは、まさにこの組み合わせを提供します。
統合監査ログ
プロキシは、集中管理のポイントとしてすべてのクエリ、その起点、実行時間、アクセスされたカラムを記録します。Hoop.devのようなプラットフォームは、各操作をIAMプロバイダー(OktaやAWS IAM)からの認証済みIDに結びつけ、タイムスタンプ付きの監査可能なセッション記録を作成します。これにより、正確なデータ居住性の証明とSOC 2、GDPR、DPDPのコンプライアンス審査が迅速かつ正確に行えます。
PwCのEMEAクラウドビジネス調査によると、94%の組織が近い将来にクラウドアーキテクチャを調整し、特定のユースケースに対して主権ソリューションへ移行しつつ、他の部分ではパブリッククラウドを維持するとしています。このカラム認識プロキシアーキテクチャは、そのような微妙なポジショニングを可能にします。
9. 規制の未来:今後何が来るのか
規制の動向は安定せず、むしろ加速しています。今日システムを設計するエンジニアは、今後5年間の法的変化を見越して設計する必要があります。
インド DPDPA(アクティブ) — DPDP規則は2025年11月14日に正式通知されました。現状では、インド政府は特定のデータの国外流出を制限する明示的な権限を持ちます。コンプライアンス期限は2027年5月までです。重要なデータ義務者には、インド国内にのみ保存することが求められる可能性があります。PwCは、今すぐデータローカリゼーションの緊急対応計画を始めることを推奨します。
EU AI法(間もなく施行) — AIシステムが個人データを扱う場合に厳格なルールを課し、新たなデータガバナンス義務を生み出します。
米国州レベルの断片化 — 19州以上でプライバシー法が施行または準備中であり、単一国の中でも法域の複雑さがアーキテクチャの負担となっています。
地政学的リスク — ITリーダーの75%以上が地政学的リスクを懸念し、65%が主権規制に対応してクラウド管理を変更しています。40%以上の企業が一部のワークロードをプライベートやオンプレミスに戻しています。
データの地理的配置を戦略的なアーキテクチャの決定と捉える企業だけが勝ち残るでしょう。カラム認識プロキシと安全なトンネルを基盤としたハイブリッド主権パターンがそれを可能にします。
10. 結論:断片化した世界に向けての構築
すべてのユーザーデータを一つの中央クラウドデータベースに格納する時代は終わりです。規制の数は増え、執行は強化され、クロスボーダーのPII漏洩の罰則は厳しくなる一方です。
ハイブリッドクラウドSQLトンネルとカラム認識プロキシを使ったスプリットブレインデータベースの構築は、妥協ではなく、アーキテクチャの進化です。エンジニアリングチームは、見かけ上は統一されたシステムに対して標準的でクリーンなSQLを書き続けます。インフラは静かに、かつ安全に、最も機微なデータを主権的な堅牢な物理ラックにルーティングします。ガバナンスチームは一つのポリシー層を持ち、監査人は証明可能なコンプライアンス記録を得ることができます。
このアーキテクチャは、規制当局がますます求める三つの質問に答えます:
- データはどこに物理的にあるのか? 必要な管轄内のローカルラックに。
- 誰がいつアクセスできるのか? 認証されたサービスアカウントのみ、完全な監査証跡とともに。
- クラウドが侵害されたらどうなるか? クラウドのデータは、物理的なローカルラックがなければ役に立たない。
あなたのアプリは一つのデータベースを見ています。開発者は速度を維持します。監査人は主権の傑作を目にします。
出典:BARC “Kontrolle statt Abhängigkeit”調査(2025);Forrester Wave: Sovereign Cloud Platforms;AWS Well-Architected Data Residency with Hybrid Cloud Lens;インドDPDP規則2025(2025年11月14日通知);PwC EMEAクラウドビジネス調査2025;Databricks LogSentinel(2026年3月);Security Boulevard グローバルデータ居住性レポート(2025年12月);Skyflow Data Privacy Vaultドキュメント。
Related Topics
Keep building with InstaTunnel
Read the docs for implementation details or compare plans before you ship.