algolia最佳实践:新索引或标签?

ahe*_*rve 5 algolia

我在我的网页上成功设置了一个algolia搜索引擎.我的后端将公共数据同步到algolia,搜索栏工作得很好.

现在我想为我的管理应用程序设置相同的内容.与公共应用程序不同,此应用程序应该能够从algolia恢复秘密数据.

到目前为止,我可以考虑两种方法:

  1. 对于每个文档,存储"公共"版本(带有"公共"标记)和管理版本(标记为"admin",以及其他字段).然后,自定义API密钥可以确保每个应用程序都可以访问正确的数据.

要么

  1. 创建一个新索引,也许my_admin_collection_index,复制设置,并像my_collection_index管理应用程序一样使用它.

所以在第一个版本中我搜索相同的索引,但是使用不同的标签; 在第二个版本中,我搜索两个不同的索引.

是否有一些关于如何在两种方法之间做出选择的见解?我会说我会更容易复制文档并在其上添加一些标签,但我无法真正说明这种方法对性能的影响.

谢谢 !

red*_*dox 8

第一种方法包括将所有对象推送到单个索引并使用权限标记它们是一种很好的方法.将该方法与安全API密钥相结合,您可以轻松扩展,同时保持安全的前端实现(例如,将密钥嵌入到javascript代码中).

即使Algolia引擎支持每个应用程序无限数量的索引(我看到有+700,000个索引的用户),索引太多可能会导致一些索引开销和速度减慢(特别是在共享索引CPU的共享计划中)其他客户).