用例

搜索和查询用例

应用程序搜索和外部辅助索引

Redis Stack 支持应用程序搜索,无论记录来源是Redis还是其他数据库。在后一种情况下,您可以使用Redis Stack作为数值或全文数据的外部辅助索引。

Redis数据的辅助索引

您可以使用Redis哈希和JSON文档来表示您的数据模型。然后,您可以声明辅助索引来支持对数据集的各种查询。Redis Stack会在添加或更新与索引匹配的哈希或JSON文档时自动更新索引。

地理分布式搜索

在地理分布式搜索中,哈希和JSON文档以通常的 主动-主动方式 处理。索引会跟踪数据库中文档中写入的任何内容。在每个数据库上创建一个索引,然后将同义词(如果使用)添加到每个数据库。

统一搜索

您可以使用Redis Stack搜索多个源系统,例如文件服务器、内容管理系统 (CMS) 或客户关系管理 (CRM) 系统。您可以使用ETL工具批次处理源数据,或作为实时流(例如,Kafka或Redis流)。

分析

数据通常来自多个源系统。Redis Stack可以提供维度和事实的统一视图。您可以根据维度查询数据,按维度分组,并对事实应用聚合。

用于分面搜索的Redis Stack
Facet 是在 RediSearch 中作为标签实现的多个显式维度。您可以使用聚合(`COUNT`、`TOLIST`、`FIRST_VALUE` 和 `RANDOM_SAMPLE`)根据 Facet 查询数据。

短暂搜索(零售)

当用户登录网站时,购买搜索历史记录会从另一个数据存储中填充到索引中。这需要轻量级索引创建、索引过期和快速文档索引。

应用程序/服务在用户登录时创建临时且特定于用户的全文索引。应用程序/服务可以直接访问特定于用户的索引和主数据存储。当用户注销服务时,索引将被显式删除。否则,索引将在一段时间后过期(例如,在用户会话过期后)。

对于此类应用程序,使用 Redis Stack 可提供以下优势

  • 搜索索引仅在需要时才填充。
  • 只有很小一部分(例如 2%)的用户同时处于活动状态。
  • 用户仅在短时间内处于活动状态。
  • 索引的文档数量很少,与持久搜索索引相比,这非常经济高效。

实时库存(零售)

在实时库存零售中,关键问题是产品可用性:“什么在什么地方可用?” 此类项目的挑战在于性能和准确性。Redis Stack 允许对数百万种商店/SKU 组合进行实时搜索和聚合。

您可以从旧版库存系统到 Redis Stack 建立实时事件捕获,然后让多个库存服务对其进行查询。然后,您可以使用组合查询,例如项目计数、价格范围、类别和位置。利用地理分布式搜索(主动-主动)来实现您的远程商店位置。

对于此类应用程序,使用 Redis Stack 可提供以下优势

  • 对下游消费者(如营销、商店/电子商务和履行)的低延迟查询
  • 商店和数据中心之间立即且更高的一致性
  • 改善客户体验
  • 实时定价决策
  • 减少购物车放弃
  • 减少补救(退款、取消)

实时对话分析(电信)

实时收集、访问、存储和利用通信数据。捕获网络流量并将其存储在全文索引中,以便深入了解数据。

使用连接信息收集(源 IP、DNS)和对话数据收集(Wireshark/TShark 实时捕获)收集数据。然后对对话数据进行过滤、转换并存储在 Redis 中,以执行搜索查询并创建自定义仪表板以进行分析。

对于此类应用程序,使用 Redis Stack 可提供以下优势

  • 对性能问题、安全威胁和网络故障的见解
  • 提高服务正常运行时间和安全性

研究门户(学术界)

研究门户允许用户搜索文章、研究、规范、过去的解决方案和数据,以回答特定问题,并利用现有的知识和历史。

要构建这样的系统,您可以使用支持标签查询、数字范围查询、地理位置查询和全文搜索的索引。

对于此类应用程序,使用 Redis Stack 可提供以下优势

  • 创建相关的个性化搜索体验,同时执行内部和监管数据治理策略
  • 提高生产力、安全性,以及合规性
RATE THIS PAGE
Back to top ↑