mlcpによる読み込み
MarkLogic Content Pump(mlcp)は、MarkLogicが提供するスタンドアロンのJavaユーティリティです。
mlcpを使って、MarkLogicサーバーにデータを読み込むことができます。フローを2つセットアップできます。
- mlcpを使った読み込みステップのみを含んだフロー。
- 他のツールを使ったマッピングおよびマスタリング(統合あるいは分割)ステップを含んだフロー。
始める前に
以下が必要です。
- mlcp
- MarkLogicデータハブプロジェクト
手順
- フローを作成します。
- 読み込みステップを作成します。
注: mlcpを呼び出すためにコマンドラインで使用したパラメータ値は、読み込みステップの設定を上書きします。
- 読み込みステップを設定します。mlcpコマンドコードをコピーします。
読み込みステップの設定を選択したならば、mlcpコマンドフィールドの内容をクリップボードにコピーします。
- コマンドラインウィンドウを開き、mlcpプロジェクトのルートディレクトリに移動します。
-
プロジェクトのルートで
mlcp
コマンドを実行します(-transform*
パラメータを使用)。- QuickStartを使用:mlcpコマンドコードをコマンドラインに貼り付けて実行します。
- Gradleを使用:以下のコードをコマンドラインに貼り付け、カスタマイズし、実行します。
mlcp.sh import \ -host "localhost" -port "8010" \ -username "flow-operator-user-account" -password "*****" \ -input_file_path "/path/to/your/input/directory" \ -input_file_type "delimited_text" \ -output_collections "ingestion-only,input" \ -output_permissions "rest-reader,read,rest-writer,update" \ -generate_uri "true" \ -output_uri_replace ".*input,'/ingestion-flow/json/'" \ -document_type "json" \ -transform_module "/data-hub/5/transforms/mlcp-flow-transform.sjs" \ -transform_param "flow-name=MyFlow,step=1"
mlcp.bat import ^ -host "localhost" -port "8010" ^ -username "flow-operator-user-account" -password "*****" ^ -input_file_path "/path/to/your/input/directory" ^ -input_file_type "delimited_text" ^ -output_collections "ingestion-only,input" ^ -output_permissions "rest-reader,read,rest-writer,update" ^ -generate_uri "true" ^ -output_uri_replace ".*input,'/ingestion-flow/json/'" ^ -document_type "json" ^ -transform_module "/data-hub/5/transforms/mlcp-flow-transform.sjs" ^ -transform_param "flow-name=MyFlow,step=1"
-host
- MarkLogicサーバーインスタンス用のホストです。
-port
- MarkLogicサーバーインスタンス用のポートです。
-input_file_path
- ソースファイルの場所です。
-input_file_type
- ソースファイルの形式。テキスト、JSON、XML、バイナリ、区切り文字付きテキスト。詳細は、mlcp: 対応している入力形式のまとめを参照してください。
-generate_uri
true
の場合、各新規レコードに関連付けられているカスタムURI。-output_collections
- 新規レコードに関連付けられたコレクションタグを含む、カンマ区切りの文字列です。
-output_permissions
- 読み込まれたデータにアクセスできるロール(カンマ区切りで記載)。
-output_uri_replace
-
読み込まれたレコードのURIをカスタマイズするための置換リスト(カンマ区切りで記載)。このリストは、正規表現パターンとその置換文字列(形式:
pattern,'string',pattern,'string',...
で構成されています。置換文字列は一重引用符で囲む必要があります。詳細は、デフォルトURIの変換を参照してください。
-document_type
- 処理済みのレコードの形式。テキスト、JSON、XML、バイナリ。 以下の値が有効です。
json
xml
text
バイナリ
入力ファイルタイプと違うドキュメントタイプを指定した場合、mlcpが変換を行います。
-transform_module
- /data-hub/5/transforms/mlcp-flow-transform.sjsである必要があります。このモジュールは、データハブのインストール時に MODULESデータベースに追加されています。
-transform_param
-
カンマ区切りのキー/バリューのペアが/data-hub/5/transforms/mlcp-flow-transform.sjsモジュールに渡されます。以下のキーが有効です。
flow-name
. わかりやすいフロー名を付けます。step
. シーケンス内のステップの順序を示す数字。job-id
.(オプション) このフローの実行に対応付けられた一意のジョブID。このオプションは、フローの実行がより大きなプロセスの一部である場合に使用できます(例えば、NiFiが独自のジョブ/プロセスIDによりオーケストレーションしたプロセスなど)。既存のデータハブのジョブIDと同じにすることはできません。指定していない場合は、一意のデータハブジョブIDが割り当てられます。options
.(オプション)フローに渡す追加オプション。JSONオブジェクトである必要があります。