0

我有数百个文档,每个文档都有几页。用户可以在文档中搜索单词或句子。现在我期待所有包含搜索文本的文件。

目前使用 Angular 作为前端的 REST API。

我刚刚检查了Elastic search

重新搜索全文搜索

我喜欢 redisearch 搜索,但我不确定它有多安全,因为它首先在实际数据上创建索引。

我的观点是:

  1. 使用这两种搜索方法的优缺点是什么。
  2. 如果文件被加密,他们会工作吗
  3. 是否有任何其他框架提供非常安全的加密文档并在文件加密时搜索实际数据(显然首先解密然后动态搜索)
4

1 回答 1

0

在浏览了 Elastic 搜索和 Redis 文档这么多天之后,这是我的见解:

Redis 和 ElaticSearch 用于加密内容

  • Redis Search 比 Elasticsearch 快,但是 Redis Search 的社区支持较少。kibana、logstash 等 Elasticsearch 工具在查看和分析数据方面非常有帮助。

  • 对于加密内容,使用带有 NOINDEX 选项的 redisearch 并将您的主要数据存储在加密数据存储中。对于我的情况,主要数据存储是 s3 存储桶。RediSearch 只需要存储倒排索引。

  • AWS Elasticache 提供 lambda 函数,可以创建静态加密数据的索引。加密仅在静态数据对象上而不是在元数据上。因此,您可以对元数据执行搜索,但它不会是全文。对于全文搜索,将数据显式传递给 Elasticsearch 以进行索引。

检查此链接

AWS 云搜索选项

  • 另一种选择是 AWS 云搜索。CloudSearch 能够通过服务器端加密从存储桶中索引项目。您必须传递正确的凭据才能访问数据。

检查此链接2:

  • AWS cloudsearch 虽然很贵。他们将对执行的所有操作收费。
于 2019-07-10T20:52:52.820 回答