华为云 NoSQL 数据库是一款基于计算存储分离架构的分布式多模 NoSQL 数据库服务,以云数据库 GeminiDB 和云数据库 GaussDB NoSQL 为代表,其架构、性能与应用场景的具体介绍:
架构
- 存算分离:将数据库的存储和计算功能分离开,存储功能由存储引擎负责数据的读写和存储,计算功能由计算引擎负责数据的查询和计算,两者通过接口通信和协作。这样可以实现更高的灵活性和扩展性,计算和存储资源能够解耦并独立弹性伸缩。
- 多模扩展:在存算分离架构之上,快速扩展多种协议支持,如 Redis、MongoDB、Cassandra、DynamoDB、InfluxDB 等,满足不同用户对不同数据模型的需求,实现一库多用。
- 高可用设计:采用分布式集群架构,支持跨三个可用区(AZ)部署,能容忍 N - 1 个节点故障。当部分节点出现故障时,通过修改路由表,无需搬迁数据即可实现秒级故障接管,保障服务的连续性。
- 弹性扩展:计算扩容可在分钟级完成,增加路由信息,将原有节点的路由分配给新节点,业务仅产生秒级抖动。存储扩容则是调整配额参数,可实现秒级扩容,业务 “0” 感知,并且支持 4GB - 36TB 的平滑扩缩容,最新版本还支持自动扩容。
- 分级存储:通过冷热分离策略,根据用户配置的参数,将超过一定时间的数据定义为冷数据,异步推到远端的对象存储服务(obs)上,热数据则存储在共享存储中,节省用户存储成本,且对应用 “0” 改造。
性能
- 高读写性能:例如云数据库 GaussDB (for Cassandra) 和 GaussDB (for Mongo) 相比开源版本有 3 倍性能提升,支持 7*24 小时在线数据实时写入,具备高可用和读写负载均衡能力。GeminiDB for Cassandra 更是在超强写入性能的基础上,通过优化存储引擎,实现了数倍读性能提升。
- 超低时延:存储层可提供超低时延数据访问,例如 GeminiDB Redis 接口能提供稳定低时延,某全球游戏公司将数据搬迁到 GeminiDB 后,实现了 0.1ms 访问时延稳定无抖。
- 高效备份恢复:采用快照备份恢复技术,效率高,并且具备高速备份恢复能力,相比社区版有显著优势。
应用场景
- 物联网(IoT):适用于各种行业的物联网场景,能处理大量传感器传入的密集写入数据,凭借弹性扩展能力应对 7*24 不间断的大数据量写入,为后续的数据分析提供支持。
- 互联网:在互联网大数据场景中,如记录大规模的用户行为数据等,具备高并发写入性能和高可扩展性,保障集群高可用和业务连续稳定。
- 游戏:能够轻松支撑千万级用户,实现性能大幅提升,满足游戏中对大量玩家在线数据的存储和实时读写需求,支持秒级存储扩容以应对业务高峰。
- 广告推荐:例如 GeminiDB 能助力实时广告业务快速上线,利用其高性能和多模特性,处理广告投放中的各种数据,如用户行为数据、广告曝光和点击数据等,为精准广告推荐提供支持。
- 监控领域:云数据库 GaussDB (for Influx) 广泛应用于资源监控、业务监控分析等,提供大并发的时序数据读写,支持多维聚合计算和数据可视化分析能力,帮助企业实时监控系统运行状态,及时发现问题并进行分析。