有时候我们在开发的时候碰到的数据库不是 mysql 而是 mssql 或者 mongodb 等等。那么还能用 sphinx 。其实是可以的。 俺公司遇到个就是 要在 FB 系统下 的sphinx 去索引 win 服务器下的mssql 。 我是这样做的。废话不多讲了。给例子。。。。
核心单词: xmlpipe2 (通杀所有语言和数据库做sphinx 的问题)。 其实就是。你通过任何程序去 读取数据库信息然后构造一定格式的xml 文档 让 sphinx 去建索引。 就那么简单。
当时项目我用的是 python来实现。当然了 PHP 实现也很容易,为了预防返回的XML过大,所以PHP建议使用比较底层的xml解释器 : xmlwriter 。
其实python 也有类似的库。叫: loxun 。 是利用stringIO 来实现的。。
PHP 的请看官方推荐的办法: http://jetpackweb.com/blog/2009/08/16/sphinx-xmlpipe2-in-php-part-ii/
python 的我就帖我写的 例子 : python -> mssql - > xml -> sphinx 。
然后在看下 sphinx 这边建索引配置(只是简单的测试例子,如果要用在生产环境,还需要做增量和区段查询等。。。。。 -_-!不过呢这个例子小站也可以用了~):
那么有点同学问: 那 mongodb 和 sphinx 怎么弄?
这回童鞋们应该明白了吧。。如果还不明白当我没说过。。哈哈
核心单词: xmlpipe2 (通杀所有语言和数据库做sphinx 的问题)。 其实就是。你通过任何程序去 读取数据库信息然后构造一定格式的xml 文档 让 sphinx 去建索引。 就那么简单。
当时项目我用的是 python来实现。当然了 PHP 实现也很容易,为了预防返回的XML过大,所以PHP建议使用比较底层的xml解释器 : xmlwriter 。
其实python 也有类似的库。叫: loxun 。 是利用stringIO 来实现的。。
PHP 的请看官方推荐的办法: http://jetpackweb.com/blog/2009/08/16/sphinx-xmlpipe2-in-php-part-ii/
python 的我就帖我写的 例子 : python -> mssql - > xml -> sphinx 。
然后在看下 sphinx 这边建索引配置(只是简单的测试例子,如果要用在生产环境,还需要做增量和区段查询等。。。。。 -_-!不过呢这个例子小站也可以用了~):
那么有点同学问: 那 mongodb 和 sphinx 怎么弄?
这回童鞋们应该明白了吧。。如果还不明白当我没说过。。哈哈