首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何用redis适配器在geode中复制非字符串数据

如何用redis适配器在geode中复制非字符串数据
EN

Stack Overflow用户
提问于 2017-10-11 14:45:06
回答 1查看 58关注 0票数 1

在大多数情况下,Geode为每个数据结构分配一个分区区域。例如,每个排序集都分配了自己的分区区域,其中键是用户数据,值是用户提供的分数,条目按分数进行索引。这种设计的两个例外是数据类型String和HyperLogLog。所有字符串都分配给单个分区区域。

对于WAN复制,我们创建一个网关-发送方,然后将此发件人分配到特定区域进行复制。使用redis适配器,在默认情况下,我们只有两个区域,如上面所写。因为只有当我们为"set“数据结构添加一个键时,才会创建它的区域。我们如何用redis适配器复制这些区域?https://cwiki.apache.org/confluence/display/GEODE/GemFire+Multi-site+%28WAN%29+Architecture

由我完成的广域网复制步骤:

代码语言:javascript
运行
复制
start locator --name=dc1  --properties-file=gemfire.properties
start server --name=redis  --redis-port=11211 --J=-Dgemfireredis.regiontype=REPLICATE
create gateway-sender --id=dc1 --remote-distributed-system-id=3
create gateway-receiver

现在,我列出了目前可用的区域。

代码语言:javascript
运行
复制
Cluster-1 gfsh>list regions
List of regions
---------------
ReDiS_HlL
ReDiS_StRiNgS

将两个区域分配给网关-发件人。

代码语言:javascript
运行
复制
alter region --name=ReDiS_StRiNgS --gateway-sender-id=dc1

它能够复制字符串,但不能复制其他数据结构。

gemfire.properties

代码语言:javascript
运行
复制
mcast-port=0
locators=1dc1[10334]
distributed-system-id=1
remote-locators=dc2[10334] 

我在dc2上运行了相同的命令。

EN

回答 1

Stack Overflow用户

发布于 2017-10-11 17:41:45

在为其他数据结构创建区域之前,Redis适配器实现看起来像cache.xml,以查看是否定义了该区域。因此,在您的示例中,您可以在启动服务器时在cache.xml中定义一个具有网关发送方的区域。请参阅本参考来创建cache.xml文件这个等级信息也将是有用的。一旦有了,就可以运行以下命令:

代码语言:javascript
运行
复制
gfsh>start server --cache-xml-file=/path/to/cache.xml
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46691221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档