Как использовать MarkLogic DataHub importFlow из другой базы данных - PullRequest
0 голосов
/ 14 февраля 2019

У меня есть сценарий использования, которому нужно запросить некоторые данные в одной базе данных, а затем использовать эти данные в качестве нового ввода в конвейер MarkLogic DataHub.

Я создал рабочий поток импорта и согласования.

Теперь я хочу запустить поток импорта из другой базы данных, чтобы вставить данные в промежуточную базу данных в dhf.

'use strict';

let id= "/ClueyTest/track/cluey/a2c5c32c-6e99-47c9-8b4d-5b97897509f7.json";

let options = {"dhf.projectName":"ClueyTest", "entity":"Track", "flow":"ImportClueyTracks", "flowType":"input", "dataFormat":"json"};

let rawContent = {
"trackId": "a2c5c32c-6e99-47c9-8b4d-5b97897509f7", 
"type": "Feature", 
"geometry": {
"type": "LineString", 
"coordinates": [
[5.4701967, 51.8190698], 
[5.470028, 51.8193624],
[5.470038, 51.8193624], 
[5.470048, 51.8193624], 
[5.470028, 51.8193634]]
}
, 
"properties": {
"timestamps": [
"2019-02-14T16:52:06+0100", 
"2019-02-14T16:51:07+0100", 
"2019-02-14T16:43:24+0100", 
"2019-02-14T16:43:24+0100", 
"2019-02-14T16:43:24+0100" 
]
}
, 
"tracktype": "on", 
"endTimestamp": "2019-02-14T16:51:07+0100", 
"startTimestamp": "2019-02-14T14:46:50+0100"
}

const clt = require('/entities/clueyTrack/input/ImportClueyTracks/main.sjs');

// the main in the import flow
clt.main(id,rawContent,options);

Очевидно, вам нужен рабочий поток импорта внутри вашего концентратора данных для запуска этого кода, но вопрособ общем сценарии использования как запустить поток импорта не из gradle, а из базы данных marklogic.

Весь код dhf - sjs.

1 Ответ

0 голосов
/ 14 февраля 2019

Я думаю, что использование библиотеки на стороне сервера было бы наиболее элегантно, но я думаю, что для этого требуется DataHub v4 +:

https://marklogic.github.io/marklogic-data-hub/refs/server-side-library/

HTH!

...