マスター・エンティティの作成

Oracle Unityのプロファイル統合パイプラインを任意のデータ・オブジェクトに使用する場合は、次のステップに従って、そのデータ・オブジェクトのマスター・バージョンを作成できます。

重要: これらのステップを完了するには、JSONの作業知識があり、かつインスタンス管理ユーザー・ロールが割り当てられている必要があります。

マスター・エンティティを作成するには、次のステップを実行します。

このシナリオを説明するために、Productデータ・オブジェクトのマスター・バージョンであるMasterProductの作成方法を示します。

ステップ1: データ・オブジェクトの作成

3つのデータ・オブジェクトを作成する必要があります。Productマスター・エンティティを作成するシナリオを使用して、次のデータ・オブジェクトを作成する必要があります。

  • Product: このデータ・オブジェクトのスコープはデータ・ウェアハウス(DW)になります。このデータ・オブジェクトには、プロファイル統合パイプラインで使用するすべてのソース・レコードが含まれます。
  • MasterProduct: これは、マスター・エンティティ・データ・オブジェクトになります。このスコープは分析になります。
  • Product_MasterProduct: このデータ・オブジェクトは、ProductMasterProductの間でデータをリンクさせます。このスコープは分析になります。

新しいマスター・エンティティを作成するには、各データ・オブジェクトの名前Productを、作成するマスター・エンティティのタイプ([name]データ・オブジェクト、Master[name]データ・オブジェクトおよび[name]_Master[name]データ・オブジェクト)に置き換えます。

次のステップを3回実行して、各データ・オブジェクトを作成します。カスタム・データ・オブジェクトの作成についてさらに学習します。

データ・オブジェクトを作成するには:

  1. 右下隅にあるOracleアイコンアプリケーション・ナビゲーション・ボタンのイメージ。Oracle Unityの様々な部分へのアクセスに使用します。をクリックして、ナビゲーション・メニューを開きます。
  2. 「データ・モデル」を選択します。
  3. データ・オブジェクトに適切なデータ・オブジェクト・グループをクリックします。このシナリオでは、「製品」タブをクリックします。
  4. データ・オブジェクト・グループのイメージ

  5. データ・オブジェクトの見出しで、「追加」をクリックします追加ボタンのイメージ。新しいデータ・オブジェクトを作成する場合に使用します。
  6. データ・オブジェクトの追加アイコンのイメージ

  7. 「データ・オブジェクトの作成」ダイアログで、データ・オブジェクトの詳細を入力します。
  8. データ・オブジェクトの作成ダイアログのイメージ

    • オブジェクト名: データ・オブジェクトの名前を入力します。このシナリオでは、Productと入力します。言語設定でサポートされているすべての言語の文字を使用できます。
    • 摘要: このフィールドはオプションですが、データ・オブジェクトのわかりやすい説明を入力することをお薦めします。
    • オブジェクト・グループ: データ・オブジェクトが適切なデータ・オブジェクト・グループ内にあることを確認します。このシナリオでは、「製品」を選択します。
    • リソース名: APIがデータ・オブジェクトへのアクセスに使用する名前を入力します。

    ノート: 「オブジェクト名」、「摘要」、「オブジェクト・グループ」および「リソース名」はいつでも変更できます。データ・オブジェクトの編集についてさらに学習します。

  9. 「保存」をクリックします。

これらのステップを実行して、必要な他の2つのデータ・オブジェクト(MasterProductおよびProduct_MasterProduct)を作成します。

ステップ2: データ・オブジェクトのスコープの更新

3つのデータ・オブジェクトを作成した後、Master[name][name]_Master[name]の2つのデータ・オブジェクトのスコープを更新する必要があります。このシナリオでは、MasterProductおよびProduct_MasterProductのスコープを更新します。Oracle Unityの「エキスパート構成」ページを使用する必要があります。

Master[name]データ・オブジェクトのスコープを更新するには:

  1. URL: https://[your cxunity hostname]/data/?root=expertConfigに移動して、Oracle Unityの「エキスパート構成」ページにナビゲートします。
  2. データ・オブジェクトのスコープを分析に更新する要求ペイロードを入力します。このシナリオでは、次の要求を入力します。tenantIdを特定のテナントに更新してください。
  3. {
      "tenantId": 361,
      "scope": "ANALYTICS",
      "tableId": "MasterProduct"
    }

[name]_Master[name]データ・オブジェクトのスコープを更新するには:

  1. URL: https://[your cxunity hostname]/data/?root=expertConfigに移動して、Oracle Unityの「エキスパート構成」ページにナビゲートします。
  2. データ・オブジェクトのスコープを分析に更新する要求ペイロードを入力します。このシナリオでは、次の要求を入力します。tenantIdを特定のテナントに更新してください。
  3. {
      "tenantId": 361,
      "scope": "ANALYTICS",
      "tableId": "Product_MasterProduct"
    }

ステップ3: 関係の作成

ここでは、3つのデータ・オブジェクト間でデータをリンクする関係を作成する必要があります。このシナリオでは、次の関係を作成します。

  • ProductProduct_MasterProduct。Productにはのタグが付けられ、Product_MasterProductにはのタグが付けられます。
  • MasterProductProduct_MasterProduct。MasterProductにはのタグが付けられ、Product_MasterProductにはのタグが付けられます。

関係についてさらに学習します。

関係を作成するには:

  1. 右下隅にあるOracleアイコンアプリケーション・ナビゲーション・ボタンのイメージ。Oracle Unityの様々な部分へのアクセスに使用します。をクリックして、ナビゲーション・メニューを開きます。
  2. 「データ・モデル」を選択します。
  3. 適切なデータ・オブジェクト・グループをクリックします。データ・オブジェクトのリストから、以前に作成した[name]データ・オブジェクトを選択します。このシナリオでは、「製品」を選択します。
  4. データ・モデルのデータ・オブジェクトのリストのイメージ
  5. 「詳細」セクションで、「関係」の横にある「追加」関係の追加ボタンのイメージ。データ・オブジェクトに関係を追加する場合に使用します。をクリックします。データ・オブジェクトに既存の関係がない場合は、「関係の作成」をクリックすることもできます。
  6. 関係の作成アイコンのイメージ

  7. ドロップダウン・リストを使用して、2番目のデータ・オブジェクトとして[name]_Master[name]を選択します。[name]データ・オブジェクトが親で、[name]_Master[name]データ・オブジェクトが子であることを確認します。このシナリオでは、Productが親で、Product_MasterProductが子です。
  8. 「関係の作成」ダイアログのイメージ

  9. 「次へ」をクリックします。
  10. 関係に必要な属性が作成されるように、「データ・オブジェクトに追加」チェック・ボックスが選択されていることを確認します。
  11. 新しい関係の互換性チェックを示すイメージ

  12. 「保存」をクリックします。

同じステップに従って他の関係を作成し、Master[name]データ・オブジェクトを親にし、[name]_Master[name]データ・オブジェクトを子にします。このシナリオでは、2番目の関係はMasterProductデータ・オブジェクトが親、Product_MasterProductデータ・オブジェクトが子になります。

2つの関係を作成した後、データ・モデルの[name]_Master[name]データ・オブジェクトにナビゲートし、「詳細」タブをクリックして、関係が次のように正しく構成されていることを確認します。

Product_MasterProductデータ・オブジェクトの詳細セクションのイメージ

ステップ4: 重複除去ターゲットの作成

ここでは、[name]_Master[name]データ・オブジェクトの重複除去ターゲットを作成する必要があります。このステップでは、以前に作成した関係を使用します。

これを行うには、Oracle Unityの「エキスパート構成」ページを使用する必要があります。

重複除去ターゲットを作成するには:

  1. URL: https://[your cxunity hostname]/data/?root=expertConfigに移動して、Oracle Unityの「エキスパート構成」ページにナビゲートします。
  2. ドロップダウン・リストを使用して、POSTおよびapi-metadataを選択します。/metadata/入力フィールドにdedupetargetsと入力します。

  3. 重複除去ターゲットを作成する要求ペイロードを入力します。このシナリオでは、次の要求を入力します。tenantIdを特定のテナントに更新してください。
  4. {
      "tenantId": 361,
      "name": "Product_MasterProduct",
      "active": true,
      "dedupeTargetId": "Product_MasterProduct",
      "masterColumnId": "MasterProductID",
      "entityId": [
        "ProductID"
      ],
      "primaryKey": "ID"
    }

この要求には、前のステップで作成した関係が表示されています。

前述のコード・サンプルは、次のことを示しています。

  • MasterProductID属性は、Product_MasterProductデータ・オブジェクトの子(外部キーと呼ばれる)です。MasterProductIDは、MasterProductデータ・オブジェクトのID属性(親)を参照します。
  • ProductID属性は、Product_MasterProductデータ・オブジェクトの子です。ProductIDは、MasterProductデータ・オブジェクトのID属性を参照します。

ステップ5: 集計表の作成

データ・モデルで作成したデータ・オブジェクトを表示すると、Master[name]データ・オブジェクトにマスター・エンティティのタグがまだ付けられていないことがわかります。

マスター・エンティティのタグがまだ付けられていないMasterProductデータ・オブジェクトのイメージ

Master[name]にマスター・エンティティのタグを付けることができるように、集計表を作成する必要があります。

これを行うには、Oracle Unityの「エキスパート構成」ページを使用する必要があります。

集計表を作成するには:

  1. URL: https://[your cxunity hostname]/data/?root=expertConfigに移動して、Oracle Unityの「エキスパート構成」ページにナビゲートします。
  2. 集計表を作成する要求ペイロードを入力します。このシナリオでは、次の要求を入力します。tenantIdを特定のテナントに更新してください。
  3. {
      "tenantId": 361,
      "name": "MasterProduct",
      "active": true,
      "tableId": "MasterProduct",
      "dedupeTargetId": "Product_MasterProduct",
      "mainIdentifier": "masterproductid",
      "foreignKeyIds": {
        "product_masterproduct": [
          "Product.ID.ProductID"
        ]
      }
    }

前述のコード・サンプルは、次のことを示しています。

  • "dedupTargetId": "Product_MasterProduct"は、前のステップで作成した重複除外ターゲットです。
  • Product.ID.ProductIDは、Product_MasterProductProductの間の関係IDです。これを取得するには、次の問合せを使用します。tenantIdを特定のテナントに更新してください。
    • 問合せパラメータ: q=[{"operator":"EQUALS","attribute":"type","value":"CHILD"},{"operator":"EQUALS","attribute":"destinationTable","value":"Product"}]
    [
      {
        "tenantId": 361,
        "name": "_FK_Product_MasterProduct_Product_ProductID_ID",
        "versionTS": 1587996995017,
        "active": true,
        "createdTS": 1587996995017,
        "type": "CHILD",
        "sourceAttribute": "SourceProductID",
        "sourceColumn": "ProductID",
        "destinationColumn": "ID",
        "destinationTable": "Product",
        "sourceTableId";"Product_MasterProduct",
        "foreignKeyId": "Product.ID.ProductID"
      }
    ]

集計表を作成すると、マスター・エンティティのタグが正しく付けられたMaster[name]データ・オブジェクトが表示されます。

マスター・エンティティのタグが付けられたMasterProductデータ・オブジェクトのイメージ

ステップ6: 重複除去ルールおよびクラスタリング・ルールの作成

マスター・エンティティの重複除去ルールおよびクラスタリング・ルールを作成する必要があります。

  • 重複除去は、重複する顧客レコードを照合してリンクするタスクです。このタスクは、ID解決の一部です。
  • クラスタリング・ルールは、データを比較するときに、顧客レコードのより小さいグループを作成するための基準です。重複レコードの検出を試みる場合に、クラスタリング・ルールを使用してより小さいレコード・セットを比較すると、すべての一つ一つの顧客レコードを比較するよりも高速かつ効率的です。

重複除去ルールについてさらに学習します。

重複除去ルールおよびクラスタリング・ルールの作成には、次の2つのタスクが必要です。

  • ルールに必要な属性の作成
  • 「エキスパート構成」ページでの重複除去ルールおよびクラスタリング・ルールの作成、およびOracle Unityアプリケーション内でのルールの構成。

ルールに必要な属性を作成するには:

  1. クラスタリング・ルールおよび重複除去ルールの定義に必要な属性を検討します。これらの新しい属性が[name]データ・オブジェクトに対して作成されます。このシナリオでは、Productデータ・オブジェクトのName属性およびUPC属性を作成します。必要な属性を確認した後、属性の作成を開始できます。
  2. 右下隅にあるOracleアイコンアプリケーション・ナビゲーション・ボタンのイメージ。Oracle Unityの様々な部分へのアクセスに使用します。をクリックして、ナビゲーション・メニューを開きます。
  3. 「データ・モデル」を選択します。
  4. 適切なデータ・オブジェクト・グループをクリックします。以前に作成した[name]データ・オブジェクトを選択します。このシナリオでは、「製品」を選択します。
  5. データ・モデルのデータ・オブジェクトのリストのイメージ

  6. 「属性」をクリックして、オブジェクトの現在の属性のリストを表示します。
  7. データ・オブジェクトの属性セクションのイメージ

  8. 右側の「追加」追加ボタンのイメージ。データ・オブジェクトの新しい属性を作成する場合に使用します。をクリックします。
  9. 属性の追加アイコンのイメージ

  10. 新しい属性の各フィールドに入力します。
    • 名前: 属性の名前を入力します。このシナリオでは、NameおよびUPCを入力します。言語設定でサポートされているすべての言語の文字を使用できます。
    • 摘要: このフィールドはオプションですが、属性のわかりやすい説明を入力することをお薦めします。
    •   属性グループ: 必要に応じて、属性の属性グループを選択または作成します。これはいつでも変更できます。
    •  データ型: 属性のデータの形式を選択します。これは、属性が公開された後は変更できません。データ型についてさらに学習します。
    • ID: これは、この属性のデータベース列に使用される名前です。属性を公開した後は、ID名を変更できません。
      • 属性名に英字が使用されている場合、このフィールドには、ユーザーが入力した属性名が自動入力されますが、変更できます。
      • 属性名に言語設定でサポートされている別の言語の文字が使用されている場合、IDフィールドは空白のままになります。英字を使用して名前を入力する必要があります。
      • IDは1文字以上50文字以内である必要があります。英字(a–zおよびA–Z)、数字(0–9)およびアンダースコア(_)のみを使用します。先頭の文字は英字である必要があります。
  11. 「保存」をクリックします。
  12. 必要に応じてこれらのステップを繰り返し、必要な属性を作成します。

これで、「エキスパート構成」ページで重複除去ルールおよびクラスタリング・ルールを作成できます。

重複除去ルールおよびクラスタリング・ルールを作成するには:

  1. URL: https://[your cxunity hostname]/data/?root=expertConfigに移動して、Oracle Unityの「エキスパート構成」ページにナビゲートします。
  2. 重複除去ルールおよびクラスタリング・ルールを作成する要求ペイロードを入力します。このシナリオでは、次の要求を入力します。tenantIdを特定のテナントに更新してください。
  3. {
      "tenantId": 361,
      "name": "StandardMasterProductClustering",
      "active": true,
      "clusteringId": "StandardMasterProductClustering",
      "sourceTable": {
        "MCPSQuery": {
          "tenantId": 361,
          "name": "queryForDedupe",
          "uniqueId": "queryForDedupe",
          "operation": {
            "ctype": ".SetOperation",
            "name": "queryForDedupe",
            "tenantId": 361,
            "uniqueId": "queryForDedupe",
            "operands": [
              {
                "ctype": ".ObjectSet",
                "tenantId": 361,
                "name": "C1",
                "description": "C1",
                "objectName": "Product",
                "uniqueId": "simple_c1_product",
                "outputAttributes": [
                  {
                    "atype": ".ReferenceAttribute",
                    "tableName": "C1",
                    "attributeName": "ID"
                  },
                  {
                    "atype": ".ReferenceAttribute",
                    "tableName": "C1",
                    "attributeName": "Name"
                  },
                  {
                    "atype": ".ReferenceAttribute",
                    "tableName": "C1",
                    "attributeName": "UPC"
                  }
                ],
                "distinct": false
              },
              null
            ],
            "operator": "UNION",
            "distinct": false,
            "outputAttributes": [
              {
                "atype": ".ReferenceAttribute",
                "tableName": "C1",
                "attributeName": "ID"
              },
              {
                "atype": ".ReferenceAttribute",
                "tableName": "C1",
                "attributeName": "UPC"
              },
              {
                "atype": ".ReferenceAttribute",
                "tableName": "C1",
                "attributeName": "Name"
              }
            ],
            "joinConditions": [
              
            ]
          },
          "type": "DW"
        }
      },
      "clusteringRules": [
        {
          "tenantId": 361,
          "name": "Name_Exact_UPC_Exact",
          "active": true,
          "clusteringId": "StandardMasterProductClustering",
          "clusteringRuleId": "Name_Exact_UPC_Exact",
          "scoreThreshold": 100,
          "maxCandidates": 3000,
          "referenceAttributes": [
            {
              "atype": ".ReferenceAttribute",
              "attributeName": "Name"
            }
          ],
          "clusteringCriteria": {
            "ctype": ".Criteria",
            "operator": "AND",
            "operands": [
              {
                "ctype": ".Criteria",
                "operator": "NOT_NULL",
                "operands": [
                  {
                    "ctype": ".ReferenceAttribute",
                    "attributeName": "Name"
                  }
                ]
              }
            ]
          },
          "matchingCriteria": {
            "ctype": ".MatchingCriteria",
            "operator": "AND",
            "operands": [
              {
                "ctype": ".MatchingRule",
                "algorithm": "LEVENSHTEIN_DISTANCE",
                "arguments": {
                  "threshold": "100"
                },
                "attributeValues": [
                  {
                    "atype": ".ReferenceAttribute",
                    "attributeName": "UPC"
                  }
                ]
              }
            ]
          }
        }
      ],
      "dedupeTargetId": "Product_MasterProduct",
      "mainIdentifier": "ID"
    }

    このシナリオでは、ルールの名前はStandardMasterProductClusteringになります。Oracle Unityアプリケーションでルールを構成できます。

  4. 右下隅にあるOracleアイコンアプリケーション・ナビゲーション・ボタンのイメージ。Oracle Unityの様々な部分へのアクセスに使用します。をクリックして、ナビゲーション・メニューを開きます。
  5. 「マスター・エンティティ」を選択します。
  6. マスター・エンティティのリストから、作成したMaster[name]マスター・エンティティを選択します。このシナリオでは、「MasterProduct」を選択します。
  7. マスター・エンティティのリストのイメージ

  8. 「重複除去」タブ、重複除去ルールの順にクリックし、ルールが正常に作成されたことを確認します。
  9. マスター・エンティティの重複除去ルールのイメージ

  10. 必要に応じて、重複除去ルールの編集のステップを実行できます。

ステップ7: プロモーション・ルールの作成

マスター・エンティティを構成する最後のステップは、プロモーション・ルールの作成です。

プロモーションは、ソース・レコードの属性値をマージして、最適な値をマスター・レコード属性に設定するタスクです。たとえば、名、姓、住所、性別などの属性の最適な値をマスター・エンティティに設定することができます。このタスクは、ID解決の一部です。

プロモーション・ルールについてさらに学習します。

プロモーション・ルールは、マスター・エンティティの属性を作成するときに自動的に作成されます。マスター・エンティティの属性を作成するには、マスター・エンティティの新しい属性の作成に使用される既存のデータ・オブジェクトの属性であるソース属性を選択する必要があります。

プロモーション・ルールを作成するには:

  1. マスター・エンティティ(Master[name]オブジェクト)に対して作成する属性を検討します。このシナリオでは、MasterProductマスター・エンティティに対してSKU属性を作成します。
  2. 右下隅にあるOracleアイコンアプリケーション・ナビゲーション・ボタンのイメージ。Oracle Unityの様々な部分へのアクセスに使用します。をクリックして、ナビゲーション・メニューを開きます。
  3. 「データ・モデル」を選択します。
  4. マスター・エンティティが含まれるデータ・オブジェクト・グループをクリックし、マスター・エンティティをクリックします。このシナリオでは、「MasterProduct」を選択します。
  5. MasterProductマスター・エンティティのイメージ

  6. 「属性」タブをクリックします。右側の「追加」追加ボタンのイメージ。データ・オブジェクトの新しい属性を作成する場合に使用します。をクリックします。
  7. 属性の追加アイコンのイメージ

  8. 「ソース属性」の検索フィールドで、新しい属性の作成に使用するソース属性を検索します。ソース属性を選択すると、新しい属性の詳細が事前に入力されます。これはソース属性の情報(「ID」、「データ型」、「名前」、「摘要」および「属性グループ」)から取得されます。このシナリオでは、Productデータ・オブジェクトのSKU属性を検索します。
  9. 属性の追加ダイアログのイメージ

  10. 「保存」をクリックします。
  11. このシナリオのプロモーション・ルールの名前はMasterProduct_ruleId_SKUになります。Oracle Unityアプリケーションでルールを構成できます。

  12. 右下隅にあるOracleアイコンアプリケーション・ナビゲーション・ボタンのイメージ。Oracle Unityの様々な部分へのアクセスに使用します。をクリックして、ナビゲーション・メニューを開きます。
  13. 「マスター・エンティティ」を選択します。
  14. マスター・エンティティのリストから、作成したMaster[name]マスター・エンティティを選択します。このシナリオでは、「MasterProduct」を選択します。
  15. マスター・エンティティのリストのイメージ

  16. 「プロモーション」タブをクリックし、ルールが正常に作成されたことを確認します。
  17. マスター・エンティティのプロモーション・ルールのイメージ

  18. 必要に応じて、プロモーション・ルールの編集のステップを実行します。

ステップ8: システム・ジョブの実行

マスター・エンティティの作成に必要なすべてのアイテムを作成して構成した後、データ・モデルへの更新を実装するために次のことを行う必要があります。

  • 変更を公開します。
  • 「システム - データ・ウェアハウス・ジョブ」を実行します。
  • システム - ID解決ジョブを実行します。

データ・モデルに対する変更を公開するには:

  1. 右下隅にあるOracleアイコンアプリケーション・ナビゲーション・ボタンのイメージ。Oracle Unityの様々な部分へのアクセスに使用します。をクリックして、ナビゲーション・メニューを開きます。
  2. 「データ・モデル」を選択します。
  3. 右上隅の「変更の公開」をクリックします。
  4. ノート: 公開ジョブが現在処理中の場合は、すでに処理中の公開ジョブが完了するまで公開ジョブを実行できないという通知を受け取ります。

  5. 公開ジョブを確認し、「公開」をクリックします。
  6. 公開ジョブが正常に開始されたことを確認する通知が表示されます。

ジョブ・ダッシュボードからジョブのステータスをモニターできます。

システム・ジョブを実行するには:

  1. 右下隅にあるOracleアイコンアプリケーション・ナビゲーション・ボタンのイメージ。Oracle Unityの様々な部分へのアクセスに使用します。をクリックして、ナビゲーション・メニューを開きます。
  2. 「データ・フィード」を選択します。2つのシステム・ジョブがデータ・フィードのリストの上部に表示されます。
  3. 「データ・フィード」ページのイメージ

  4. システム・ジョブの「アクション」メニュー()をクリックし、「開始」を選択します。
  5. システム・ジョブのアクション・メニュー項目のイメージ

公開ジョブと2つのシステム・ジョブが完了すると、マスター・エンティティが使用可能になり、使用する準備ができています。

さらに学ぶ

マスター・エンティティ

重複除去ルール

プロモーション・ルール

カスタム・データ・オブジェクトの作成

属性の作成

関係

変更の公開

マスター・エンティティ, マスター・エンティティ, マスター・エンティティの作成, マスター・エンティティの作成方法