2016-04-18 78 views
2

我是Marklogic的新手,我試圖將我的CSV文件的100k記錄導入到Marklogic中,導入後,我發現它默認導入到Documents Database。此外,我發現每個記錄,我看到在數據庫中生成的XML文件,增量編號附加到我在導入時提到的「documentUri」。例如:documentUri_1.xml。我理解創建多個XML文件是爲了以分佈式方式讀取數據。Marklogic:導入csv時在文檔上創建的多個XML文件。如何獲取根文檔URI路徑?

問題: 1.如何獲取此文檔的根文檔URI?其中有多個XML文件? 問題:2.我如何將同一個CSV文件導入到不同的數據庫?
問題:3.當我使用xquery列出數據庫中的所有文檔時,我將獲取所有的XML文件URI而不僅僅是dummy.xml uri?我如何實現這一目標?

注:我用下面的命令導入:

mlcp.bat import -host localhost -port 8000 -username admin -password admin -input_file_path dummy.csv -mode local -input_file_type delimited_text -uri_id 'dummy.xml' 

你有人可以幫我在這?

回答

3

問題1)沒有「根文件」這樣的東西。每個文件都是獨立的。但是你可以通過集合將文檔分組在一起(見下文)。

問題2)使用-database mlcp選項。

問題3)我想你正在尋找mlcp選項-filename_as_collection。這將允許您通過以該文件命名的集合來查找文檔。例如,XQuery中:

collection("dummy.csv") 
+0

謝謝你幫助我做到這一點。我嘗試使用集合(「dummy.csv」),我收到「你的查詢返回一個空序列」。我想要獲取文件集合的原因是從我插入到數據庫的另一組文檔中過濾dummy.csv文檔。任何想法.. – happybayes

+0

@mani由於這回答了您提出的問題,您應該將其標記爲已接受並提出與下一期有關的其他問題。 – wst

+0

當然。但答案並不能提供所需的結果。集合(「dummy.csv」)提供空的結果。有什麼不同的命令可以使用嗎? – happybayes

1

答案不工作,因爲你的樣本沒有包括推薦的命令選項

-filename_as_collection 

不要中找到:

mlcp.bat import -host localhost -port 8000 -username admin -password admin -input_file_path dummy.csv -mode local -input_file_type delimited_text -uri_id 'dummy.xml' 
+0

得到它的感謝。讓我試着將它重新導入到一個新的數據庫中。多謝, – happybayes

+0

我試過下面這個命令.. mlcp.bat import -host localhost -port 8000 -username admin -password admin -input_file_path earthquakes.csv -mode local -filename_as_collection「dummy.csv」-database「dummyDB」-input_file_type delimited_text -delimited_root_name profile -delimited_uri_id id -output_uri_suffix _earthquake.xml 正如你所提到的那樣。文檔被加載到新的數據庫。但是我仍然在調用集合(「dummy.csv」)時返回空白。你能幫助我解決我失蹤的問題嗎? @DALDEI – happybayes