浏览 3649 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-04-04
资料库为大量的中英文对照的句子,例如: Welcome—come in. # 欢迎——请进。 Welcome home\back—we've missed you! # 欢迎回家/回来——我们好想念你! Welcome to Cambridge. # 欢迎到剑桥来。 (on an aircraft) Welcome on board. # 欢迎登机。 (on a ship) Welcome aboard. # 欢迎上船。 我需要索引它,实现搜索英文或中文结果呈现匹配到的句子。 实现方法我有两种思路: 1.按照我对lucene的理解,一个Document相当于一条数据库记录,分为两个filed,一个交eng,一个叫ch,其中eng采用StandardAnalyzer,ch采用中文分词的分析器。这样子做导致document的数量特别多,但是我能在搜索时根据不同的field采用不同的分析器去搜索。 2.将每个文件作为一个document,将中英文合并为一个field,这样实现起来比较简单,但是效率应该不高。 但是我发现,由于我所有的内容都要能索引、要存储: Field engField = new Field("eng", eng ,Field.Store.YES,Field.Index.TOKENIZED); Field chField = new Field("ch", ch ,Field.Store.YES,Field.Index.TOKENIZED); 这样结果我的索引大小和文件库大小差不多,不知各位有什么好的建议? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-04-04
第二种方案
我的模型比你的模型复杂的多,还带有多种语义, 经过很长时间的测试,还是选择了第二种方案。 至于文件大小,那就真没有办法了。 |
|
返回顶楼 | |
发表时间:2007-04-05
wl95421 写道 第二种方案
我的模型比你的模型复杂的多,还带有多种语义, 经过很长时间的测试,还是选择了第二种方案。 至于文件大小,那就真没有办法了。 谢谢,我还是测试一下,希望能听到更多的分析 |
|
返回顶楼 | |
发表时间:2007-04-07
正文的数据不用存储啊,因为你在关系数据库里面已经存在这样的数据了,可以在需要正文的时候到数据库里面提取。而且对于设置了要存储的数据lucene直接将其内容存到了.fdt文件中,你可以用记事本打开看看。所以你的索引文件应该会比库还大。
|
|
返回顶楼 | |
发表时间:2007-04-08
javaeyes 写道 正文的数据不用存储啊,因为你在关系数据库里面已经存在这样的数据了,可以在需要正文的时候到数据库里面提取。而且对于设置了要存储的数据lucene直接将其内容存到了.fdt文件中,你可以用记事本打开看看。所以你的索引文件应该会比库还大。
那你的搜索结果的summary“高亮”怎么解决??自己写代码从正文中抽取搞定么? |
|
返回顶楼 | |
发表时间:2007-04-10
高亮我还没看过,可以去看看nutch的summary
|
|
返回顶楼 | |