エンベロープパターン
概要
MarkLogicデータハブは、エンベロープパターンを使用してデータをカプセル化します。エンベロープパターンでは、元のコンテンツと関連するメタデータが同じエンベロープ(エンティティ)に格納されますが、分離性は維持されます。これにより、元のコンテンツを維持しながら、メタデータを追加できます。
{ "envelope": { "headers": [], "triples": [], "instance": { "your original data": "goes here" } } }
<envelope><headers/><triples/><instance> your original data goes here </instance></envelope>
例:エンベロープパターン
MarkLogicデータハブでは、元のデータを維持しながら、メタデータをエンベロープに追加して、フィールド名や形式の異なるデータをハーモナイズできます。
例えば、2つのデータソースに性別情報があり、格納されているフィールドの名前と形式が異なっている場合を考えます。
source-1.json | source-2.json |
---|---|
|
|
エンベロープを使用すると、フィールドを1つのフィールドに標準化して、同じエンベロープ内にメタデータとして保存できます。
harmonized-1.json | harmonized-2.json |
---|---|
|
|
アプリケーションは、データソースにかかわらず、同じフィールド名(normalizedGender)を使用してデータハブに対してクエリを実行し、同じ形式(female
)で結果を取得できるようになります。