コレクション・キーおよび属性名

コレクション内のすべての属性の名前の先頭にコレクション・キーを付加することをお薦めします。

コレクションでは属性を共有できません。属性は同時に複数のコレクションに属することができません。ただし、複数のコレクションに属性を追加するのが望ましい状況がよくあります。たとえば、自動車保険データを扱っている場合を考えます。このデータには、請求用のコレクションと作業オーダー用のコレクションの2つが含まれています。両方のコレクションに該当するデータとして、請求番号および車両登録番号(VIN)があります。このデータを各コレクションにアップロードする必要があります。

Studioでは、すべての属性の名前を一意にする必要があります。各プロパティの名前がそのコレクションで一意になるように、プロパティ名の先頭にコレクション名を付加することをお薦めします。Integrator ETLを使用してデータをロードする場合は、属性名の先頭にコレクション・キーを付加する際に、セパレータとしてアンダースコアを使用することをお薦めします(collectionKey_attributeName)。たとえば、「Claims_ClaimNumber」、「Claims_VIN」、「WorkOrders_ClaimNumber」、「WorkOrders_VIN」のようにします。

Integrator ETLを使用してデータをロードする場合は、ロードする直前に、Reformatコンポーネントを使用して属性名にコレクション・キーを追加することをお薦めします。ロード対象のすべての属性を含むメタデータをコピーします(このメタデータはロード・コンポーネントにパイプされます)。メタデータのコピーで、すべての属性の先頭にコレクション・キーを付加します(attributeName > collectionKey_attributeName)。Reformatコンポーネントをグラフに追加します。Reformatコンポーネントへの入力メタデータとして元のメタデータを使用し、出力メタデータとして更新後のメタデータを使用します。コンポーネントで、copyByPosition ()関数を使用して入力を出力に変換します。
copyByPosition($out.0, $in.0);