问题标签 [mlcp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
450 浏览

uri - 使用 MLCP 时转换默认 URI

我有一个分隔文件作为输入源,用于通过 unix 使用 conten-pump 在 marklogic 中摄取数据。文件中没有这样的列是唯一的,可用作 URI。问题在于,由于不可能重复(URI),因此对于该特定 URI,这些记录将被跳过/覆盖。可用的语法有: - delimited_uri_id*my_column_name* output_uri_prefix*my_prefix_string* output_uri_suffix*my_suffix_string* output_uri_replace pattern,'string'

mlcp 的命令是:

这里的问题是,如果我修改上述命令并包括:

执行此命令需要时间(以纳秒为单位)和所有 URI 的前缀。但这并不能解决我的问题,因为该值仍然重复。其他可用选项也会发生同样的情况。如何通过以某种方式为所有记录构建唯一 URI 来摄取所有记录?

0 投票
2 回答
916 浏览

rdf - Marklogic 内容泵问题

我正在尝试使用 MarkLogic 内容泵将 .nt 格式的 dbPedia 数据集加载到 MarkLogic 中。我正在使用 MarkLogic 7,XDBC 服务器在我的机器上的端口 8005 上运行。我的数据存在于文件 persondata_en.nt 中,我使用以下命令加载它。

此命令导致 Premature EOF 异常,如下所示。

我使用的命令与此处教程中的示例加载脚本中指定的命令几乎相同。有没有人遇到过这个问题?任何帮助都会很棒。谢谢!

0 投票
1 回答
883 浏览

marklogic - MarkLogic 内容泵 mlcp 文档 URI 问题

我想在 ML 7 中使用 marklogic 内容泵。从试图加载一个 xml 的站点下载了 mlcp。

来自Marklogic 文档:以下示例从本地文件系统目录 /space/bill/data 加载文件:

mlcp.sh import -host localhost -port 8006 -username user \ -password passwd -input_file_path /space/bill/data -mode local

但它给了我-input_file_path 的完整路径。

我的 mlcp 调用:

./mlcp.sh import -host localhost -port 18041 -username xxxx -password 'xxxxx' -mode local -streaming -document_type XML -input_file_path 文件:/home/hugo/workspace/oplage-mapping/data -output_uri_prefix /data/map

根据文档,这会给我一个文档uri,例如

/数据/地图/文件名

我尝试了很多东西,最后将我想要加载的文件放在我的操作系统的根目录中,这让我得到了想要的结果......

看起来 mlcp 一直使用默认 uri 作为我试图从操作系统插入的文档的完整路径......

问题:如何控制文档 uri 以便它为我提供所需的 URI?

0 投票
1 回答
621 浏览

marklogic - 使用自动编码将 CSV(或 TSV)加载到 MarkLogic

我已经使用 MLCP(MarkLogic Content Pump)成功地将一个非常干净(简单的英语,没有花哨的符号或图像)的 CSV 文件加载到 MarkLogic 中,以便它将第一行作为列名,当我尝试加载它不干净的东西(即与其他语言和编码混合)它会失败。

我从摄取指南 ( http://docs.marklogic.com/guide/ingestion/encoding?print=yes ) 中了解到,MLCP 无法控制编码,因此我决定尝试使用 Java API 和 xdmp Xquery。

使用 Java API 时,我得到:第 1549 行的无效 UTF-8 转义序列——文档不是 UTF-8 编码的

如果我尝试在 Query Console 或 Information Studio 的流中使用 xdmp 自动编码加载它,它会毫无问题地加载,但 MarkLogic 不会将第一行作为列名,而是将整个文件作为一个文档,这不是我要找的。

有没有办法在没有编码问题的情况下加载 CSV 文件并将其作为列名放在第一行?

提前致谢。

0 投票
2 回答
500 浏览

owl - 在 marklogic 中加载 .owl 文件

是否可以使用 mlcp 加载 .owl 文件?我试过了,-input_file_type rdf但它给出了如下错误:

bin/mlcp.sh import -host localhost -port 9010 -username uname -password pwd -mode local -input_file_path /home/user/semantics/data -input_file_type rdf -input_file_pattern '.*.owl'

致命的 contentpump.RDFReader:dbpedia1.owl:元素或属性与 QName 生产不匹配:QName::=(NCName':')?NCName。致命的 contentpump.RDFReader:dbpedia2.owl:元素或属性与 QName 生产不匹配:QName::=(NCName':')?NCName。

我在这里想念什么?

0 投票
2 回答
420 浏览

marklogic - 使用 mlcp 加载数据 - 命名空间问题

我正在尝试将 rss 数据从 Wordpress 加载到 MarkLogic 数据库中。数据格式如下:

但是,当我运行 mlcp 命令时,我收到以下警告并且数据未插入到数据库中:

我使用的 mlcp 命令是:

知道如何解决这个问题吗?

谢谢!

0 投票
1 回答
321 浏览

marklogic - MLCP 批量加载

我有近 10000 个 XML(小)文件,我正在通过 MLCP 将它们放入 MarkLogic。在摄取时,我正在做一些转换,转换的主要内容是字典更新。我正在从 XML 元素的输入中更新 Dictionary。

我收到警告。这个警告的含义和原因是什么?

MLCP 提取文档的速度非常慢。我认为这是因为字典更新。有什么方法可以增强 MLCP java 堆内存,或者有什么其他方法可以在 ML 服务器上快速摄取这些文档。

请建议。

0 投票
3 回答
346 浏览

marklogic - Marklogic MLCP: how to get number of records inserted?

I am loading data using mlcp. After completion of this process how can i get the number of documents inserted into the db?

Edit: Actually I am initializing this MLCP process from java and i want the record inserted count in the java application. How can i fetch the record inserted count from Java Application

0 投票
1 回答
502 浏览

marklogic - 使用文件名作为集合和 javascript 转换的 Marklogic mlcp 导入操作引发异常

在对 Marklogic 8 和 Marklogic Content Pump 进行了一些试验后,我遇到了将数据导入 Marklogic 数据库的问题。我正在尝试运行一个mlcp import操作以从一组 csv 文件中加载数据,输入设置如下:

此外,我正在尝试一些额外的设置来根据我的需要自定义导入。我尝试过的一个设置是-transform_module应用自定义的基于 javascript 的转换模块以在加载期间执行一些额外的转换,如下所示:

当我使用这些设置运行 mlcp import 命令时,mlcp 正确加载了文档,并且按预期执行了转换。

我尝试的另一个设置是-filename_as_collection为每个导入的文档分配一个集合,该集合使用文档来源的文件名。我进行了一些测试并验证了使用此设置正确分配了集合。

因此-transform_module-filename_as_collection设置单独按预期工作,但是当我尝试在一个导入操作中同时应用两者时会出现问题。我在命令窗口中收到以下错误消息:

15/03/25 11:01:51 错误 contentpump.MultithreadedMapper: com.marklogic.contentpump.ContentWithFileNameWritable 不能转换为 org.apache.hadoop.io.Text
java.lang.ClassCastException: com.marklogic.contentpump.ContentWithFileNameWritable 不能
在 com.marklogic.contentpump.TransformWriter.write(TransformWriter.java:97)
的 com.marklogic.contentpump.utilities.TransformHelper.getTransformInsertQry(TransformHelper.java:163)转换为 org.apache.hadoop.io.Text
。 marklogic.contentpump.TransformWriter.write(TransformWriter.java:46)
在 org.apache.hadoop.mapreduce.task.TaskInputOutputContextImpl.write(TaskInputOutputContextImpl.java:85)
在 org.apache.hadoop.mapreduce.lib.map.WrappedMapper$Context.write(WrappedMapper.java:106)
在 com.marklogic.contentpump.DocumentMapper.map(DocumentMapper.java:46)
在 com.marklogic.contentpump.DocumentMapper .map(DocumentMapper.java:32)
在 com.marklogic.contentpump.BaseMapper.runThreadSafe(BaseMapper.java:51)
在 com.marklogic.contentpump.MultithreadedMapper$MapRunner.run(MultithreadedMapper.java:376)
在 java.util。 concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
在 java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
在 java.lang.Thread.run(Unknown Source)

这是我正在执行的完整命令:
mlcp import -input_file_path content/csv/ -input_file_pattern ".*\.csv" -input_file_type delimited_text -delimiter ";" -delimited_root_name rootname -namespace http://marklogic.com/somenamespace -transform_module /transform/customTransform.sjs -filename_as_collection

我正在一台 Windows 8.1 机器上运行 Marklogic 8.0-1.1 开发人员版和 mlcp 1.3-1。

0 投票
1 回答
71 浏览

hadoop-yarn - marklogic 内容泵纱线支持

我们mlcp.sh在 cdh5.2.4 上以分布式模式运行,作业总是在本地运行,它没有提交给纱线/资源管理器。有人成功实施mlcpcdh5+

我们正在使用 marklogic-contentpump-1.0.5.jar