【问题标题】:Global Full Text Search and Role permissions - multiple products全局全文搜索和角色权限 - 多个产品
【发布时间】:2019-12-19 11:22:28
【问题描述】:

我正在为产品套件开发全局搜索功能。我们有 4 种不同的产品,产品 A、B、C 和 D。每种产品都有自己的用户规则,这些规则定义了对全局搜索结果的可访问性。

我想要一些建议,就技术而言,什么是更适合此类设计问题的最佳选择? 我对弹性搜索进行了一些研究 - 但我被困在这部分 我如何应用所有差异产品的安全规则来过滤 搜索结果

任何指针都会很有帮助

我研究了 Solr、graph-ql 和 elastic-search。但这并没有回答我如何管理所有产品都不同的安全规则。不知道如何合并所有这些以及如何过滤查询结果。

我肯定会利用 No-SQL,因为 SQL 不是解决这类问题的正确方法。但是,角色/安全是我关心的问题

作为用户,我应该能够根据关键字对所有产品进行全局搜索。结果应显示基于用户的数据,其安全角色和信息将从基于用户角色的所有产品中检索

请注意 - 我不允许使用任何云技术,如 azure、aws 等。

【问题讨论】:

    标签: elasticsearch design-patterns database-design solr graphql


    【解决方案1】:

    如果您知道要搜索的产品是什么,那么您可以单独收集每个产品。您可以索引产品的属性/元数据以及用户访问规则。

    如果您没有获得将搜索哪个产品的信息,那么您可以尝试将产品数据与用户访问规则一起索引。

    在这里,您可以使用索引单个集合中的所有数据,并使用 solr 云的分片和复制功能,使数据分散,帮助您实现可扩展性和高可用性。

    【讨论】:

    • 感谢您的回复。真正关键的部分是,一个用户可以访问多个产品。此外,所有产品都有不同的安全和访问规则。我试图想出一个通用的数据库或框架,其他产品可以在其中推送他们的规则,并且该平台可以用于查询过滤器 - 关于我如何实现这一点的任何建议?
    猜你喜欢
    • 2011-08-21
    • 2011-10-22
    • 2013-10-19
    • 2010-10-26
    • 2015-10-28
    • 2013-03-12
    • 1970-01-01
    • 2020-07-20
    相关资源
    最近更新 更多