フロー定義ファイル
フロー定義ファイル内の情報(ステップなど)。
概要
GradleタスクhubCreateFlowによって生成されたデフォルトの定義ファイルには、フローの設定およびステップのサンプルが含まれています。
ステップのサンプルは、フローの実行前に必ずカスタマイズする必要があります。不要なステップは削除できます。また同種のステップが複数必要な場合は、重複して持つことができます。その場合、一意のシーケンス番号(順番を示すもの)を割り当てる必要があります。
フローの詳細は、フローについてを参照してください。
ステップのタイプの詳細は、ステップについてを参照してください。
フロー定義ファイルのコンポーネント
フローの設定
{
"name" : "MyFlow",
"description" : "This flow contains examples of steps plus additional settings.",
"batchSize" : 100,
"threadCount" : 4,
"stopOnError" : false,
"options" : {
"sourceQuery" : null,
"provenanceGranularityLevel" : "fine"
},
"steps" : {
"1" : { ...},
"2" : { ...},
"3" : { ...},
"4" : { ...}
}
}
フィールド | 説明 |
---|---|
name | わかりやすいフロー名を付けます。 |
description | (オプション) フローの説明です。 |
batchSize | 1つのバッチで処理するドキュメントの数。各バッチでは、フロー内のステップを最初から最後まですべて実行したあとで、次のバッチを開始します。 |
threadCount | フローを実行するときに使用するスレッドの数。 |
stopOnError | true の場合、エラーが発生するとフローの実行が終了します。残りのソースデータは無視され、残りのステップは実行されません。 失敗に関する情報はジョブドキュメント内に記録されます。 デフォルトはfalse です。 |
options | フローの各ステップ内のカスタムモジュールにパラメータとして渡すキー/バリューペア。 |
options » sourceCollection | このステップで処理するデータのコレクション。 |
options » sourceQuery | 処理するソースデータを選択するために使用するCTSクエリです。 コレクションタグでフィルタリングする場合、cts.collectionQuery('my-collection-name') を使用してください。例:"sourceQuery" : "cts.collectionQuery('default-ingestion')" 。詳細は、CTSクエリを参照してください。 |
options » provenanceGranularityLevel | 出自トラッキング情報の粒度:coarse (デフォルト)はドキュメントレベルの出自情報のみを格納します。fine はドキュメントレベルおよびプロパティレベルの出自情報を格納します。off にすると、今後のジョブ実行において出自のトラッキングが行われません。 マッピング、マッチング、マージング、マスタリング、カスタムステップにのみ適用できます。 |
steps | フロー内で実行されるステップ。 フロー内の各ステップには、シーケンス番号およびステップ定義をカスタマイズしたコピーがあります。ステップ定義はステップのタイプ(読み込み、マッピング、マッチング、マージング、マスタリング、カスタム)ごとに異なります。 |
読み込みステップの設定
"1" : {
"name" : "MyIngestionStep",
"description" : "This is my ingestion step.",
"stepDefinitionName" : "default-ingestion",
"stepDefinitionType" : "INGESTION",
"batchSize" : 100,
"threadCount" : 4,
"customHook" : {
"module" : "/custom-modules/your-step-type/your-hook-directory/your-hook-module-name.sjs",
"parameters" : {},
"user" : "flow-operator",
"runBefore" : false
},
"options" : {
"stepUpdate" : false,
"acceptsBatch" : false,
"targetDatabase" : "data-hub-STAGING",
"collections" : [ "default-ingestion" ],
"additionalCollections" : [],
"outputFormat" : "json"
},
"fileLocations" : {
"inputFilePath" : "path/to/folder",
"inputFileType" : "json",
"outputURIReplacement" : "output/URI,'substitute/URI'"
}
},
フィールド | 説明 |
---|---|
name | ステップインスタンスの名前です。 |
description | ステップの説明です。 |
stepDefinitionName | ステップ定義の名前。ステップ定義のデフォルトあるいはカスタムのもの。 カスタムのステップ定義は、QuickStartあるいはGradleタスクhubCreateStepDefinitionによって作成可能。 ヒント: デフォルトのステップタイプ(読み込み、マッピング、マスタリング)をカスタマイズしている場合、値はdefault-ingestion 、default-mapping 、default-mastering のままにしておいてください。 |
stepDefinitionType | ステップのタイプの定義。INGESTION、MAPPING、MATCHING、MERGING、MASTERING、CUSTOMのいずれか。 |
batchSize | 1つのバッチで処理するドキュメントの数。各バッチでは、フロー内のステップを最初から最後まですべて実行したあとで、次のバッチを開始します。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
threadCount | フローを実行するときに使用するスレッドの数。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
customHook | ステップの前後に追加処理を行うフックの定義。 カスタムフックモジュールの作成および手作業によるステップへのカスタムフックの追加を参照してください。 |
customHook » module | このカスタムフックモジュールへのパスです。 |
customHook » parameters | このカスタムフックモジュールに渡すパラメータ(キー/バリューのペア)です。 |
customHook » user | このモジュールを実行するためのユーザーアカウントです。デフォルトはこのフローを実行しているユーザーです(flow-operator など)。 |
customHook » runBefore | ステップ前のフックの場合、trueと指定します。ステップ後のフックの場合、falseと指定します。 |
options » stepUpdate | true の場合、カスタムモジュールはデータベース内のレコードを直接変更できます(挿入、削除、ロック)。それ以外の場合は、カスタムモジュールはコンテンツオブジェクトをデータハブAPIに渡すことにより、間接的に変更を行います。 データベースへの直接の変更が必要となることは、ほとんどありません。 統合マスタリングステップでは、デフォルトはtrue です。それ以外のタイプのステップでは、デフォルトはfalse です。 |
options » acceptsBatch | true の場合、バッチ内のすべてのレコードは1回のステップ実行において処理されます。それ以外の場合は、バッチ内の各レコードごとにステップが再開・実行されます。 |
options » targetDatabase | 読み込まれたデータの保存先としてステージングデータベースを選択します。デフォルトは、data-hub-STAGING です。 |
options » collections | 結果のレコードに割り当てられるコレクションタグ。 |
additionalCollections | デフォルトのコレクション以外に、結果のレコードに割り当てられる追加のコレクションタグ。 |
options » outputFormat | 処理済みのレコードの形式。テキスト、JSON、XML、バイナリ。 |
fileLocations » inputFilePath | ソースファイルの場所です。 |
fileLocations » inputFileType | ソースファイルの形式。テキスト、JSON、XML、バイナリ、区切り文字付きテキスト。 |
fileLocations » outputURIReplacement | 読み込まれたレコードのURIをカスタマイズするための置換リスト(カンマ区切りで記載)。 このリストは、正規表現パターンとその置換文字列(形式:pattern,'string',pattern,'string',... で構成されています。置換文字列は一重引用符で囲む必要があります。 |
マッピングステップの設定
"2" : {
"name" : "MyMappingStep",
"description" : "This is my mapping step.",
"stepDefinitionName" : "default-mapping",
"stepDefinitionType" : "MAPPING",
"batchSize" : 100,
"threadCount" : 4,
"customHook" : {
"module" : "/custom-modules/your-step-type/your-hook-directory/your-hook-module-name.sjs",
"parameters" : {},
"user" : "flow-operator",
"runBefore" : false
},
"options" : {
"stepUpdate" : false,
"acceptsBatch" : false,
"sourceDatabase" : "data-hub-STAGING",
"sourceCollection" : "MyIngestionStep",
"sourceQuery" : "cts.collectionQuery('my-custom-query')",
"constrainSourceQueryToJob" : false,
"targetEntity" : "MyEntity",
"validateEntity" : false,
"targetDatabase" : "data-hub-FINAL",
"collections" : [ "default-mapping" ],
"additionalCollections" : [],
"outputFormat" : "json",
"provenanceGranularityLevel" : "fine",
"mapping" : {
"name" : "mapping-name",
"version" : "1"
}
}
},
フィールド | 説明 |
---|---|
name | ステップインスタンスの名前です。 |
description | ステップの説明です。 |
stepDefinitionName | ステップ定義の名前。ステップ定義のデフォルトあるいはカスタムのもの。 カスタムのステップ定義は、QuickStartあるいはGradleタスクhubCreateStepDefinitionによって作成可能。 ヒント: デフォルトのステップタイプ(読み込み、マッピング、マスタリング)をカスタマイズしている場合、値はdefault-ingestion 、default-mapping 、default-mastering のままにしておいてください。 |
stepDefinitionType | ステップのタイプの定義。INGESTION、MAPPING、MATCHING、MERGING、MASTERING、CUSTOMのいずれか。 |
batchSize | 1つのバッチで処理するドキュメントの数。各バッチでは、フロー内のステップを最初から最後まですべて実行したあとで、次のバッチを開始します。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
threadCount | フローを実行するときに使用するスレッドの数。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
customHook | ステップの前後に追加処理を行うフックの定義。 カスタムフックモジュールの作成および手作業によるステップへのカスタムフックの追加を参照してください。 |
customHook » module | このカスタムフックモジュールへのパスです。 |
customHook » parameters | このカスタムフックモジュールに渡すパラメータ(キー/バリューのペア)です。 |
customHook » user | このモジュールを実行するためのユーザーアカウントです。デフォルトはこのフローを実行しているユーザーです(flow-operator など)。 |
customHook » runBefore | ステップ前のフックの場合、trueと指定します。ステップ後のフックの場合、falseと指定します。 |
options » stepUpdate | true の場合、カスタムモジュールはデータベース内のレコードを直接変更できます(挿入、削除、ロック)。それ以外の場合は、カスタムモジュールはコンテンツオブジェクトをデータハブAPIに渡すことにより、間接的に変更を行います。 データベースへの直接の変更が必要となることは、ほとんどありません。 統合マスタリングステップでは、デフォルトはtrue です。それ以外のタイプのステップでは、デフォルトはfalse です。 |
options » acceptsBatch | true の場合、バッチ内のすべてのレコードは1回のステップ実行において処理されます。それ以外の場合は、バッチ内の各レコードごとにステップが再開・実行されます。 |
options » sourceDatabase | 読み込まれたデータの保存先としてステージングデータベースを選択します。デフォルトは、data-hub-STAGING です。 |
options » sourceCollection | このステップで処理するデータのコレクション。 |
options » sourceQuery | 処理するソースデータを選択するために使用するCTSクエリです。 コレクションタグでフィルタリングする場合、cts.collectionQuery('my-collection-name') を使用してください。例:"sourceQuery" : "cts.collectionQuery('default-ingestion')" 。詳細は、CTSクエリを参照してください。 |
options » constrainSourceQueryToJob | true の場合、ステップを実行したのと同じジョブ内で作成あるいは修正されたドキュメントに対してクエリが実行されます。それ以外の場合は、クエリはジョブIDを無視します。 例えば、sourceQuery がcts.collectionQuery('example') でconstrainSourceQueryToJob がtrue の場合、このクエリはexample コレクションに含まれ、現在のジョブで作成あるいは修正されたドキュメントを検索します。 デフォルトはfalse です。 |
options » targetEntity | ソースデータに対してマッピングするエンティティ。 |
options » validateEntity | マッピング済みのエンティティインスタンスを、エンティティモデルに基づくスキーマドキュメントに対して検証するか否か、またどのようなアクションを取るのかを設定します。false の場合、検証がスキップされます。accept の場合、マッピング済みエンティティインスタンスをデータベースに書き込みます(検証結果を問わず)。reject の場合、検証が失敗した場合にはマッピング済みエンティティインスタンスのデータベースへの書き込みをスキップします。デフォルトはfalse です。詳細は、about-mapping.html#about-mapping__validation-of-mapped-expressionsを参照してください。 |
options » targetDatabase | マッピング済みデータの保存先としてステージングデータベースを選択します。デフォルトは、data-hub-FINAL です。 |
options » collections | 結果のレコードに割り当てられるコレクションタグ。 |
additionalCollections | デフォルトのコレクション以外に、結果のレコードに割り当てられる追加のコレクションタグ。 |
options » outputFormat | 処理済みのレコードの形式。テキスト、JSON、XML、バイナリ。 |
options » provenanceGranularityLevel | 出自トラッキング情報の粒度:coarse (デフォルト)はドキュメントレベルの出自情報のみを格納します。fine はドキュメントレベルおよびプロパティレベルの出自情報を格納します。off にすると、今後のジョブ実行において出自のトラッキングが行われません。 |
options » mapping | targetEntity のプロパティをソースデータのフィールドにマッピングする方法。 |
options » mapping » name | your-project-root/mappings/your-mapping-name/mapping.version.jsonで定義されているマッピングの名前。 |
options » mapping » version | 使用するマッピングのバージョン。マッピングはyour-project-root/mappings/your-mapping-name/mapping.version.jsonで定義されている必要があります。 |
マッチングステップの設定
"3" : {
"name" : "MyMatchingStep",
"description" : "This is my matching step.",
"stepDefinitionName" : "default-matching",
"stepDefinitionType" : "MATCHING",
"batchSize" : 100,
"threadCount" : 4,
"customHook" : {
"module" : "/custom-modules/your-step-type/your-hook-directory/your-hook-module-name.sjs",
"parameters" : {},
"user" : "flow-operator",
"runBefore" : false
},
"options" : {
"stepUpdate" : false,
"acceptsBatch" : false,
"sourceDatabase" : "data-hub-FINAL",
"sourceCollection" : "MyMappingStep",
"sourceQuery" : "cts.collectionQuery('my-custom-query')",
"constrainSourceQueryToJob" : false,
"targetEntity" : "MyEntity",
"targetDatabase" : "data-hub-FINAL",
"collections" : [ "MyMatchingStep", "MyPersonEntity" ],
"additionalCollections" : [],
"provenanceGranularityLevel" : "fine",
"matchOptions" : { ...}
}
},
フィールド | 説明 |
---|---|
name | ステップインスタンスの名前です。 |
description | ステップの説明です。 |
stepDefinitionName | ステップ定義の名前。ステップ定義のデフォルトあるいはカスタムのもの。 カスタムのステップ定義は、QuickStartあるいはGradleタスクhubCreateStepDefinitionによって作成可能。 ヒント: デフォルトのステップタイプ(読み込み、マッピング、マスタリング)をカスタマイズしている場合、値はdefault-ingestion 、default-mapping 、default-mastering のままにしておいてください。 |
stepDefinitionType | ステップのタイプの定義。INGESTION、MAPPING、MATCHING、MERGING、MASTERING、CUSTOMのいずれか。 |
batchSize | 1つのバッチで処理するドキュメントの数。各バッチでは、フロー内のステップを最初から最後まですべて実行したあとで、次のバッチを開始します。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
threadCount | フローを実行するときに使用するスレッドの数。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
customHook | ステップの前後に追加処理を行うフックの定義。 カスタムフックモジュールの作成および手作業によるステップへのカスタムフックの追加を参照してください。 |
customHook » module | このカスタムフックモジュールへのパスです。 |
customHook » parameters | このカスタムフックモジュールに渡すパラメータ(キー/バリューのペア)です。 |
customHook » user | このモジュールを実行するためのユーザーアカウントです。デフォルトはこのフローを実行しているユーザーです(flow-operator など)。 |
customHook » runBefore | ステップ前のフックの場合、trueと指定します。ステップ後のフックの場合、falseと指定します。 |
options » stepUpdate | true の場合、カスタムモジュールはデータベース内のレコードを直接変更できます(挿入、削除、ロック)。それ以外の場合は、カスタムモジュールはコンテンツオブジェクトをデータハブAPIに渡すことにより、間接的に変更を行います。 データベースへの直接の変更が必要となることは、ほとんどありません。 統合マスタリングステップでは、デフォルトはtrue です。それ以外のタイプのステップでは、デフォルトはfalse です。 |
options » acceptsBatch | true の場合、バッチ内のすべてのレコードは1回のステップ実行において処理されます。それ以外の場合は、バッチ内の各レコードごとにステップが再開・実行されます。 |
options » sourceDatabase | マッピング済みデータを保存したファイナルデータベースを選択します。デフォルトは、data-hub-FINAL です。 |
options » sourceCollection | このステップで処理するデータのコレクション。 |
options » sourceQuery | 処理するソースデータを選択するために使用するCTSクエリです。 コレクションタグでフィルタリングする場合、cts.collectionQuery('my-collection-name') を使用してください。例:"sourceQuery" : "cts.collectionQuery('default-ingestion')" 。詳細は、CTSクエリを参照してください。 |
options » constrainSourceQueryToJob | true の場合、ステップを実行したのと同じジョブ内で作成あるいは修正されたドキュメントに対してクエリが実行されます。それ以外の場合は、クエリはジョブIDを無視します。 例えば、sourceQuery がcts.collectionQuery('example') でconstrainSourceQueryToJob がtrue の場合、このクエリはexample コレクションに含まれ、現在のジョブで作成あるいは修正されたドキュメントを検索します。 デフォルトはfalse です。 |
options » targetEntity | ソースデータに対してマッピングするエンティティ。 |
options » targetDatabase | Source Databaseで選択したのと同じデータベースを選択します。デフォルトは、data-hub-FINAL です。 注: 分割マスタリング(マッチングステップとマージングステップからなる)では、両方のステップにおいてソースデータベースとターゲットデータベースが同じである必要があります。 |
options » collections | 結果のレコードに割り当てられるコレクションタグ。 |
additionalCollections | デフォルトのコレクション以外に、結果のレコードに割り当てられる追加のコレクションタグ。 |
options » provenanceGranularityLevel | 出自トラッキング情報の粒度:coarse (デフォルト)はドキュメントレベルの出自情報のみを格納します。fine はドキュメントレベルおよびプロパティレベルの出自情報を格納します。off にすると、今後のジョブ実行において出自のトラッキングが行われません。 |
マッチオプション
"matchOptions" : {
"dataFormat" : "json",
"propertyDefs" : {
"property" : [
{
"name" : "ssn",
"namespace" : "",
"localname" : "IdentificationID"
},
]
},
"algorithms" : {
"algorithm" : [
{
"name" : "std-reduce",
"function" : "standard-reduction",
"namespace" : "",
"at" : ""
},
]
},
"collections" : {
"content" : [ "my-content-collection" ]
},
"scoring" : {
"add" : [
{
"propertyName" : "ssn",
"weight" : "50"
},
],
"expand" : [
{
"propertyName" : "first-name",
"algorithmRef" : "thesaurus",
"weight" : "6",
"thesaurus" : "/mdm/config/thesauri/first-name-synonyms.xml"
},
{
"propertyName" : "last-name",
"algorithmRef" : "dbl-metaphone",
"weight" : "8",
"dictionary" : "name-dictionary.xml",
"distanceThreshold" : "50"
}
],
"reduce" : [
{
"algorithmRef" : "std-reduce",
"weight" : "4",
"allMatch" : { "property" : ["last-name", "addr1"] }
}
]
},
"actions" : {
"action" : [
{
"name" : "my-custom-action",
"function" : "custom-action",
"namespace" : "http://marklogic.com/smart-mastering/action",
"at" : "/custom-action.xqy"
}
]
},
"thresholds" : {
"threshold" : [
{ "above" : "30", "label" : "Possible Match" },
{ "above" : "50", "label" : "Likely Match", "action" : "notify" },
{ "above" : "68", "label" : "Definitive Match", "action" : "merge" },
{ "above" : "75", "label" : "Custom Match", "action" : "my-custom-action" }
]
},
"tuning" : {
"maxScan" : 200
}
},
フィールド | 説明 |
---|---|
matchOptions | マッチの可能性があるものを探すための設定。 Smart Mastering Core - Matching Optionsを参照してください。 |
dataFormat | ソースレコードの形式。テキスト、JSON、XML、バイナリ。 |
propertyDefs | 比較するプロパティの定義。 |
propertyDefs » property » name | このプロパティ定義のエイリアスです。 |
propertyDefs » property » namespace | (オプション) 比較対象であるXML要素あるいはJSONプロパティ(レコードフィールド)が含まれる名前空間。 |
propertyDefs » property » localname | 比較対象であるXML要素あるいはJSONプロパティ(レコードフィールド)の名前。 |
algorithms | 値を比較するアルゴリズムの定義。 各アルゴリズムは、マッチタイプ(Exact、Synonym、Double Metaphone、Reduce、Zip、Custom)に対応しています。デフォルトのアルゴリズムは、Exactマッチタイプです(2つの値が同じかどうかを判断します)。 |
algorithms » algorithm » name | このアルゴリズム定義のエイリアスです。 |
algorithms » algorithm » function | このアルゴリズム定義が選択された場合に実行される関数。 |
algorithms » algorithm » namespace | (オプション) この関数を含むモジュールの名前空間。 |
algorithms » algorithm » at | この関数を含むモジュールのパス。 |
collections | 比較対象となるデータセットの範囲を決定するために使用されるコレクション。デフォルトのコレクションを上書きします。content要素が複数指定されている場合、データセットはこれらのコレクションの論理積の部分に限定されます。 |
collections » content | 比較されるデータセットを決定するために使用される、1つあるいは複数のコレクション。 |
scoring | 割り当てられた重みに基づき、どのように比較がスコアリングされるのかを定義するルール(add/expand/reduce)。スコアの上限は、すべての重み属性の合計となります。マッチ処理ではシンプルなスコアリングオプションを使用します(プロパティに重みを付けて、それぞれの影響度を調整します)。 関連度スコアを参照してください。 |
scoring » add | レコード間で値を比較し、完全一致した場合に割り当てられた重みがスコアに追加される対象となるプロパティ。 |
scoring » add » propertyName | このステップのmatchOptions/propertyDefsノード配下にあるプロパティ定義のエイリアス。 |
scoring » add » weight | 2つのレコードのプロパティ値が完全一致した場合にスコアに加えられる重み。 |
scoring » expand | マッチを判断するために別のアルゴリズムで値を比較する対象となるプロパティ。例えば、一方が他方のシノニムであった場合、あるいはこれらの値の発音が似ている場合、ポジティブなマッチだと判断されます。このような場合、割り当てられた重みがスコアに追加されます。 |
scoring » expand » propertyName | このステップのmatchOptions/propertyDefsノード配下にあるプロパティ定義のエイリアス。 |
scoring » expand » algorithmRef | このステップのmatchOptions/algorithmsノード配下にあるアルゴリズム定義のエイリアス。 |
scoring » expand » weight | 2つのレコードのプロパティ値が、選択されたアルゴリズムにおいて一致している可能性がある場合にスコアに加えられる重み。 |
scoring » expand » thesaurus | MarkLogicサーバーデータベースに格納され、同義語を決定するために使用するシソーラスの場所。 参照:シソーラスドキュメントを管理する |
scoring » expand » dictionary | 単語の発音の比較時に使用される音声辞書のデータベース内の場所。 参照:カスタム辞書 |
scoring » expand » distanceThreshold | 2つの文字列で音声の差異(距離)がないとされる(=文字列が類似している)と判断する際のしきい値。 |
scoring » reduce | マッチした値が本当はマッチではない可能性があるプロパティの組み合わせ。例えば、同じ家族の2人は名字と住所が同じなために同一人物と誤認される可能性があります。このような場合、このマッチの重要度を減らすための重みを割り当てることができます。 |
scoring » reduce » algorithmRef | このステップのmatchOptions/algorithmsノード配下にあるアルゴリズム定義のエイリアス。 |
scoring » reduce » weight | マッチの重みを減らす大きさを示す正の整数。 |
scoring » reduce » allMatch | 2つのレコードにおいてこれらのプロパティ値が等しい場合に、誤ってマッチだとみなされる可能性があるプロパティの組み合わせ。 |
actions | しきい値を超えた場合に実行されるカスタムアクション。 Custom Match Actionsを参照してください。 |
actions » action | しきい値を超えた場合に実行されるカスタムアクション。 |
actions » action » name | このアクション定義のエイリアスです。 |
actions » action » function | このアクション定義が選択された場合に実行される関数。 |
actions » action » namespace | (オプション) この関数を含むモジュールの名前空間。 |
actions » action » at | この関数を含むモジュールのパス。 |
thresholds | アクションをトリガーする際のスコアのしきい値。 |
thresholds » threshold | スコアしきい値の定義。しきい値を超えた場合のアクションを含む。 |
thresholds » threshold » above | スコアのしきい値。マッチスコアがこの値を超えた場合に、アクションが実行されます。 |
thresholds » threshold » label | このしきい値定義のエイリアスです。 |
thresholds » threshold » action | スコアがしきい値を超えた場合に実行されるアクション。可能な値:
|
tuning » maxScan | マージの対象と判断されるマッチの可能性が高いものの最大個数。 |
マージングステップの設定
"4" : {
"name" : "MyMergingStep",
"description" : "This is my merging step.",
"stepDefinitionName" : "default-merging",
"stepDefinitionType" : "MERGING",
"batchSize" : 100,
"threadCount" : 4,
"customHook" : {
"module" : "/custom-modules/your-step-type/your-hook-directory/your-hook-module-name.sjs",
"parameters" : {},
"user" : "flow-operator",
"runBefore" : false
},
"options" : {
"stepUpdate" : false,
"acceptsBatch" : false,
"sourceDatabase" : "data-hub-FINAL",
"sourceCollection" : "MyMatchingStep",
"sourceQuery" : "cts.collectionQuery('my-custom-query')",
"constrainSourceQueryToJob" : false,
"targetEntity" : "MyEntity",
"targetDatabase" : "data-hub-FINAL",
"collections" : [ "MyMergingStep", "MyPersonEntity" ],
"additionalCollections" : [],
"outputFormat" : "json",
"provenanceGranularityLevel" : "fine",
"mergeOptions" : { ...}
}
},
フィールド | 説明 |
---|---|
name | ステップインスタンスの名前です。 |
description | ステップの説明です。 |
stepDefinitionName | ステップ定義の名前。ステップ定義のデフォルトあるいはカスタムのもの。 カスタムのステップ定義は、QuickStartあるいはGradleタスクhubCreateStepDefinitionによって作成可能。 ヒント: デフォルトのステップタイプ(読み込み、マッピング、マスタリング)をカスタマイズしている場合、値はdefault-ingestion 、default-mapping 、default-mastering のままにしておいてください。 |
stepDefinitionType | ステップのタイプの定義。INGESTION、MAPPING、MATCHING、MERGING、MASTERING、CUSTOMのいずれか。 |
batchSize | 1つのバッチで処理するドキュメントの数。各バッチでは、フロー内のステップを最初から最後まですべて実行したあとで、次のバッチを開始します。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
threadCount | フローを実行するときに使用するスレッドの数。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
customHook | ステップの前後に追加処理を行うフックの定義。 カスタムフックモジュールの作成および手作業によるステップへのカスタムフックの追加を参照してください。 |
customHook » module | このカスタムフックモジュールへのパスです。 |
customHook » parameters | このカスタムフックモジュールに渡すパラメータ(キー/バリューのペア)です。 |
customHook » user | このモジュールを実行するためのユーザーアカウントです。デフォルトはこのフローを実行しているユーザーです(flow-operator など)。 |
customHook » runBefore | ステップ前のフックの場合、trueと指定します。ステップ後のフックの場合、falseと指定します。 |
options » stepUpdate | true の場合、カスタムモジュールはデータベース内のレコードを直接変更できます(挿入、削除、ロック)。それ以外の場合は、カスタムモジュールはコンテンツオブジェクトをデータハブAPIに渡すことにより、間接的に変更を行います。 データベースへの直接の変更が必要となることは、ほとんどありません。 統合マスタリングステップでは、デフォルトはtrue です。それ以外のタイプのステップでは、デフォルトはfalse です。 |
options » acceptsBatch | true の場合、バッチ内のすべてのレコードは1回のステップ実行において処理されます。それ以外の場合は、バッチ内の各レコードごとにステップが再開・実行されます。 |
options » sourceDatabase | マッチングステップで選択したソースデータベースと同じものを選択してください。デフォルトは、data-hub-FINAL です。 |
options » sourceCollection | このステップで処理するデータのコレクション。 |
options » sourceQuery | 処理するソースデータを選択するために使用するCTSクエリです。 コレクションタグでフィルタリングする場合、cts.collectionQuery('my-collection-name') を使用してください。例:"sourceQuery" : "cts.collectionQuery('default-ingestion')" 。詳細は、CTSクエリを参照してください。 |
options » constrainSourceQueryToJob | true の場合、ステップを実行したのと同じジョブ内で作成あるいは修正されたドキュメントに対してクエリが実行されます。それ以外の場合は、クエリはジョブIDを無視します。 例えば、sourceQuery がcts.collectionQuery('example') でconstrainSourceQueryToJob がtrue の場合、このクエリはexample コレクションに含まれ、現在のジョブで作成あるいは修正されたドキュメントを検索します。 デフォルトはfalse です。 |
options » targetEntity | ソースデータに対してマッピングするエンティティ。 |
options » targetDatabase | Source Databaseで選択したのと同じデータベースを選択します。デフォルトは、data-hub-FINAL です。 注: 分割マスタリング(マッチングステップとマージングステップからなる)では、両方のステップにおいてソースデータベースとターゲットデータベースが同じである必要があります。 |
options » collections | 結果のレコードに割り当てられるコレクションタグ。 |
additionalCollections | デフォルトのコレクション以外に、結果のレコードに割り当てられる追加のコレクションタグ。 |
options » outputFormat | 処理済みのレコードの形式。テキスト、JSON、XML、バイナリ。 |
options » provenanceGranularityLevel | 出自トラッキング情報の粒度:coarse (デフォルト)はドキュメントレベルの出自情報のみを格納します。fine はドキュメントレベルおよびプロパティレベルの出自情報を格納します。off にすると、今後のジョブ実行において出自のトラッキングが行われません。 |
マージングオプション
"mergeOptions" : {
"matchOptions" : "mlw-match",
"propertyDefs" : {
"properties" : [
{
"name" : "ssn",
"localname" : "IdentificationID",
"namespace" : ""
},
{
"name" : "shallow",
"path" : "/es:envelope/es:headers/shallow"
}
],
"namespaces" : {
"has" : "has",
"m" : "http://marklogic.com/smart-mastering/merging",
"es" : "http://marklogic.com/entity-services"
}
},
"algorithms" : {
"stdAlgorithm" : {
"timestamp" : { "path" : "/es:envelope/es:headers/sm:sources/sm:source/sm:dateTime" },
"namespaces" : {
"sm" : "http://marklogic.com/smart-mastering",
"es" : "http://marklogic.com/entity-services"
}
},
"custom" : [
{
"name" : "customMerge",
"function" : "doCustomMerge",
"namespace" : "http://marklogic.com/smart-mastering/merging",
"at" : "/custom-merge-xqy.xqy"
}
],
"collections" : {
"onMerge" : {
"function" : "collections",
"namespace" : "test/merge-collection-algorithm",
"at" : "/test/suites/customizing-collections/lib/merged-collections.xqy"
},
"onArchive" : {
"remove" : { "collection" : ["Entity"] },
"add" : { "collection" : ["custom-archived"] }
},
"onNoMatch" : {
"function" : "noMatchCollections",
"namespace" : "",
"at" : "/test/suites/customizing-collections/lib/noMatchCollections.sjs"
},
"onNotification" : {
"set" : { "collection" : ["notification"] }
}
}
},
"mergeStrategies" : [
{
"name" : "crm-source-weight",
"algorithmRef" : "standard",
"sourceWeights" : [
{
"source" : {
"name" : "CRM",
"weight" : "10"
}
}
]
},
{
"name" : "length-weight",
"algorithmRef" : "standard",
"maxValues" : "1",
"length" : { "weight" : "10" }
}
],
"merging" : [
{
"propertyName" : "ssn",
"maxValues" : "1",
"maxSources" : "1",
"strategy" : "crm-source-weight"
},
{
"propertyName" : "name",
"maxValues" : "1",
"doubleMetaphone" : {
"distanceThreshold" : "50"
},
"synonymsSupport" : "true",
"thesaurus" : "/mdm/config/thesauri/first-name-synonyms.xml",
"length" : { "weight" : "8" }
},
{
"propertyName" : "dob",
"maxValues" : "1",
"algorithmRef" : "standard",
"sourceWeights" : {
"source" : {
"name" : "better-source",
"weight" : "4"
}
}
},
{
"default" : "true",
"strategy" : "crm-source-weight"
}
],
"tripleMerge" : {
"function" : "custom-trips",
"namespace" : "http://marklogic.com/smart-mastering/merging",
"at" : "/custom-triple-merge.xqy",
"some-param" : 3
}
}
フィールド | 説明 |
---|---|
mergeOptions | マッチするレコードをマージする際に使用する設定。 Smart Mastering Core - Merging Optionsを参照してください。 |
matchOptions | 以前サーバーに格納されていた一連のマッチオプションの名前。 オプションの保存を参照してください。 |
propertyDefs | マージするプロパティの定義。 |
propertyDefs » properties » name | このプロパティ定義のエイリアスです。 |
propertyDefs » properties » localname | マージ対象であるXML要素あるいはJSONプロパティ(レコードフィールド)の名前。 |
propertyDefs » properties » namespace | (オプション) マージ対象であるXML要素あるいはJSONプロパティ(レコードフィールド)が含まれる名前空間。 |
propertyDefs » properties » path | マージプロパティが定義されているヘッダあるいはレコードのインスタンスセクションへのパス。
|
propertyDefs » namespaces | 名前にエイリアスを割り当てるキー/バリューペア。キーはエイリアス、値(バリュー)は名前空間(省略なし)です。 |
algorithms | 値をマージするアルゴリズムの定義。 |
algorithms » stdAlgorithm | デフォルトのマージ処理を実装する標準のアルゴリズム。 |
algorithms » stdAlgorithm » timestamp | レコード内のタイムスタンプフィールドへのパス。 このフィールドは、マージされたプロパティにどの値を使うのかを直近の利用に基づいて判断するのに使用されます。Merge Options(スタンダード)あるいはマージ戦略のMax Valuesフィールドで最大個数を指定します。 パス内で使用されている名前空間は、レコード内で定義されている必要があります。 |
algorithms » stdAlgorithm » namespaces | (オプション) 名前にエイリアスを割り当てるキー/バリューペア。キーはエイリアス、値(バリュー)は名前空間(省略なし)です。 |
algorithms » custom | 値をマージするカスタムアルゴリズムの定義。 |
algorithms » custom » name | このカスタムアルゴリズム定義のエイリアスです。 |
algorithms » custom » function | 実行するカスタムマージ関数。 |
algorithms » custom » namespace | (オプション) この関数を含むモジュールの名前空間。 |
algorithms » custom » at | この関数を含むモジュールのパス。 |
algorithms » collections | イベント発生時のコレクションタグの管理方法を指定するルール。 |
algorithms » collections » onMerge | マッチしたレコードがマージされた際に新規作成されたレコードに対して、コレクションタグを適用する方法。 コレクションタグのデフォルトセットは以下から構成されています。
|
algorithms » collections » onMerge » function | イベントが発生した場合にコレクションタグを管理する関数。 |
algorithms » collections » onMerge » namespace | (オプション) この関数を含むモジュールの名前空間。 |
algorithms » collections » onMerge » at | この関数を含むモジュールのパス。 |
algorithms » collections » onArchive | 元のコンテンツが新規レコードにマージされた後、元のレコードに対するコレクションタグの適用方法。 コレクションタグのデフォルトセットは以下から構成されています。
|
algorithms » collections » onArchive » remove | デフォルトで結合されるタグから削除される1つあるいは複数のコレクションタグ。 |
algorithms » collections » onArchive » add | デフォルトで結合されるタグに追加される1つあるいは複数のコレクションタグ。 |
algorithms » collections » onNoMatch | マッチしなかったため、すなわちマッチングスコアの合計が定義されたしきい値を超えていないためにマージされなかったレコードへのコレクションタグの適用方法。 コレクションタグのデフォルトセットは以下から構成されています。
|
algorithms » collections » onNoMatch » function | イベントが発生した場合にコレクションタグを管理する関数。 |
algorithms » collections » onNoMatch » namespace | (オプション) この関数を含むモジュールの名前空間。 |
algorithms » collections » onNoMatch » at | この関数を含むモジュールのパス。 |
algorithms » collections » onNotification | コレクションタグの通知レコードへの適用方法。コレクションタグのデフォルトセットは、mdm-notification のみで構成されています。 |
algorithms » collections » onNotification » set | デフォルトで結合されるタグを置換する1つあるいは複数のコレクションタグ。 |
mergeStrategies | 事前定義されたマージの構成。 |
mergeStrategies » name | このマージ戦略の名前。 |
mergeStrategies » algorithmRef | このステップのmergeOptions/algorithmsノード配下にあるアルゴリズム定義のエイリアス。 |
mergeStrategies » sourceWeights | ソースデータセットのリストと、それに割り当てる重み。 マッチするレコードのソースの個数がmaxSources よりも多い場合、ソースの重みに基づいてマージに含むレコードを判断します。 例:maxSources が1の場合、重みが一番大きいソースからのレコード1つだけがマージに含まれます。 |
mergeStrategies » sourceWeights » source » name | ソース名。レコードのエンベロープのheaders » sources部分に表示されているもの。 |
mergeStrategies » sourceWeights » source » weight | マージングの際にソースの優先度を判断する際に使用された重み。 |
mergeStrategies » maxValues | マージされたプロパティでの値の許容最大数。デフォルトは99です。 |
mergeStrategies » length » weight | 文字列の長さに割り当てる重み。 |
マージング | マッチしたレコードのマージ方法を指定するルール。 |
merging » propertyName | このステップのmergeOptions/propertyDefsノード配下にあるプロパティ定義のエイリアス。 |
merging » maxValues | マージされたプロパティでの値の許容最大数。デフォルトは99です。 |
merging » maxSources | マージ対象の値の取得元データソースの最大個数。 例えば、1つのソースから値をコピーする場合は、maxSources を1に設定します。 |
merging » strategy | このステップのmergeOptions/mergeStrategiesノード配下にある戦略定義のエイリアス。 |
merging » doubleMetaphone | この設定がある場合、マージする値を判断する際にダブルメタフォンアルゴリズムが使用されます。 |
merging » doubleMetaphone » distanceThreshold | 2つの文字列で音声の差異(距離)がないとされる(=文字列が類似している)と判断する際のしきい値。 |
merging » synonymsSupport | true の場合には、マージ対象の値のリストにシノニムが含まれます。シノニムは指定されたシソーラスを使って判断されます。 |
merging » thesaurus | MarkLogicサーバーデータベースに格納され、同義語を決定するために使用するシソーラスの場所。 参照:シソーラスドキュメントを管理する |
merging » length | 文字列の長さに割り当てる重み。 |
merging » algorithmRef | このステップのmergeOptions/algorithmsノード配下にあるアルゴリズム定義のエイリアス。 |
merging » sourceWeights | ソースデータセットのリストと、それに割り当てる重み。 マッチするレコードのソースの個数がmaxSources よりも多い場合、ソースの重みに基づいてマージに含むレコードを判断します。 例:maxSources が1の場合、重みが一番大きいソースからのレコード1つだけがマージに含まれます。 |
merging » sourceWeights » source » name | ソース名。レコードのエンベロープのheaders » sources部分に表示されているもの。 |
merging » sourceWeights » source » weight | マージングの際にソースの優先度を判断する際に使用された重み。 |
merging » default | true の場合、指定された戦略がデフォルトです。 重要:この設定がある場合は、propertyName 設定を含めないようにしてください。 |
merging » strategy | このステップのmergeOptions/mergeStrategiesノード配下にある戦略定義のエイリアス。 |
tripleMerge | トリプルをマージするアルゴリズムの定義。 |
tripleMerge » function | トリプルをマージする関数。 |
tripleMerge » namespace | この関数を含むモジュールの名前空間。 |
tripleMerge » at | この関数を含むモジュールのパス。 |
tripleMerge » some-param | このトリプルマージ関数に渡すパラメータ(キー/バリューのペア)です。 |
マスタリングステップの設定
"5" : {
"name" : "MyMasteringStep",
"description" : "This is my mastering step.",
"stepDefinitionName" : "default-mastering",
"stepDefinitionType" : "MASTERING",
"batchSize" : 100,
"threadCount" : "1",
"customHook" : {
"module" : "/custom-modules/your-step-type/your-hook-directory/your-hook-module-name.sjs",
"parameters" : {},
"user" : "flow-operator",
"runBefore" : false
},
"options" : {
"stepUpdate" : false,
"acceptsBatch" : false,
"sourceDatabase" : "data-hub-FINAL",
"sourceCollection" : "MyMappingStep",
"sourceQuery" : "cts.collectionQuery('my-custom-query')",
"constrainSourceQueryToJob" : false,
"targetEntity" : "MyEntity",
"targetDatabase" : "data-hub-FINAL",
"collections" : [ "default-mastering, mastered" ],
"additionalCollections" : [],
"outputFormat" : "json",
"provenanceGranularityLevel" : "fine",
"matchOptions" : { ...},
"mergeOptions" : { ...}
}
},
フィールド | 説明 |
---|---|
name | ステップインスタンスの名前です。 |
description | ステップの説明です。 |
stepDefinitionName | ステップ定義の名前。ステップ定義のデフォルトあるいはカスタムのもの。 カスタムのステップ定義は、QuickStartあるいはGradleタスクhubCreateStepDefinitionによって作成可能。 ヒント: デフォルトのステップタイプ(読み込み、マッピング、マスタリング)をカスタマイズしている場合、値はdefault-ingestion 、default-mapping 、default-mastering のままにしておいてください。 |
stepDefinitionType | ステップのタイプの定義。INGESTION、MAPPING、MATCHING、MERGING、MASTERING、CUSTOMのいずれか。 |
batchSize | 1つのバッチで処理するドキュメントの数。各バッチでは、フロー内のステップを最初から最後まですべて実行したあとで、次のバッチを開始します。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
threadCount | フローを実行するときに使用するスレッドの数。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
customHook | ステップの前後に追加処理を行うフックの定義。 カスタムフックモジュールの作成および手作業によるステップへのカスタムフックの追加を参照してください。 |
customHook » module | このカスタムフックモジュールへのパスです。 |
customHook » parameters | このカスタムフックモジュールに渡すパラメータ(キー/バリューのペア)です。 |
customHook » user | このモジュールを実行するためのユーザーアカウントです。デフォルトはこのフローを実行しているユーザーです(flow-operator など)。 |
customHook » runBefore | ステップ前のフックの場合、trueと指定します。ステップ後のフックの場合、falseと指定します。 |
options » stepUpdate | true の場合、カスタムモジュールはデータベース内のレコードを直接変更できます(挿入、削除、ロック)。それ以外の場合は、カスタムモジュールはコンテンツオブジェクトをデータハブAPIに渡すことにより、間接的に変更を行います。 データベースへの直接の変更が必要となることは、ほとんどありません。 統合マスタリングステップでは、デフォルトはtrue です。それ以外のタイプのステップでは、デフォルトはfalse です。 |
options » acceptsBatch | true の場合、バッチ内のすべてのレコードは1回のステップ実行において処理されます。それ以外の場合は、バッチ内の各レコードごとにステップが再開・実行されます。 |
options » sourceDatabase | マッピング済みデータを保存したファイナルデータベースを選択します。デフォルトは、data-hub-FINAL です。 |
options » sourceCollection | このステップで処理するデータのコレクション。 |
options » sourceQuery | 処理するソースデータを選択するために使用するCTSクエリです。 コレクションタグでフィルタリングする場合、cts.collectionQuery('my-collection-name') を使用してください。例:"sourceQuery" : "cts.collectionQuery('default-ingestion')" 。詳細は、CTSクエリを参照してください。 |
options » constrainSourceQueryToJob | true の場合、ステップを実行したのと同じジョブ内で作成あるいは修正されたドキュメントに対してクエリが実行されます。それ以外の場合は、クエリはジョブIDを無視します。 例えば、sourceQuery がcts.collectionQuery('example') でconstrainSourceQueryToJob がtrue の場合、このクエリはexample コレクションに含まれ、現在のジョブで作成あるいは修正されたドキュメントを検索します。 デフォルトはfalse です。 |
options » targetEntity | ソースデータに対してマッピングするエンティティ。 |
options » targetDatabase | マスタリング済みデータの保存先としてステージングデータベースを選択します。デフォルトは、data-hub-FINAL です。 注: 統合マスタリング(マスタリングステップ)では、ソースデータベースとターゲットデータベースは同じであるはずです。重複が見つかった場合は、元のレコードがアーカイブされ、マージされたバージョンが同じデータベースに追加されます。ターゲットデータベースが異なる場合は、カスタムモジュールを使用してカスタムステップを作成し、マスタリングステップのデフォルト動作を上書きできます。 |
options » collections | 結果のレコードに割り当てられるコレクションタグ。 |
additionalCollections | デフォルトのコレクション以外に、結果のレコードに割り当てられる追加のコレクションタグ。 |
options » outputFormat | 処理済みのレコードの形式。テキスト、JSON、XML、バイナリ。 |
options » provenanceGranularityLevel | 出自トラッキング情報の粒度:coarse (デフォルト)はドキュメントレベルの出自情報のみを格納します。fine はドキュメントレベルおよびプロパティレベルの出自情報を格納します。off にすると、今後のジョブ実行において出自のトラッキングが行われません。 |
マッチングステップセクションのマッチングオプションを参照してください。
マージングステップセクションのマージングオプションを参照してください。
カスタムステップの設定
"9" : {
"name" : "MyCustomOtherStep",
"description" : "This is my custom-other step.",
"stepDefinitionName" : "custom-step-def",
"stepDefinitionType" : "CUSTOM",
"batchSize" : 100,
"threadCount" : 4,
"customHook" : {
"module" : "/custom-modules/your-step-type/your-hook-directory/your-hook-module-name.sjs",
"parameters" : {},
"user" : "flow-operator",
"runBefore" : false
},
"options" : {
"stepUpdate" : false,
"acceptsBatch" : false,
"sourceDatabase" : "data-hub-STAGING",
"sourceCollection" : "my-collection-tag",
"sourceQuery" : "cts.collectionQuery('my-custom-query')",
"constrainSourceQueryToJob" : false,
"targetEntity" : "MyEntity",
"targetDatabase" : "data-hub-FINAL",
"collections" : [ "my-collection-tag" ],
"additionalCollections" : [],
"outputFormat" : 「json"
}
}
フィールド | 説明 |
---|---|
name | ステップインスタンスの名前です。 |
description | ステップの説明です。 |
stepDefinitionName | ステップ定義の名前。ステップ定義のデフォルトあるいはカスタムのもの。 カスタムのステップ定義は、QuickStartあるいはGradleタスクhubCreateStepDefinitionによって作成可能。 ヒント: デフォルトのステップタイプ(読み込み、マッピング、マスタリング)をカスタマイズしている場合、値はdefault-ingestion 、default-mapping 、default-mastering のままにしておいてください。 |
stepDefinitionType | ステップのタイプの定義。INGESTION、MAPPING、MATCHING、MERGING、MASTERING、CUSTOMのいずれか。 |
batchSize | 1つのバッチで処理するドキュメントの数。各バッチでは、フロー内のステップを最初から最後まですべて実行したあとで、次のバッチを開始します。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
threadCount | フローを実行するときに使用するスレッドの数。 定義されていない場合、ステップ設定内で0 あるいはnullに設定されている場合は、フロー定義内の値が使用されます。 |
customHook | ステップの前後に追加処理を行うフックの定義。 カスタムフックモジュールの作成および手作業によるステップへのカスタムフックの追加を参照してください。 |
customHook » module | このカスタムフックモジュールへのパスです。 |
customHook » parameters | このカスタムフックモジュールに渡すパラメータ(キー/バリューのペア)です。 |
customHook » user | このモジュールを実行するためのユーザーアカウントです。デフォルトはこのフローを実行しているユーザーです(flow-operator など)。 |
customHook » runBefore | ステップ前のフックの場合、trueと指定します。ステップ後のフックの場合、falseと指定します。 |
options » stepUpdate | true の場合、カスタムモジュールはデータベース内のレコードを直接変更できます(挿入、削除、ロック)。それ以外の場合は、カスタムモジュールはコンテンツオブジェクトをデータハブAPIに渡すことにより、間接的に変更を行います。 データベースへの直接の変更が必要となることは、ほとんどありません。 統合マスタリングステップでは、デフォルトはtrue です。それ以外のタイプのステップでは、デフォルトはfalse です。 |
options » acceptsBatch | true の場合、バッチ内のすべてのレコードは1回のステップ実行において処理されます。それ以外の場合は、バッチ内の各レコードごとにステップが再開・実行されます。 |
options » sourceDatabase | 読み込まれたデータの保存先としてステージングデータベースを選択します。デフォルトは、data-hub-STAGING です。 |
options » sourceCollection | このステップで処理するデータのコレクション。 |
options » sourceQuery | 処理するソースデータを選択するために使用するCTSクエリです。 コレクションタグでフィルタリングする場合、cts.collectionQuery('my-collection-name') を使用してください。例:"sourceQuery" : "cts.collectionQuery('default-ingestion')" 。詳細は、CTSクエリを参照してください。 |
options » constrainSourceQueryToJob | true の場合、ステップを実行したのと同じジョブ内で作成あるいは修正されたドキュメントに対してクエリが実行されます。それ以外の場合は、クエリはジョブIDを無視します。 例えば、sourceQuery がcts.collectionQuery('example') でconstrainSourceQueryToJob がtrue の場合、このクエリはexample コレクションに含まれ、現在のジョブで作成あるいは修正されたドキュメントを検索します。 デフォルトはfalse です。 |
options » targetEntity | ソースデータに対してマッピングするエンティティ。 |
options » targetDatabase | マッピング済みデータの保存先としてステージングデータベースを選択します。デフォルトは、data-hub-FINAL です。 |
options » collections | 結果のレコードに割り当てられるコレクションタグ。 |
additionalCollections | デフォルトのコレクション以外に、結果のレコードに割り当てられる追加のコレクションタグ。 |
options » outputFormat | 処理済みのレコードの形式。テキスト、JSON、XML、バイナリ。 |