django-sphinx-db:原始sql查询,用msql表连接?

时间:2013-07-29 06:13:49

标签: django sphinx django-sphinx

我正在考虑使用django-sphinx-db https://pypi.python.org/pypi/django-sphinx-db

在我安装之前,我想我会检查一下:

是否可以使用常规mysql表加入特殊的sphinx表?我可以使用原始查询吗?

关于django-sphinx-db的其他想法?我不应该使用它的任何理由?

我打算在sphinx中索引一些文本内容,但是在mysql表中会有匹配的图像。所以我需要连接内容表和图像表。

1 个答案:

答案 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后端。但要让它发挥作用可能会很棘手。