假設我有非常大的XML文件,其條目具有<id>
標記或id=""
屬性。如何在BIG XML文件中搜索快速/索引?
如何使用此ID進行搜索?我可以創建一些搜索索引或其他內容嗎?
目前我正在使用org.w3.dom
。它有一些搜索手段嗎?
UPDATE
我很大的XML文件是一個下載的維基百科。它的尺寸爲40G,擁有數百萬條記錄。
是否有可能用Lucene之類的東西來索引它,然後快速搜索ID?
UPDATE2
試過BaseX
。它吃了我的XML並創建了32Gb的數據庫。不明白是否截斷數據或32Gb是由於某些壓縮。
不幸的是,按ID搜索需要70-80秒或更長時間。所以它比Mediawiki API查詢更長。
如果你可以在你的XML使用DOM,它有多大聯繫?通常它是內存中DOM對象的10倍。如果你有一個DOM,你可以創建一個'Map' –
我還沒有開始使用大的XML。我正在使用DOM與小XML。大一個是下載的維基百科,它有數百萬頁和40G大小。我需要索引一次,然後使用索引。 –
在這種情況下,您需要解析所有文檔,並根據您的喜好將它們存儲在Map或數據庫或兩者中的位置。我會使用SAX解析器,因爲它可能更高效。 –