ステップ
データハブにおけるステップの概要。
ステップについて
フローは、データを処理または強化する複数のステップから構成されています。
ステップには、次のいずれかのタイプがあります。
ステップ | ステップへの入力 | ステップの内容 | ステップの結果 |
---|---|---|---|
読み込み(Ingestion) | 1つのソースからの生データ | 各項目をエンベロープでラップし、ラップされた項目をレコードとしてステージングデータベースに保存します。 | ステージングデータベースに読み込まれたデータ |
マッピング |
|
エンティティモデルのフィールドをソースデータの対応するフィールドに関連付け、マッピングされたデータをファイナルデータベースに保存します。 | ファイナルデータベース内のマッピング済みデータ |
マッチング | ファイナルデータベース内のマッピング済みデータ | データ内で重複の可能性があるものをチェックする。 | ファイナルデータベース内の内部マッチサマリー。各マッチサマリーには、マージされるレコードのリストが含まれます。 |
マージング | マッチングステップが作成した内部マッチサマリー。 | 指定された基準に基づき、候補のリストを扱う。 |
比較された2つのレコードが、指定された重複条件を確実に満たしている場合、これら2つの重複レコードに基づく新しいレコードがファイナルデータベースに作成されます。また、元のエントリはアーカイブ済みとしてタグ付けされて、ファイナルデータベースに残ります。 比較された2つのレコードが、マッチの可能性の条件を満たしている(しかし確実ではない)場合、通知ドキュメントがファイナルデータベースに作成されます。この通知には、これら2つのレコードに関する情報が含まれています。 これら以外の場合は、何も実行されません。 |
マスタリング | ファイナルデータベース内のマッピング済みデータ | データ内で重複している可能性のあるドキュメントをチェックし、指定した条件に基づいて処理します。 | |
|
カスタムコードによって異なる | ステップ定義で指定されたカスタムコードを実行します。カスタムコードを使用すると、データをさらに処理、強化、または検証できます。また、MarkLogicデータハブに含まれるデフォルトの処理をカスタムステップで置き換えることもできます。例えば、カスタムの読み込みステップを作成することで、データの異なる読み込み方法を定義できます。 | カスタムコードによって異なる |
フロー内のステップの選択
1つのフロー内に、任意の組み合わせのステップ(読み込み、マッピング、マッチング、マージング、マスタリング、カスタム)を含めることができます。ステップをさまざまに組み合わせて、好きな数だけフローを作成できます。例えば、読み込みしかないフローを1つ作成する一方、マッピングとマスタリングのステップを含む別のフローを作成できます。
- マッピングステップを設定・実行する前に、データベース内にエンベロープ化されたデータ(読み込みステップの結果)が必要です。
- マスタリングステップを実行する前に、マッピング済みデータ(マッピングステップの結果)が必要で、比較するすべてのデータを同一のエンティティモデルにマッピングしてある必要があります。
基本的に、読み込みステップはマッピングステップの前に実行する必要があります。また、マッピングステップはマスタリングステップの前に実行する必要があります。分割ステップマスタリングでは、マージングステップの前にマッチングステップが終わっている必要があります。
これらのステップは別個のフローに含めることができます。これらが同一フロー内に含まれている場合でも、フロー実行時にどのステップを実行するのかを選択できます。
- フローAでは、ニューヨークの子会社から人事データを読み込み、読み込んだデータをエンティティモデルにマッピングします。
- フローBでは、サンフランシスコの子会社からの人事データに対して同様の処理を行います。
- 読み込み(Ingestion)
- ステージングデータベースにデータを読み込む必要がある場合は、読み込みステップを追加します。
- データがすでにエンベロープにラップされ、ステージングデータベースに保存されている場合は、このステップは不要です。
- マッピング
- ソースのフィールドがエンティティモデルのプロパティと1対1に対応付けられていない場合は、ソースとエンティティモデル間のマッピングを処理するカスタムモジュールへのリンクを含むカスタムステップを追加します。
- ソースフィールドに対して計算などの追加処理が必要な場合は、計算を実行するカスタムモジュールへのリンクを含むカスタムステップを追加します。
- XMLドキュメントをマッピングする場合は、XMLドキュメントを処理するカスタムモジュールへのリンクを含むカスタムステップを追加します。
- ソースに対して複雑な型変換が必要な場合は、変換を実行するカスタムモジュールへのリンクを含むカスタムステップを追加します。
- データがすでにエンティティモデルに対してマッピングされ、ファイナルデータベースに保存されている場合は、このステップは不要です。
- それ以外の場合は、マッピングステップを追加します。
- マスタリング
- 重複した複数のデータをそのまま保持したい場合は、このステップは不要です。
- MarkLogicのスマートマスタリング技術を使用して、重複するドキュメントを特定してマージしたい場合は以下を行います。
- スレッド1つでもパフォーマンスの問題なくデータセットのマッチングとマージングができる場合には、マスタリングステップを追加します。
- データセットが巨大な場合、また重複が大量に存在する可能性がある場合には、パフォーマンスを改善するために複数のスレッドが必要になります。この場合、マッチングステップそしてその後ろにマージングステップを追加します。
- それ以外の場合は、重複するドキュメントを識別し、自分の好きなように処理するためのカスタムモジュールへのリンクを含むカスタムステップを追加します。
ステップのカスタマイズ
ステップは複数の方法でカスタマイズ可能です。