Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs Menu
Docs Home
/
Relational Migrator
/ /

パーティ ドメインのリファクタリング

元の PostgreSQLスキーマは、1 対 1 の関係を持つ者を表します。party テーブルにはすべてのパーティに共通の属性が保持され、他のテーブルには各 パーティクラスの特定の情報が保存されます。これらの違いにより、 各クラスの異なるフィールドが生成され、PostgreSQL のような表形式スキーマでは新しいテーブルを作成する必要があります。

リレーショナルデータベース内の各テーブルのマッピングを追加することで、この情報を単一のMongoDB partyドキュメントに埋め込むことができます。

パーティーには、次のキー エンティティが含まれます。

  • パーティ : 人物、組織、グループを表します。

  • パーティ ロール : などの他のオブジェクトに関連するパーティのロールを定義します。

    • Policy

    • クレーム

    • 契約

    • 制限

    • 不可分オブジェクト

  • 通信 ID : 関係者のメール、電話、住所などの情報が含まれます。

次の画像は、パーティ ドメインのエンティティ関係図(ERD)を示しています。

パーティ ドメインのエンティティ関係図(ERD)

パーティ ドメインのリファクタリングは、 保証データモデルの例チュートリアル の 2 番目のステップです。パーティー ドメインをリファクタリングする前に、Relational Migratorの PostgreSQLデータベースに接続します。

1

画面の右側で、Mappings メニューが開きます。

2

Mappings from relational tables の横にある [Add] をクリックします。[Embedded documents をクリックし、Source table ドロップダウン メニューから person を選択します。

Save and close をクリックした後、organizationgrouping のソーステーブルに対してこのプロセスを繰り返します。

3

の横にある Mappings from relational tables[] をクリックし、[] をクリックします。Addグループは多くのロケーション アドレスを持つことができるため、Embedded array を選択します。Source table ドロップダウン メニューから party_location_address を選択します。

[All fields チェックボックスの下にある partyIdentifier フィールドのチェックを外し、Save and close をクリックします。

4

party_location_addressコレクション内に住所情報を含めるには、Add をクリックし、Embedded documents を選択します。Source table ドロップダウン メニューから location_address を選択します。

[ の下にあるAdvanced settings [] チェックボックスをオンにします。Merge fields into the parentこのオプションにより、ドキュメントに必要以上のネストされたフィールドが存在しなくなります。

[Save and close] をクリックします。

5

必要なテーブルをすべて partyコレクションにマッピングしたので、 Relational MigratorのMongoDBビューから次のコレクションを削除できます。

  • person

  • organization

  • grouping

  • partyLocationAddress

重要

locationAddressコレクションは削除しないでください。insurable_object テーブルとの既存の関係は依然としてあります。このテーブルには後のステップでマッピング ルールを追加します。

スキーマ

パーティー ドメインをマッピングした後、ポリシー ドメインをリファクタリングできます。「 ポリシー ドメインのリファクタリング 」を参照してください。

戻る

Relational Migratorへの接続

項目一覧