Cassandra与自建开源Cassandra性能对比 本文基于自建开源Cassandra与华为云GeminiDB Cassandra,进行了性能对比测试,具体包括测试环境、测试模型和详细的测试步骤,作为性能参考。 测试环境 开源Cassandra测试环境 表1 开源Cassandra测试环境
系统架构 架构介绍 云数据库 GeminiDB是一款基于计算存储分离架构的分布式数据库,由多个同构节点组成计算集群。数据存储在分布式共享存储池中。计算和存储资源解耦,支持独立弹性伸缩,扩缩容无数据迁移。 图1 系统架构 更多架构特点请参见系统架构。
GeminiDB Redis和开源Redis、其他开源Redis云服务有什么区别? 开源Redis是常规的缓存产品,纯内存架构。GeminiDB Redis在开源Redis上做了增强,是一款兼容Redis协议的弹性KV数据库,支持远超内存的容量和极致的性能。热数据在内存中,全量数据在存储池中。有以下特点:
即时通讯(Instant Messaging,简称IM)是一个实时通信系统,允许两人或多人使用网络实时的传递文字消息、文件、语音与视频。微信、QQ等IM类产品在这个高度信息化的互联网时代已成为生活必备品,IM系统中最核心的部分是消息系统,消息系统中最核心的功能是消息的同步、存储和检索。 消息同步:
据,保证客户业务可靠性。除此以外,PITR还可多次前后恢复,恢复到指定时间点后,既可向前,也可向后,让客户使用更省心。 比开源Redis数据备份性能更优 开源Redis使用多进程写时复制机制来实现快照的持久化。在持久化过程中,调用fork()产生一个子进程,fork()会阻塞Re
操作系统更新 GeminiDB Mongo实例需要适时进行操作系统更新,以提高数据库性能和数据库的整体安全状况。 实例内核版本升级时,GeminiDB Mongo会根据操作系统的实际情况,决定是否更新以及更新适合的操作系统冷补丁版本。 操作系统更新不会更改数据库实例的版本或数据库实例信息。
和开源Redis相比,GeminiDB Redis性能如何? GeminiDB Redis采用多线程架构,QPS可随CPU数量线性扩展,可支持1w-1000w线性扩展; 单点访问通常平均时延<1ms,P99<2ms,和开源Redis时延接近。 详细性能数据可参考性能测试报告。 父主题:
需要定期将成百GB甚至数TB全量画像数据导入画像数据库;全量数据导入越快,模型越精准,广告投放效果越好。 承载高并发访问 RTA系统要承接大量的实时竞价请求。以电商、金融客户的RTA系统为例,日常数据库QPS在几十万到数百万之间。 保持稳定的低时延 媒体侧要求广告主在40-100ms内返回决策结果,数据库需要在个位数毫秒内执行完请求。
Redis持久化机制是怎样的,会丢数据吗 开源Redis定期持久化,因此异常场景数据丢失风险概率比较大。GeminiDB Redis数据实时刷新至存储池,数据安全性更高。 和业界的其他NoSQL数据库一样,出于性能考虑,GeminiDB Redis的WAL(Write Ahead Log)日志写完操作系统的BUF
GeminiDB Mongo接口是一款兼容MongoDB生态的云原生NoSQL数据库,具有企业级性能、灵活弹性、高可靠、可视化管理等特点。 企业级性能 开源3倍性能提升,支持7*24小时在线数据实时写入,具备高可用和读写负载均衡能力。 灵活弹性 基于计算存储分离的分布式架构,实现分钟级计算节点
通过快速的响应时间来支持大量的连接。因此非常适合要求苛刻的物联网应用。 优势: 超强写入 小批量写入场景性能为开源版本InfluxDB的4.5倍,大批量写入场景性能为开源版本InfluxDB的3.3倍。 弹性扩展 基于计算存储分离的分布式架构,分钟级计算节点扩容,应对业务高峰期。
车联网车机数据存储、企业ERP系统等应用场景,详见业务场景推荐。 相比用户自建开源KV数据库方案(例如自建Redis/自建Pika等),GeminiDB提供以下优势价值: 表1 GeminiDB与自建开源KV数据库方案对比项 分类 对比项 自建开源KV数据库方案 GeminiDB
超强写入性能,数倍纯读性能提升,2倍读写性能提升。 解决开源痛点 解决了开源Cassandra数据一致性和GC的问题。 存储秒级扩缩容,业务完全无感知。 计算节点分钟级扩容,业务仅秒级抖动。 架构介绍 下图是GeminiDB Cassandra的服务部署架构。 典型应用 互联网应用 GeminiDB
息的实时性和高效性。 实时通知系统 在电商网站或社交媒体平台中,用户需要实时接收订单状态更新、评论、点赞等通知。利用 GeminiDB Redis的Pub/Sub能力,系统可以在状态变更时立即发布通知,所有相关用户都会及时收到更新。 监控和日志系统 在微服务架构中,服务之间的状态
补丁升级 如果当前实例的内核版本存在已知潜在风险、重大缺陷,或者已过期、已下线,系统会通过短信、邮件等渠道进行提前通知,并在可维护时间段内下发升级任务。 使用须知 当有对应的补丁更新时(定期同步开源社区问题、漏洞修复),请及时进行升级。 当数据库版本为风险版本时,会提醒用户进行数据库补丁升级。
Cassandra对表的数目有一定的上限要求。 使用须知 系统将节点内存的一半分配给存储引擎使用。 节点数量为奇数的集群容忍故障节点为N/2-1 , 偶数的集群容忍故障节点为N/2。 GeminiDB Cassandra中的hash环为表级别,tokens参数为表所对应的数据分片数,与开源Cassandra的num_tokens有差异。
恢复、计算存储独立扩容、监控告警等服务能力。GeminiDB Influx相较于社区版本InfluxDB,有更强的查询、写入以及数据压缩的性能。 本章节主要介绍社区版InfluxDB到GeminiDB Influx的迁移方案。 迁移原理 使用开源迁移工具data-migratio
可用区:可用区1。 弹性云服务器(Elastic Cloud Server,简称ECS):规格选择h3.4xlarge.2,16U32GB,操作系统镜像使用CentOS 7.5 64位版本。 压测数据模型:单行1KB大小。 压测平均CPU负载:50%。 被测试实例的规格:覆盖以下规格类型,详见表1
高频常见问题 产品咨询 GeminiDB Redis和开源Redis、其他开源Redis云服务有什么区别? 和开源Redis相比,GeminiDB Redis性能如何? GeminiDB Redis兼容Redis哪些版本,兼容哪些命令,客户端连接是否需要修改 自建Redis是否可以搬迁至GeminiDB
debug() Lua执行环境限制 开源Redis对Lua脚本的执行有一定的限制,比如限制脚本操作全局变量,限制随机函数的结果,限定能够使用的系统库和第三方库等。 GeminiDB Redis也继承了绝大多数的限制,但是针对如下情况,GeminiDB Redis与开源Redis存在差异: Write
您即将访问非华为云网站,请注意账号财产安全