检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
开发参考 开发运维规范 命令兼容列表 通过程序代码连接实例示例 Lua脚本编写规范 keyspace通知功能 exHash命令列表 大Bitmap初始化 客户端连接池参数配置 通过openAPI实现自定义周期备份 通过并行SCAN提升全库扫描速度 使用 Pipeline 访问 GeminiDB
事务将应用程序的多个读、写操作捆绑在一起成为一个逻辑操作单元,是一个执行的整体,整个事务要么成功,要么失败。在一个连接中,当客户端执行multi命令后,redis开始将后续收到的命令缓存在队列中,当客户端发送exec命令时,redis按照顺序依次执行队列中的所有命令。如果有一个命令执行失败则事务回滚,所有命令要么全部成功,要么全部失败。
在分布式系统中,为了保证数据的一致性和防止并发冲突,经常需要使用分布式锁来确保同一时间只有一个进程或线程能够执行特定的代码段。 本文将介绍如何利用lua实现分布式锁。 Redis分布式锁原理 Redis分布式锁的基本原理是利用Redis的原子命令来创建一个锁。最简单的实现方式是使用SETNX命令,这个命令只有在键
开发运维规范 本章节结合华为云数据库开发运维经验,从开发和运维角度为您提供GeminiDB Redis产品使用规范。根据这些建议,您可以有效评估以及改善业务系统稳定性。 开发规范 在开发业务程序时需重点关注以下开发规范,避免因使用方式不当影响业务稳定。 表1 GeminiDB Redis开发规范
阿里云数据库Redis/Tair到GeminiDB Redis的迁移 本章节主要介绍阿里云数据库Redis/Tair到GeminiDB Redis的迁移方案。 迁移原理 使用阿里云的数据迁移工具DTS中的数据迁移功能,该功能支持将阿里云Redis服务的数据迁移至其他Redis服务中,利用该工具避开阿里云
PUBLISH 实现了发布/订阅消息传递范式。在该范式中,消息发送者(发布者)并不直接将消息发送给特定的接收者(订阅者),而是将消息发布到一个主题(channel)上。所有对该主题感兴趣的订阅者都能够接收到消息。这种模式的优势在于它的解耦性,发布者和订阅者之间不需要相互了解,降低了系统的耦合度。
install bitmap # 参数 max_bytes = 1024 * 1024 * 64 # 构造一个64MB的bitmap max_bits = max_bytes * 8 # 一个byte可以存储8个bit,对应大概5亿多元素 # 这个方案不需要python内置的bitmap类型
Redis的迁移 SSDB是一款使用C/C++语言开发的高性能NoSQL数据库,和Redis具有相似的API,支持KV,list,map(hash),zset(sorted set),qlist(队列)等数据结构,因此得到了广泛的应用。SSDB是一个持久化的KV存储系统,底层使用level
/表示递增触发。 5/15表示从第5秒开始,每隔15秒触发。 L表示最后,只能出现在日和周两个域。L前加数据,表示在该数据的最后一个触发,如6L表示在最后一个星期五触发。 W表示离指定日期最近的工作日触发。15W表示离该月15号最近的工作日触发。 #表示每月的第几个周几。6#3表示该月的第三个周五触发。
查看GeminiDB Cassandra IP地址和端口 本章节主要介绍如何在云数据库 GeminiDB管理控制台查找GeminiDB Cassandra实例的IP地址和端口等信息。 操作步骤 登录管理控制台。 在服务列表中选择“数据库 > 云数据库 GeminiDB Cassandra
RocksDB是FaceBook基于LevelDB开发的一个持久化KV单机数据库引擎,具有强大的顺序读写及随机写性能。相对于LevelDB,RocksDB做了许多优化,性能有了很大提升, 而且解决了LevelDB主动限制写的问题。作为一个数据库引擎,RocksDB没有设计成C/S网络
ConnectionError: print("Failed to set key after retries.") Hiredis Hiredis 是一个低级别的C语言库,不提供内置的自动重试机制,需要手动编写逻辑。 以下是一个简单的示例,展示如何通过一个循环和延迟来实现建立连接阶段的自动重
Redis支持与限制的命令,详情请参见开发运维规范。 由于GeminiDB Redis和开源Redis集群计算hash算法不同,因此GeminiDB Redis的部分命令需要给对应的key打上hash tag,否则会出现非预期的行为。hash tag使用建议参考开发运维规范。 使用JedisCluster访问
Redis支持与限制的命令,详情请参见开发运维规范。 由于GeminiDB Redis和开源Redis集群计算hash算法不同,因此GeminiDB Redis的部分命令需要给对应的key打上hash tag,否则会出现非预期的行为。hash tag使用建议参考开发运维规范。 使用Sentinel模式连接实例
本文介绍了使用 Pipeline 访问 GeminiDB Redis 的原理以及注意事项。 Pipeline 简介 Redis 是一个请求/响应模型的服务,通常执行一个命令的流程为: 图1 Redis 命令执行流程 客户端发送命令到 Redis 服务器。 Redis 服务器收到命令,排队等待处理。
Redis实例的全部分区信息,用于后续的并行扫描。 数据分区:GeminiDB Redis集群实例底层存在许多数据分区,分布在不同节点上,每个分区名称为一个16字符长度的ID。一个实例底层的数据分区名称和总数量在实例创建时就固定,不会随实例变更而发生改变。 获取数据分区列表:通过执行INFO ROUTE命令可以获取GeminiDB
资源池中保持最小的空闲可用连接数,单位:个 这部分连接数不会被回收,可防止流量增量时,连接创建不及时。 0 10~20 maxWaitMillis 资源池连接用尽后,调用者的最大等待时间,单位:毫秒。 -1 建议设置一个合理的超时时间,避免出现当连接池用尽后,应用阻塞不响应的情况。 testWhileIdle 是
Key:exHash的key,用于指定作为命令调用对象的exHash。 field:exHash中的一个元素,一个exHash key可以有多个field。 value:field对应的值,一个field只能有一个value。 EX:指定field的相对过期时间,单位为秒,为0表示马上过期,不传此参数表示不过期。
Redis当前版本不涉及evict事件。 输入的参数中至少要有一个K或者E ,否则的话,不管其余的参数是什么,都不会有任何通知被分发。 举个例子,如果只想订阅键空间中和列表相关的通知,那么参数就应该设为Kl ,诸如此类。 将参数设为字符串 "AKE" 表示发送所有类型的通知。 父主题: 开发参考
报错 slaveping_thread.cc-ThreadMain-90: error: Ping master error 执行pika-port时指定的IP填写了 127.0.0.1, 需要配置为其它IP,比如eth0的IP。 父主题: 数据迁移