MarkLogic version 9.0-6.2
MLCP 版本 9.0.6
我有一个客户集合,每个文档都有一个客户根节点,如下所示。
<customer>
<customerId>123</customerId>
....
</customer>
我需要将集合中的所有文档导出到一个名为 customerinfo 的新根目录下的单个输出文件中
<customerInfo>
<customer>
<customerId>123</customerId>
....
</customer>
<customer>
<customerId>456</customerId>
....
</customer>
</customerInfo>
使用以下代码,我能够将集合导出为目录下的单个文档。
mlcp.sh export -ssl
-host localhost
-port 8010
-username uname
-password pword
-mode local
-output_file_path /test/TestFiles/customer
-collection_filter customer
-output_type document
是否可以在新根节点下将输出聚合到单个文档中?
MLCP 可以在导入期间转换文档,但在导出期间不能转换文档。不过,在 XQuery 中将查询结果合并到单个文档中相当简单:
xdmp:save('/test/TestFiles/customer/merged.xml',
<root>{ collection('customer') }</root>
)
您还可以查看其他 MarkLogic 工具,如 corb 或数据移动 SDK。
ml-gradle 有一些使用 MarkLogic 的数据移动 SDK 的任务,因此理想情况下您无需编写任何代码即可执行此操作 - https://github.com/marklogic-community/ml-gradle/wiki/Exporting-data