今天在线活动的聊天内容

3 views
Skip to first unread message

Jaly

unread,
Oct 15, 2008, 9:41:26 AM10/15/08
to Lucene 探源
guest:我做电信软件开发的 [guest]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:31:34 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:31:34 2008]
[系统信息] yychang 进入聊天室.[Wed Oct 15 14:31:42 2008]
[系统信息] yychang 进入聊天室.[Wed Oct 15 14:31:43 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:31:44 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:31:44 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:31:47 2008]
guest:呵呵 我也上来了 什么时候开始啊 [guest]
jaly:那对海量数据应该提供一些搜索功能 [jaly]
[系统信息] 站在云端 进入聊天室.[Wed Oct 15 14:32:00 2008]
jaly:14:30分正式开始 [jaly]
[系统信息] 杨杨 进入聊天室.[Wed Oct 15 14:32:17 2008]
[系统信息] 杨杨 进入聊天室.[Wed Oct 15 14:32:17 2008]
zhaoqi9914:改变呢称:guest换成zhaoqi9914 [guest]
[系统信息] yychang 进入聊天室.[Wed Oct 15 14:32:24 2008]
[系统信息] yychang 进入聊天室.[Wed Oct 15 14:32:24 2008]
[系统信息] loveren 进入聊天室.[Wed Oct 15 14:32:29 2008]
[系统信息] loveren 进入聊天室.[Wed Oct 15 14:32:29 2008]
[系统信息] loveren 进入聊天室.[Wed Oct 15 14:32:42 2008]
[系统信息] loveren 进入聊天室.[Wed Oct 15 14:32:42 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:32:48 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:32:48 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:33:03 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:33:04 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:33:22 2008]
jaly:目前还有6分钟 [jaly]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:33:37 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:33:37 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:33:38 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:33:41 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:33:45 2008]
[系统信息] j2ee 进入聊天室.[Wed Oct 15 14:33:53 2008]
[系统信息] j2ee 进入聊天室.[Wed Oct 15 14:33:53 2008]
[系统信息] kobe 进入聊天室.[Wed Oct 15 14:34:08 2008]
[系统信息] kobe 进入聊天室.[Wed Oct 15 14:34:08 2008]
[系统信息] j2ee 进入聊天室.[Wed Oct 15 14:34:09 2008]
[系统信息] kobe 进入聊天室.[Wed Oct 15 14:34:11 2008]
刘峰:改变呢称:guest换成刘峰 [guest]
刘峰:? [guest]
刘峰:test [guest]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:34:34 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:34:34 2008]
[系统信息] j2ee 进入聊天室.[Wed Oct 15 14:34:35 2008]
kobe:test [kobe]
主持人对小精灵说 :聊天活动马上开始 [主持人]
好耶!但我们来聊些什么呢?
jaly:欢迎刘峰 [jaly]
刘峰:xiexie [guest]
[系统信息] hulei 进入聊天室.[Wed Oct 15 14:35:07 2008]
[系统信息] hulei 进入聊天室.[Wed Oct 15 14:35:07 2008]
[系统信息] hulei 进入聊天室.[Wed Oct 15 14:35:11 2008]
j2ee:what东西 [j2ee]
hulei:fffff [hulei]
主持人:欢迎大家来到华章聊天室,参加深入解析Lucene技术聊天活动。 [主持人]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:36:14 2008]
zhaoqi9914对刘峰说 :刘峰 是不是 河南的 [guest]
主持人:我是本次活动的主持人杜正彬。现在我简单介绍一下《Lucene分析与应用》两位作者: [主持人]
[系统信息] chaichao 进入聊天室.[Wed Oct 15 14:36:18 2008]
j2ee 喃喃自语的 对小精灵说 :太不方便了,没意思,闪人了 [j2ee]
小精灵 喃喃自语的 对j2ee说 :是呀! [robot]
jaly:正式开始了 [jaly]
[系统信息] aaa 进入聊天室.[Wed Oct 15 14:36:29 2008]
[系统信息] aaa 进入聊天室.[Wed Oct 15 14:36:29 2008]
[系统信息] chaichao 进入聊天室.[Wed Oct 15 14:36:36 2008]
[系统信息] chaichao 进入聊天室.[Wed Oct 15 14:36:36 2008]
主持人:吴众欣: 西安交大电信学院新型机所博士在读,兴趣为搜索引擎与服务组合。 沈家立: 2003年开始使用Java开发项目,主要从事电子商务
和电子支付领域。喜欢研究开源项目,是bbs.wnetw.net的创建者之一,并担任BEA天津User Group Leader。 [主持人]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:37:09 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:37:09 2008]
站在云端:欢迎主持人 [站在云端]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:37:26 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:37:26 2008]
panglaohu:hi [panglaohu]
jaly:hi 各位,我们开始了 [jaly]
panglaohu:不好意思 [panglaohu]
jaly:大家有什么为题,可以提问了 [jaly]
[系统信息] chaichao 进入聊天室.[Wed Oct 15 14:37:53 2008]
[系统信息] chaichao 进入聊天室.[Wed Oct 15 14:37:53 2008]
[系统信息] 123 进入聊天室.[Wed Oct 15 14:38:00 2008]
[系统信息] 123 进入聊天室.[Wed Oct 15 14:38:00 2008]
人:改变呢称:guest换成人 [guest]
zhaoqi9914对刘峰说 :呵呵 没事的 [guest]
panglaohu:闫石,来了吗? [panglaohu]
guest:可不可以大概介绍一下这本书的结构内容 [guest]
站在云端:恩 [站在云端]
jaly:这本书主要介绍的是Lucene是如何设计、实现的。 [jaly]
zhaoqi9914:好的 也听听 [guest]
张阅:改变呢称:站在云端换成张阅 [站在云端]
panglaohu:Lucene分析与应用,原书名想用lucene探源,主要是分析lucene的机理 [panglaohu]
panglaohu:不是想强调lucene的应用 [panglaohu]
主持人:我这里收集了一些读者的提问 [主持人]
jaly:主要分成如下几个模块 [jaly]
panglaohu:因为开源项目,我们想分析的更深入一些,而不是简单的使用它 [panglaohu]
刘峰:斯芬克斯呢 [guest]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:40:59 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:40:59 2008]
jaly:对。是这样的。 [jaly]
jaly:一个模块就是详细的介绍Lucene是如何构建其索引 [jaly]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:41:58 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:41:58 2008]
jaly:第二个模块是如果查询:查询模型和引擎预热 [jaly]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:42:05 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:42:05 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:42:10 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:42:10 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:42:17 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:42:17 2008]
jaly:然后是介绍查询解析和语法 [jaly]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:42:26 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:42:26 2008]
[系统信息] lj770880 进入聊天室.[Wed Oct 15 14:42:42 2008]
jaly:还有相似度的匹配和一些算法而法纳西 [jaly]
[系统信息] lj770880 进入聊天室.[Wed Oct 15 14:42:42 2008]
[系统信息] lj770880 进入聊天室.[Wed Oct 15 14:43:07 2008]
[系统信息] lj770880 进入聊天室.[Wed Oct 15 14:43:07 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:43:16 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:43:16 2008]
panglaohu:Sphinx 老吴我不太了解 [panglaohu]
[系统信息] yychang 杨杨 离开我们的聊天室[Wed Oct 15 14:43:26 2008]
jaly:我们通过Lucene的代码来分析这些内容。 [jaly]
[系统信息] loveren 离开我们的聊天室[Wed Oct 15 14:43:37 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:43:45 2008]
[系统信息] deltaj guest icekey j2ee lj770880 离开我们的聊天室[Wed Oct 15 14:44:09
2008]
panglaohu:有什么我就说什么,我对lucene稍有体会 [panglaohu]
jaly:最后,我们也介绍了和Lucene相关的Nutch和Hadoop [jaly]
[系统信息] admin 进入聊天室.[Wed Oct 15 14:44:17 2008]
[系统信息] admin 进入聊天室.[Wed Oct 15 14:44:17 2008]
jaly:恩,请老吴作详细介绍 [jaly]
[系统信息] admin 进入聊天室.[Wed Oct 15 14:44:42 2008]
[系统信息] admin 进入聊天室.[Wed Oct 15 14:44:42 2008]
panglaohu:呵呵, Sphinx等等搜索引擎使用倒排索引的,原理估计是想通的 [panglaohu]
刘峰:卢森在.net底下 表现如何? [guest]
panglaohu:刘峰遇到什么问题了吗? [panglaohu]
jaly:是想问Lucene的net版的性能么? [jaly]
[系统信息] geniues 进入聊天室.[Wed Oct 15 14:48:13 2008]
panglaohu:在.net下与java表现没去大的区别,如果你使用.net平台,它也是搜索的好引擎 [panglaohu]
[系统信息] maxinliang 进入聊天室.[Wed Oct 15 14:48:32 2008]
刘峰:我的卢森应用 创建索引时 有时会报 无法rename 的错误 [guest]
[系统信息] maxinliang 进入聊天室.[Wed Oct 15 14:49:10 2008]
张阅:吴老师,我是初学者,能不能给我讲讲分词到底是怎么回事? [站在云端]
[系统信息] guest 进入聊天室.[Wed Oct 15 14:49:14 2008]
panglaohu:稍等,我想先问问刘峰,rename是那个? [panglaohu]
panglaohu:分词是英文按照空格,中文单字成词 [panglaohu]
主持人:有位读者沈进东 :Lucene的搜索器,分析器是什么结构的,是怎么实现的呢? [主持人]
张阅:哦,知道了,谢谢 [站在云端]
panglaohu:分词器让家立先说 [panglaohu]
[系统信息] aaa admin geniues maxinliang 离开我们的聊天室[Wed Oct 15 14:51:47 2008]
jaly:不知道进东先生来了没有? [jaly]
[系统信息] wushewu 进入聊天室.[Wed Oct 15 14:52:17 2008]
jaly:对,如果是英文,是按照空格来分 [jaly]
[系统信息] 123 wushewu 离开我们的聊天室[Wed Oct 15 14:53:13 2008]
panglaohu:分析器主要的是:token filter与analyzer [panglaohu]
panglaohu:需要了解TokenStream的层次结构 [panglaohu]
wushewu:好像还有很多少不知道Lucene是做什么的. [wushewu]
主持人:读者闫石:对于大数据量,搜索的速度问题。之前一个项目,数据量有上千万条,建立的索引达4G左右,明显速度有点慢;将索引分隔成5个索引文件
后,多索引检索,速度没什么大的改观。请问:对于这种情况,有什么办法解决速度的问题? [主持人]
panglaohu:StandardFilter,LowerCaseFilter与StopFilter都继承自TokenFilter
[panglaohu]
张阅:能不能分别讲讲,我目前只用到了第一个 [站在云端]
[系统信息] kikiwu 进入聊天室.[Wed Oct 15 14:57:04 2008]
panglaohu:我先回答张阅的问题 [panglaohu]
panglaohu:所以 [panglaohu]
张阅:恩,谢谢 [站在云端]
[系统信息] howman 进入聊天室.[Wed Oct 15 14:57:36 2008]
panglaohu:文档-》识别结构-》空格-》停用词-》词或词组-》词干-》标引 [panglaohu]
panglaohu:标准的分析器,你也可以改造 [panglaohu]
张阅:具体怎么样去改造它呢? [站在云端]
panglaohu:通过一个标准的Lucene解析器,需要继承Analyzer外,常常由以下三部分组成:STOP_WORDS、构造函
数、tokenStream方法 [panglaohu]
panglaohu:1)做出一个继承tokenizer的类,用你的解析器引用它 [panglaohu]
张阅:谢谢 [站在云端]
panglaohu:需要扩展Analyzer类,复写tokenStream()方法 [panglaohu]
panglaohu:① 继承Tokenizer对象。覆盖next方法 [panglaohu]
panglaohu:继承Tokenizer对象。覆盖next方法 [panglaohu]
panglaohu:在next方法里面实现你自己的逻辑 [panglaohu]
panglaohu:再说几句 [panglaohu]
panglaohu:呵呵 [panglaohu]
张阅:o(∩_∩)o... [站在云端]
panglaohu:next方法就要返回你要分割解析出来的单词 [panglaohu]
panglaohu:所以,你的逻辑要清楚的在里面表达,或者基于字典,或者是ngrams [panglaohu]
panglaohu:呵呵 [panglaohu]
panglaohu:不知道我说的你清楚了吗? [panglaohu]
panglaohu:回答;wushewu [panglaohu]
panglaohu:de wenti [panglaohu]
panglaohu:的问题 [panglaohu]
panglaohu:lucene是开源的搜索引擎,模仿google [panglaohu]
[系统信息] snakeguang 离开我们的聊天室[Wed Oct 15 15:06:08 2008]
[系统信息] 小武 进入聊天室.[Wed Oct 15 15:06:12 2008]
[系统信息] 小武 进入聊天室.[Wed Oct 15 15:06:12 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 15:06:19 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 15:06:19 2008]
jaly:如果那个问题解决了,我们说说网友提出的这个问题: [jaly]
jaly:读者闫石:对于大数据量,搜索的速度问题。之前一个项目,数据量有上千万条,建立的索引达4G左右,明显速度有点慢;将索引分隔成5个索引文
件后,多索引检索,速度没什么大的改观。请问:对于这种情况,有什么办法解决速度的问题? [jaly]
[系统信息] mengel 进入聊天室.[Wed Oct 15 15:06:54 2008]
张阅:呵呵,已经很清楚了,非常感谢 [站在云端]
panglaohu:但是它的全文的检索引擎是网络搜索引擎的基础 [panglaohu]
[系统信息] erli11 进入聊天室.[Wed Oct 15 15:07:20 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 15:07:38 2008]
刘峰: Cannot rename e:\index\segments.new to e:\index\segments [guest]
[系统信息] mengel 进入聊天室.[Wed Oct 15 15:07:59 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 15:07:59 2008]
panglaohu:在apache的lucene项目中nutch就是google的整体模仿者,包括网络爬虫,创建索引,查询解析
[panglaohu]
[系统信息] guest 进入聊天室.[Wed Oct 15 15:08:19 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 15:08:23 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 15:08:24 2008]
panglaohu:而lucene就是创建索引的模块 [panglaohu]
[系统信息] wlhappy01 进入聊天室.[Wed Oct 15 15:08:41 2008]
[系统信息] wlhappy01 进入聊天室.[Wed Oct 15 15:08:41 2008]
panglaohu:不知道对wushewu的问题回答了没有? [panglaohu]
panglaohu:哦 [panglaohu]
[系统信息] guest 进入聊天室.[Wed Oct 15 15:09:05 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 15:09:05 2008]
主持人对kobe说 :读者贺聪:各大门户网站的搜索引擎是他们自己从头做起的还是基于某些项目(如lucene)的? [主持人]
panglaohu:刘峰,这个问题我初步判断是合并index过程中出现的问题,。net平台我没用过,我先试着给你解答这个问题如何?
[panglaohu]
[系统信息] kikiwu mengel wlhappy01 小武 离开我们的聊天室[Wed Oct 15 15:10:10 2008]
panglaohu:主持人,不好意思,我先给刘峰解释一下他的问题,呵呵 [panglaohu]
★ 主持人对jaly说 :呵呵,好的 [主持人]
主持人对panglaohu说 :好的 [主持人]
panglaohu:刘峰:segments文件不提供其他的功能,只是告诉lucene你已经添加几个document进去
了,segments_n,n就是你永乐多少个document来产生索引 [panglaohu]
panglaohu:当超过索引目录的索引文件合并情况,需要将segment文件重新填写,将旧有的segments文件删除,估计你这个问题就出现
在这个时刻 [panglaohu]
panglaohu:ok?建议你使用java版本的再试一下,出现问题来告诉我 [panglaohu]
panglaohu:pang...@gmail.com [panglaohu]
panglaohu:主持人,请问我想在能回答那个问题? [panglaohu]
panglaohu:补充一下,刘峰的mergefactor是默认值10吗?要是估计就在merge时,你添加第10个document时出现的问
题 [panglaohu]
主持人对panglaohu说 :好的 [主持人]
panglaohu:刘峰,也可以继续提问 [panglaohu]
panglaohu:主持人,请继续 [panglaohu]
主持人对panglaohu说 :可以 [主持人]
刘峰: 谢谢 [guest]
jaly:因为在删除一个索引文件是,Lucene会产生一个锁文件。这是保护索引文件使用的。类似与线程中的同步概念。 [jaly]
[系统信息] chineselio 进入聊天室.[Wed Oct 15 15:18:38 2008]
[系统信息] chineselio 进入聊天室.[Wed Oct 15 15:18:38 2008]
刘峰: writer.SetMergeFactor(1000); [guest]
[系统信息] chineselio 进入聊天室.[Wed Oct 15 15:18:56 2008]
[系统信息] chineselio 进入聊天室.[Wed Oct 15 15:18:56 2008]
panglaohu:呵呵,mergeFactor有些大了, [panglaohu]
panglaohu:那些添加到index的东西在999时才合并 [panglaohu]
panglaohu:注意从0计数 [panglaohu]
[系统信息] erli11 离开我们的聊天室[Wed Oct 15 15:20:00 2008]
刘峰: 多少效果好 [guest]
panglaohu:10~100就行 [panglaohu]
panglaohu:呵呵,不能小于2 [panglaohu]
panglaohu:开个玩笑 [panglaohu]
刘峰: 呵呵 合并次数越少 创建效率就越高 [guest]
刘峰: 对否 [guest]
panglaohu:估计你是看了一些网络上的文章来设置这个数值的,认为mergefactor越大,创建索引越快 [panglaohu]
jaly:具体的值还是应该根据具体应用作相应调整。也许需要试验多次才能找到一个合适的值。 对,不能小于2,要不就没有愿意了。 [jaly]
刘峰: 是的 [guest]
panglaohu:但是mergefactor越大,内存要越多 [panglaohu]
panglaohu:其实lucene的能力不在创建索引,而是在查询 [panglaohu]
panglaohu:你看它的benchmark,创建索引是其瓶颈 [panglaohu]
刘峰: 哦 [guest]
panglaohu:创建索引,先要,分析文本,抽取单词,排序,计算频率,计算位置,压缩各个数值,保存索引,不到mergefactor就都在内存
操作 [panglaohu]
jaly:其实这个问题就是设计到这个问题:读取内存数据的速度和读取硬盘数据的速度。mergefactor的值越大,操作基本上是在内存中完成。
[jaly]
jaly:这就像老吴所说,会耗费很多内存 [jaly]
panglaohu:所以1000有些大 [panglaohu]
panglaohu:您还有什么问题? [panglaohu]
刘峰: 我开100个线程 1000的merg 好像不到200m内存 [guest]
chineselio: 我用setMergeFactor(10000)好像内存占用也不大啊 [chineselio]
panglaohu:比如1000×1000个document,注意,到最后一个document你算算,合并时需要打开多少次的I/O,耗费多少的
内存 [panglaohu]
panglaohu:呵呵,大家忘了累积效应了 [panglaohu]
panglaohu:在没使用cfs情况下 [panglaohu]
panglaohu:借用inAction书里面的计算公式inaction的计算公式100 indexes×(9 segments per
index×(7 files per segment + 10 files for indexed fields)) [panglaohu]
panglaohu:呵呵 [panglaohu]
panglaohu:大家再想想 [panglaohu]
panglaohu:这里还不是计入termvector之后的计算方法 [panglaohu]
panglaohu:ok? [panglaohu]
刘峰: 合并的时候 cpu占用挺多 [guest]
panglaohu:是,合并时需要把硬盘中的索引读取出来,回复segmentEnum等等类实例,然后再重新排序计算 [panglaohu]
panglaohu:恢复segmentEnum等等类实例 [panglaohu]
panglaohu:合并的过程包含了部分的查询过程 [panglaohu]
panglaohu:也是创建索引的部分逆过程 [panglaohu]
[系统信息] kobe 离开我们的聊天室[Wed Oct 15 15:34:26 2008]
刘峰: 谢谢 [guest]
panglaohu:cpu在不停的compare,比如某个term在document1出现一次,在document5出现一次,这个term就需
要在.tis文件的freq部分添加累计数值2 [panglaohu]
panglaohu:you are welcome [panglaohu]
panglaohu:表明该term在两篇document 出现过 [panglaohu]
panglaohu:我可以回答主持人的另外闫石朋友提出的问题了吧 [panglaohu]
panglaohu:不知道闫石在不在 [panglaohu]
panglaohu:读者闫石:对于大数据量,搜索的速度问题。之前一个项目,数据量有上千万条,建立的索引达4G左右,明显速度有点慢;将索引分隔成
5个索引文件后,多索引检索,速度没什么大的改观。请问:对于这种情况,有什么办法解决速度的问题? [panglaohu]
panglaohu:估计如果lucene使用中遇到这种情况还是比较难办的,我还是想问问该朋友一些问题 [panglaohu]
panglaohu:1)被索引文件多大? [panglaohu]
panglaohu:2)是否是cfs方式保存索引 [panglaohu]
panglaohu:3)是否有停用词 [panglaohu]
panglaohu:4)频率文件有多大 [panglaohu]
panglaohu:5)分布式环境如何? [panglaohu]
panglaohu:呵呵 [panglaohu]
chineselio对主持人说 : 分布式环境 ---比较关心如何规划更合理 [chineselio]
panglaohu:分布式环境用hadoop吧 [panglaohu]
panglaohu:它是google file system的仿制品 [panglaohu]
chineselio: 我也在看 [chineselio]
panglaohu:但是环境只能在linux [panglaohu]
panglaohu:呵呵,hadoop不是今天的主题,但是也来说两句,家立来吧 [panglaohu]
chineselio: 但是看其他朋友说 hadoop 用于lucene 不太合适 ,因为hadoop对小文件支持不好
[chineselio]
panglaohu:嗯?我认为不是那样的 [panglaohu]
jaly: Nutch就是用Hadoop的,而Nutch也是在Lucene的基础上搭建的一个仿Google的搜索引擎应用 [jaly]
panglaohu:什么情况下才会使用到distribute哪? [panglaohu]
panglaohu:GFS(google file system)一个block就是64m,这是给那些高频词准备的 [panglaohu]
chineselio: 对我来说可能是存储要吧,不知道合适吗? [chineselio]
panglaohu:存储索引吗? [panglaohu]
chineselio: 是的,索引文件可能会很大 [chineselio]
jaly: 有些内容作为索引时是可以不要存储起来的。具体的情况可以参考Field的一些说明。 [jaly]
panglaohu:hadoop可以用在很多的地方,存储什么都行 [panglaohu]
jaly: 对,如果存储就会造成索引文件很大 [jaly]
panglaohu:只要是可以做mapreduce的就可以 [panglaohu]
panglaohu:hadoop也是可以调节的,一个搜索引擎的索引需要分布开,主要是想获得查询效率,因为单一机器的索引过大
[panglaohu]
panglaohu:所以hadoop营运而生,采用一个单点的名字服务器来维护数据服务器,数据服务器只报出你数据 [panglaohu]
panglaohu:数据服务器只保存你数据 [panglaohu]
panglaohu:查询只是在名字服务器查询一次,然后就可以定位到数据服务器,以后的大量数据传送客户端与数据服务器直接打交道即可
[panglaohu]
panglaohu:ok [panglaohu]
panglaohu:? [panglaohu]
panglaohu:我接着回答闫石的问题 [panglaohu]
chineselio: 哦,很有收获 [chineselio]
panglaohu:1)被标引文件的大小 [panglaohu]
chineselio: 谢谢 [chineselio]
[系统信息] zgj8128 进入聊天室.[Wed Oct 15 15:51:34 2008]
[系统信息] zgj8128 进入聊天室.[Wed Oct 15 15:51:34 2008]
panglaohu:呵呵,不客气,您也可以继续提 [panglaohu]
panglaohu:也请关注我的后面回答,也对闫石,或其他人都有帮助 [panglaohu]
panglaohu:1)被标引文件的大小 [panglaohu]
panglaohu:大家不要认为,索引是个小文件 [panglaohu]
panglaohu:也许原文多大,索引就多大 [panglaohu]
panglaohu:你要是不采用压缩算法,还真是常常超过原文的数据量 [panglaohu]
chineselio: lucene自带的压缩怎么样? [chineselio]
chineselio: 没用过 [chineselio]
刘峰: writer.Optimize() 执行完以后 有什么消息没 怎样知道优化结束了 [guest]
[系统信息] lj770880 进入聊天室.[Wed Oct 15 15:54:10 2008]
[系统信息] lj770880 进入聊天室.[Wed Oct 15 15:54:10 2008]
panglaohu:比如原文,一个单词,一个字节,索引,保存其内容为,字典,1个字节,频率1个字节,位置1个,其他,你看翻了几倍?
[panglaohu]
刘峰: 压缩后 查询时就慢了吧 [guest]
panglaohu:你还可能说哦,原文最有优势的就是单词重复的多,索引也需要标注啊 [panglaohu]
panglaohu:一般,你的倒排索引的体积和原文的大小差不多,也许是原文的1.5倍 [panglaohu]
panglaohu:呵呵,我们来继续谈谈lucene的压缩方法 [panglaohu]
panglaohu:单词之间的压缩 [panglaohu]
panglaohu:举个例子:basic与base [panglaohu]
panglaohu:排序后为base与basic [panglaohu]
panglaohu:差异在e与ic [panglaohu]
panglaohu:lucene保存为base <3,ic> [panglaohu]
panglaohu:只保存插值 [panglaohu]
panglaohu:位置信息也是这样 [panglaohu]
panglaohu:base在文档的第3个term出现过,在第18个term出现过,就保存为3,15 [panglaohu]
chineselio: 中文呢? 中国 中国人 --》 中国<3,人>? [chineselio]
panglaohu:如果不保存15,总是保存18,很容易超过256这个数字 [panglaohu]
panglaohu:先回答lio的问题 [panglaohu]
panglaohu:如果你采用中文的智能分词器,中国 中国人 --》 中国<2,人> [panglaohu]
[系统信息] zgj8128 离开我们的聊天室[Wed Oct 15 16:04:03 2008]
jaly: 刚才那个问题中提到,采用了多线程方式来读取索引,但是性能并没有提高 [jaly]
[系统信息] lj770880 离开我们的聊天室[Wed Oct 15 16:05:48 2008]
jaly: 其实,Lucene提供的多索引形式并不能有效的提高检索效率的 [jaly]
[系统信息] panglaohu 进入聊天室.[Wed Oct 15 16:06:42 2008]
[系统信息] panglaohu 进入聊天室.[Wed Oct 15 16:06:55 2008]
[系统信息] panglaohu 进入聊天室.[Wed Oct 15 16:06:55 2008]
chineselio: 单机多线程的瓶颈在磁盘IO上 [chineselio]
[系统信息] guest 进入聊天室.[Wed Oct 15 16:07:38 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 16:07:38 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 16:07:46 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 16:07:47 2008]
[系统信息] panglaohu 进入聊天室.[Wed Oct 15 16:08:18 2008]
[系统信息] panglaohu 进入聊天室.[Wed Oct 15 16:08:18 2008]
panglaohu:我老吴,有回来了 [panglaohu]
panglaohu:呵呵 [panglaohu]
panglaohu:刚才说到哪里了? [panglaohu]
jaly: 是的 [jaly]
panglaohu:lio [panglaohu]
chineselio: 压缩算法 [chineselio]
jaly: 您回答完索引的压缩 [jaly]
panglaohu:我们继续 [panglaohu]
jaly: 继续压缩? ok [jaly]
刘峰: 好 [guest]
panglaohu:Vint [panglaohu]
panglaohu:sorry [panglaohu]
panglaohu:刷一次平 [panglaohu]
[系统信息] 站在云端 离开我们的聊天室[Wed Oct 15 16:14:16 2008]
jaly: 大家忍耐一下,老吴那边的网络不大好 [jaly]
jaly: 经常掉线 [jaly]
[系统信息] dogwoods 进入聊天室.[Wed Oct 15 16:15:09 2008]
[系统信息] dogwoods 进入聊天室.[Wed Oct 15 16:15:44 2008]
[系统信息] dogwoods 进入聊天室.[Wed Oct 15 16:16:23 2008]
[系统信息] dogwoods 进入聊天室.[Wed Oct 15 16:16:23 2008]
jaly: 我们继续刚才的多索引问题 [jaly]
jaly: lio说到io问题 [jaly]
[系统信息] guest 进入聊天室.[Wed Oct 15 16:16:44 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 16:16:44 2008]
jaly: 确实。另外,多索引也只是对于Lucene而言的 [jaly]
[系统信息] dogwoods 进入聊天室.[Wed Oct 15 16:17:07 2008]
[系统信息] dogwoods 进入聊天室.[Wed Oct 15 16:17:07 2008]
jaly: 对于你的应用来说,这些多索引是透明的。 [jaly]
jaly: 当进行检索时,Lucene需要到不同的索引去搜索相关信息,然后还需要把各个索引中取得的信息按照一定的规则进行调整 [jaly]
jaly: 这也要耗费一定的时间 [jaly]
jaly: 所以说多索引未必能够提高搜索的速度 [jaly]
刘峰: 怎样才能提高呢 [guest]
chineselio: 感觉还是用hadoop存储大索引比较好 [chineselio]
dogwoods:请问:建立索引时,如何处理重复关键字的问题 [dogwoods]
jaly: 总结一下: MultiSearcher都是通过循环一次读取每个IndexSearcher,然后分别对其进行查找工作,依然是一种“串
行”的方式处理的。如果我们要索引的index文件非常之多,那么“串行”的方式进行检索就会带来很大的性能问题 [jaly]
[系统信息] panglaohu 进入聊天室.[Wed Oct 15 16:20:10 2008]
[系统信息] panglaohu 进入聊天室.[Wed Oct 15 16:20:22 2008]
jaly: Lucene提供了一个类:ParallelMultiSearcher [jaly]
jaly: ParallelMultiSearcher为每个Searchable接口分配了一个线程,直到所有这些线程都完成其搜索,基本搜索和进
行过滤的搜索是并行执行的,但是基于HitCollector的搜索暂时还不能被并行化处理。所以,ParallelMultiSearcher是否能
获得性能上的收益,很大程度上取决于应用程序的体系架构。假设索引文件存放在不同的物理磁盘上,并且你可以利用多个CPU的优势,在这种情况下,使用该
类可能会改善系统的性能。 [jaly]
jaly: 所以刘峰提到如何通过多索引来提供性能,改善应用的架构是一个很好的解决方案。 [jaly]
刘峰: 哦 [guest]
panglaohu:wo lai le [panglaohu]
panglaohu:我这里的反应很慢 [panglaohu]
jaly: 老吴的网络真的不大好呀 [jaly]
panglaohu:网络的问题 [panglaohu]
刘峰: 抱拳团团一拜道:"敝人对各位的景仰之情,有如涛涛江水连绵不绝。" [guest]
panglaohu:是的 [panglaohu]
panglaohu:哦 [panglaohu]
panglaohu:家立再讲并行 [panglaohu]
jaly: 是的 [jaly]
jaly: 因为刚才那个问题提到性能问题 [jaly]
panglaohu:1)倒排索引不压缩,体积很大 [panglaohu]
panglaohu:我继续了 [panglaohu]
jaly: ok,老吴,请! [jaly]
dogwoods:请问:建立索引时,如何处理重复关键字的问题。不想在业务逻辑做 [dogwoods]
jaly: 我的问题也讲完了 [jaly]
panglaohu:但是压缩,会带来解压时,cpu的负载,大家也要注意到 [panglaohu]
panglaohu:没有中国,你恢复不了“中国人” [panglaohu]
panglaohu:所以,引擎需要在cpu,内存,磁盘上做一些banlancing [panglaohu]
panglaohu:vint讲了吗? [panglaohu]
panglaohu:要不这次不讲了 [panglaohu]
刘峰: 没 [guest]
chineselio: 没讲 [chineselio]
刘峰对dogwoods说 : 卢森如何 统计? [guest]
dogwoods:统计? [dogwoods]
dogwoods:没人回答我的问题啊 [dogwoods]
jaly: 老吴正在回答,请稍等 [jaly]
刘峰:统计 就是 去重 分组 之类的 [guest]
★ 主持人对jaly说 :你也可以回答 [主持人]
panglaohu 正气凛然的 :我的网络不好 [panglaohu]
jaly: 我理解没有老吴透彻,怕误导大家 [jaly]
chineselio: 要是用IM的群聊可能会好一些吧,呵呵 [chineselio]
panglaohu 正气凛然的 :我尽力回答大家的问题 [panglaohu]
panglaohu:哈哈 [panglaohu]
panglaohu:统计是指什么? [panglaohu]
刘峰: 去重 分组 之类的 [guest]
dogwoods:哦 [dogwoods]
panglaohu:有刚才说过的频率曲重 [panglaohu]
panglaohu:还有单词去重 [panglaohu]
panglaohu:位置去重 [panglaohu]
dogwoods:比如这种情况,前段时间建过索引了,后来又要从另一数据源追加索引 [dogwoods]
panglaohu:这是追加 [panglaohu]
dogwoods:对某一field的去重,不然前端搜索结果中,会出现相同的词 [dogwoods]
dogwoods:恩 [dogwoods]
panglaohu:注意的是最佳不是实时的 [panglaohu]
dogwoods:但最终是一个索引文件。 [dogwoods]
panglaohu:追加要对索引读写,所以需要关注 [panglaohu]
panglaohu:对 [panglaohu]
panglaohu:网络慢,回答问题慢,见谅 [panglaohu]
panglaohu:让我说完那几个问题 [panglaohu]
panglaohu:2)索引文件分析时不要保存为cfs [panglaohu]
dogwoods:恩 [dogwoods]
panglaohu:这样你就能知道那些文件的大小 [panglaohu]
panglaohu:查询时起作用的就是字典文件。tii tis,frq,文件 [panglaohu]
panglaohu:3)停用词问题 [panglaohu]
panglaohu:我们用过lucene的都知道lucene的字典文件有两个.tii 与.tis [panglaohu]
panglaohu:.tii是tis 的块表问题 [panglaohu]
panglaohu:文件 [panglaohu]
panglaohu:在tis中,每隔128个(这个可以调整)就产生一个.tii中的term [panglaohu]
panglaohu:在查询前,.tii文件要先进入内存中,而tis文件不在内存中 [panglaohu]
panglaohu:所以128关系到你的.tii文件的大小 [panglaohu]
panglaohu:这里也要考虑,你要是取256的跨度,到时就256个内部查询,但是.tii文件小,内存占用小 [panglaohu]
panglaohu:内要是取64的跨度,内存占用小,64个term内部查询快 [panglaohu]
panglaohu:4)频率文件的跳跃指针 [panglaohu]
panglaohu:如果是高频词,那么频率文件信息就多 [panglaohu]
[系统信息] guest 进入聊天室.[Wed Oct 15 16:41:58 2008]
[系统信息] guest 进入聊天室.[Wed Oct 15 16:41:58 2008]
panglaohu:lucene给出skipinterval来快速查询频率信息 [panglaohu]
panglaohu:skipInterval是对频率与位置文件信息查询时,快速定位的跳跃跨度数值。 [panglaohu]
panglaohu:5)多个查询器的评分合并过程 [panglaohu]
panglaohu:用hadoop存储索引,自己写一个indexsearcher,但是需要注意各个机器上的结果是本地最优不是全局最优的结果
[panglaohu]
panglaohu:请提 [panglaohu]
panglaohu:我估计在10分钟后,就得开会了 [panglaohu]
panglaohu:呵呵 [panglaohu]
panglaohu:我尽力在网络不好的情况下讲完了 [panglaohu]
dogwoods:辛苦 [dogwoods]
dogwoods:去重,如何做 [dogwoods]
panglaohu:大家有问题提吧 [panglaohu]
刘峰: writer.Optimize() 执行完以后 有什么消息没 怎样知道优化结束了 [guest]
panglaohu:去重看看lucene的compare的各个接口 [panglaohu]
dogwoods:好的 [dogwoods]
chineselio: IndexReader.isOptimize(); [chineselio]
panglaohu:网络条件不好现在,只能这么回答,见谅 [panglaohu]
★ 主持人对jaly说 :大家好!这次活动已经接近尾声了!非常感谢大家对此次活动的支持 [主持人]
jaly: 可能由于时间关系,大家有问题可以到这里提问。这里是我们当初写这本册子时开通的一个论坛 [jaly]
chineselio: 希望以后还可以参与 [chineselio]
jaly: http://groups.google.com/group/luceneInside [jaly]
panglaohu:你在optimize后面添加打印一句即可 [panglaohu]
panglaohu:呵呵 [panglaohu]
jaly: 欢迎大家到这里提问: http://groups.google.com/group/luceneInside [jaly]
刘峰: 是啊 呵呵 [guest]
panglaohu:optimize的过程你盯着索引都在一个segment下即可 [panglaohu]
jaly: 取名为: LuceneInside,也是为了符合我们这本册子的内容 [jaly]
panglaohu:这个回答更加的科学 [panglaohu]
主持人:这次活动 我们需要选出最活动的网友 [主持人]
主持人:请两位作者评选最活跃的网页 [主持人]
主持人:网友 [主持人]
panglaohu:注意,你要是不optimize在你关闭reader时,lucene自己也optimize一下 [panglaohu]
panglaohu:呵呵 [panglaohu]
panglaohu:我这里真是慢啊 [panglaohu]
chaichao 流口水的 :ad [chaichao]
主持人:经与两位作者讨论后,我们选出 [主持人]
dogwoods:人太少了,大家都算是吧 [dogwoods]
主持人:chineselio [主持人]
chineselio: 谢谢 [chineselio]
panglaohu:呵呵,要是送书先看看china-pub的勘误贴 [panglaohu]
主持人:以后我们会经常举办这样的活动 [主持人]
chineselio: 真实荣幸啊! [chineselio]
panglaohu:我们为了负责,还是马上就勘误了一遍 [panglaohu]
panglaohu:多谢,大家的参与 [panglaohu]
dogwoods:这么几个人,就送一本? [dogwoods]
jaly: 也希望大家能够提出宝贵的意见和建议 [jaly]
主持人对panglaohu说 :您的联系方式 [主持人]
panglaohu:国外早就有搜索的大学课程了,国内还没有开,只是几个名校的研究生课程有 [panglaohu]
主持人:同时也欢迎大家加入我们的读者QQ群 [主持人]
[系统信息] hulei 离开我们的聊天室[Wed Oct 15 16:53:18 2008]
panglaohu:所以我想大家还是对事情挺认真的 [panglaohu]
panglaohu:主持人是问chineselio的联系方式吧 [panglaohu]
刘峰: 搜索应该算相对比较成熟的技术吧 [guest]
主持人对chineselio说 :您的联系方式 [主持人]
panglaohu:我们不但想用开源,我们还要了解开源,分析他,之后创建他,追赶国外 [panglaohu]
panglaohu:对,比较成熟了,但是中国动手的太少了 [panglaohu]
panglaohu:其实刘峰也提出很好的问题,欢迎以后继续探讨 [panglaohu]
主持人:同时也欢迎大家加入我们的读者QQ群51968553 [主持人]
刘峰: 谢谢 胖老师 [guest]
jaly: 其实这个和中国国情相关。国内喜欢拿来主义,就是拿来用,却不问究竟。 [jaly]
chineselio: 感觉普及的还不够 [chineselio]
panglaohu:再次向大家问好,如果有问题欢迎询问:pang...@gmail.com [panglaohu]
刘峰: 没办法 发展中的 都这样 来不及研究 只是为了产生经济效益 呵呵 [guest]
panglaohu:家立的自己公布 [panglaohu]
chineselio: 谢谢两位作者! [chineselio]
panglaohu:呵呵 [panglaohu]
panglaohu:技术核心才是真正的生产力 [panglaohu]
jaly: sjl....@gmail.com [jaly]
刘峰: 是的 [guest]
jaly: 欢迎大家线下讨论。 [jaly]
panglaohu:如果有时间,我会对SOA的一些问题,发表一下意见 [panglaohu]
jaly: google的论坛是开放的 [jaly]
panglaohu:呵呵 [panglaohu]
刘峰: 期待 [guest]
panglaohu:希望那时主持人会想到我 [panglaohu]
chineselio: 支持 [chineselio]
jaly: 如果有时间,对ISO8583的内容我也能和大家share一下 [jaly]
主持人:感谢本次活动网友们的支持 [主持人]
jaly: 谢谢大家的参与! [jaly]
panglaohu:我得去忙了,向大家的到来,再次致谢,向主持人感谢!bye [panglaohu]
jaly: 尤其谢谢dogwoods,后面提出了很多问题。虽然没有得到礼物,但是我们可以继续沟通 [jaly]
howman:感谢两位作者. [howman]
主持人:同时也感谢两位作者从百忙之中参加活动! [主持人]
howman:一定来支持两位的书咯. [howman]
刘峰: 抱拳团团一拜道:"敝人对各位的景仰之情,有如涛涛江水连绵不绝。" [guest]
jaly: 我和老吴都期待大家的来信 [jaly]
jaly: 谢谢各位! [jaly]
panglaohu:呵呵,书只是我们在生活中感悟,表示有段时间没有白过 [panglaohu]
chineselio: 感谢你们的分享精神! [chineselio]
[系统信息] ttttt 进入聊天室.[Wed Oct 15 17:04:04 2008]
panglaohu:真的感谢,我先开会去了,bye [panglaohu]
chineselio: see you [chineselio]
jaly: Later ! [jaly]
刘峰: 飘啊飘的一段情,有雨也有风……蓦然回首你仍在,浪漫红尘中……再见了…… [guest]
Reply all
Reply to author
Forward
0 new messages