我正在考虑使用django-sphinx-db https://pypi.python.org/pypi/django-sphinx-db
在我安装之前,我想我会检查一下:
是否可以使用常规mysql表加入特殊的sphinx表?我可以使用原始查询吗?
关于django-sphinx-db的其他想法?我不应该使用它的任何理由?
我打算在sphinx中索引一些文本内容,但是在mysql表中会有匹配的图像。所以我需要连接内容表和图像表。
答案 0 :(得分:0)
是否可以将特殊的sphinx表与常规的mysql表连接起来?
没有。
SphinxQL
(因此django-sphinx-db
)是一个单独的“服务器”。因此,您连接到mysql以运行mysql查询,并搜索以进行sphinxql查询。它们位于具有单独连接的单独物理服务器上。
使用django-sphinx-db
,您可以使用它来管理连接,SphinxSearch实例以及您喜欢的用于访问mysql服务器的系统。
您运行sphinx查询,然后从mysql中获取文档。在应用程序代码中执行“加入”。
-
加入需要使用SphinxSE。然后你只需使用正常连接到mysql服务器,运行查询(mysql服务器,通过SphinxSE在内部运行实际的sphinx查询) http://sphinxsearch.com/docs/current.html#sphinxse
在theroy中也可以使用FEDERATED mysql引擎,以类似于SphinxSE的效果。只是使用FEDERATED来代理sphinxQL后端。但要让它发挥作用可能会很棘手。