Sphinx 的那些麻烦事神仙的仙居 » 车东's shared items in Google Reader

Sphinx 搭了一个全文检索。虽说 Sphinx 本身已经实现了很多功能,简单应用基本只需要配置就行用,不需要做很多开发。但我做的玩意不简单,所以还是碰到了不少麻烦事。

一个是分布式索引更新问题。文档里说是分布式索引也支持更新。但我搭了一个两层的索引,第一层是 remote 的,第二层是 local 的,结果就返回0(失败)。后来咨询了一下,再试验了一下,发现单层的分布索引没问题,两层 remote 或者两层 local 也没问题,就是混用不行…… 不清楚这么设计的意图是啥。

Sphinx 出于搜索性能考虑,并没有直接实现增量索引功能,需要自己实现。一般是先为增量部分单独建一个小索引,然后合并回原来的索引。虽然会引起两倍于原索引的IO,但速度还挺快。

配置文件不灵活也是个缺点。Sphinx 的配置文件不支持 include 。每个不同的 searchd 实例需要加载不同的配置文件。如果不同的配置文件里有不少重复的部分,每个 copy 一份维护就麻烦。只好用模版程序生成了。我用的 coreseek 的版本。其中加入了一个 python 数据源。我用它包装了一个 json pipe 数据源。然后需要配置一个命令行命令。然后发现,所有能用的配置项都写死在了程序里。只有这些配置项能用。想增加新的配置项只有去改源代码。为了避免以后维护补丁的麻烦,就只好复用原来的 xmlpipe_command 了。好歹是个 command……

Sphinx 还是不够成熟,但对于小型网站来说足够简单易用,功能很丰富,性能也很好,并且有许多语言的绑定。但是在可扩展性和二次开发上还是不够。

 


随机文章:

看了《叶问》了 2008-12-16
导出错误编码的mysql数据库 2008-04-12
为啥是英语…… 2008-01-16
笔试回来 2006-10-10
破解foxmail密码 2006-02-02

01:23 书、影、音 新增“豆瓣评分” » 豆瓣blog

做豆瓣的使用调研时,我们发现,豆瓣成员们在挑选书、电影、唱片时,对“评分”的关注度很高。我们为每一个条目增加了 “豆瓣评分”(在评价分布图上方)。

“豆瓣评分”是海量豆瓣用户评价数据的平均值,通过算法的调校滤掉了恶意评价对数据的影响。更客观准确地反映一部电影、一本书、一张唱片的真正价值。并且其形式更为直观(平均的评星数及一个折算后的分值),今后你会在更多地方看到它。

以电影为例,点击评分下方 XXX人评价 ,你将会看到一张最近3个月内参这部电影评价数的趋势图。

与此同时,我们对影片的介绍区进行了一些小改动(图1),将分布在各处的操作集中在一起,便于你使用。(如果你是一个豆瓣收藏狂人,可能会出现短期的排异反应,需要花一点时间来适应: )


^==Back Home: www.chedong.com

^==Back Digest Home: www.chedong.com/digest/

<== 2009-05-26
  五月 2009  
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
==> 2009-05-28