基本上我有非常簡單的數據庫,我想用Lucene索引。 域是:Lucene複雜結構搜索
// Person domain
class Person {
Set<Pair> keys;
}
// Pair domain
class Pair {
KeyItem keyItem;
String value;
}
// KeyItem domain, name is unique field within the DB (!!)
class KeyItem{
String name;
}
我有幾千萬型材和億萬雙,然而,由於大多數KeyItem的「名稱」字段重複的,只有幾十KeyItem實例。 達到該結構以保存KeyItem實例。
基本上任何字段的任何配置文件都可以保存到該結構中。 可以說,我們已經與性能
- name: Andrew Morton
- eduction: University of New South Wales,
- country: Australia,
- occupation: Linux programmer.
要保存其個人信息,我們將有一個檔案例如,4種KeyItem情況:姓名,教育,國家和職業,以及價值4個實例:「安德魯·莫頓「,」新南威爾士大學「,」澳大利亞「和」Linux程序員「。
所有其他配置文件將引用(全部或部分)KeyItem的相同實例:名稱,教育,國家和職業。
我的問題是,如何索引所有這些,以便我可以搜索配置文件中的KeyItem :: name和Pair :: value的某些特定值。理想情況下,我想那種查詢的工作:
名字:安德魯*和職業:Linux *的
我應該創建自定義的索引和搜索器?或者我可以使用標準的,只是以某種方式將KeyItem和Pair映射爲Lucene組件?
我在Grails項目中使用了Compass插件。我只是想知道是否可以使用標準的Compass註釋或XML定義。我想要儘可能少的代碼。 – Archer 2010-04-29 17:37:46