Algolia 是否支持透视表和关系表?


Does Algolia support pivot and relational tables?

我正在使用laravel php来构建一个Web应用程序,并且我正在使用algolia作为搜索服务。但是,我无法根据数据透视表和其他表中的外部 id 使 algolia 返回结果。所以我的问题是,阿尔戈利亚目前不支持数据透视表和关系表是真的吗?还是我没有做对,这完全是我的错?提前非常感谢

搜索引擎最初不是为处理关系而设计的:这是数据库做得很好的事情,但在查询时成本很高。

出于性能原因,Algolia 引擎不支持这种关系。因此,最好的方法是在将数据推送到 Algolia 之前对其进行非规范化。

例:

您有一个users(id, name)posts(id, author_id, content) SQL表,并且希望在显示帖子内容和作者姓名的同时搜索帖子。

你应该做一个JOIN来解析作者的名字,并将一个{ "objectID": 42, "content": "...", "author_name": "<fetched from users table>" }对象推送到 Algolia。