搜索和查询 Active-Active 数据库

搜索和查询 Active-Active 数据库。

从 RediSearch 2.x 开始,在 Redis Enterprise 软件 (RS) 6.0 及更高版本中受支持,您可以在创建时 启用搜索和查询 Active-Active 数据库

您可以在 Active-Active 数据库的任何实例上运行搜索操作。

工作原理

  1. 创建启用了 RediSearch 2.x 的 Active-Active 数据库。
  2. 在数据库的每个实例上创建索引
  3. 如果您正在使用同义词,您需要将它们添加到每个副本。
  4. 索引由每个实例在数据库键空间之外维护,因此仅同步对数据库中哈希的更新。

命令兼容性

Active-Active 数据库不支持以下搜索和查询命令

示例

以下是一个示例,帮助您可视化 Active-Active 搜索和查询

时间 描述 CRDB 实例 1 RediSearch 实例 1 CRDB 实例 2 RediSearch 实例 2
t0 在每个实例上创建索引 FT.CREATE idx .... FT.CREATE idx ....
t1 将 doc1 作为哈希添加到实例 1;RediSearch 在实例 1 上索引 doc1 HSET doc1 field1 "a" (索引 doc1 field1 "a")
t2 将 doc2 作为哈希添加到实例 2;RediSearch 在实例 2 上索引 doc2 HSET doc1 field2 "b" (索引 doc1 field2 "b")
t3 在每个实例中搜索 "a" 仅在实例 1 中找到结果 FT.Search idx "a"
1) 1
2) doc1
FT.Search idx "a"
1) 0
t4 Active-Active 同步 - 同步 - - 同步 -
t5 在每个实例中都找到了两个哈希 HGETALL doc1
1) "field2"
2) "b"
3) "field1"
4) "a"
HGETALL doc1
1) "field2"
2) "b"
3) "field1"
4) "a"
t6 在每个实例中搜索 "a" 都能找到两个文档 FT.Search idx "a"
1) 1
2) doc1
FT.Search idx "a"
1) 1
2) doc1

实际结果是您拥有一个具有高一致性水平的地理分布式数据库,该数据库还可以在任何实例上运行搜索操作。

RATE THIS PAGE
Back to top ↑