是否有任何可能的方法使用MLCP作为Marklogic中的计划任务批量加载数据
答案 0 :(得分:2)
MarkLogic
内的计划任务可以调用外部服务(使用HTTP
),但他们无法运行外部命令。你有一些选择:
MLCP
作业,在Linux上使用cron或其他内容; JavaScript
或XQuery
重新构建您的负载;您可以从文件系统中检索数据,通过某些转换运行它,并使用MarkLogic
中运行的模块将其插入数据库; HTTP
请求并让Java应用服务器调用MLCP
我认为我从第一个选项开始,但哪一个最好取决于您的用例。
答案 1 :(得分:2)
您无法通过计划任务调用mlcp;我建议尝试像Apache Camel这样的东西。
Camel有一个Timer组件和一个Quartz组件,其中任何一个都可以用于调度。
这是一个带有路由(注释掉但仍然可操作)的Camel文件示例,该路由Timer启动,然后将文件写入磁盘并通过mlcp摄取它 - https://github.com/rjrudin/ml-camel-client/blob/master/src/main/resources/META-INF/camel-routes.xml。
我在Camel中进行各种处理/调度,然后最终通过mlcp摄取内容,取得了很大的成功。我认为它非常适合您的用例,因此您可以利用mlcp最擅长的功能 - 尽可能快地将内容添加到MarkLogic中。