本文分享自华为云社区《多模归一,一生万物——华为云多模数据库GeminiDB架构与应用实践》,作者: GaussDB 数据库 。

在这个信息爆炸的时代,数据的管理和应用变得越来越重要。互联网用户的规模化使得业务数据也呈现出多样性,包括社交关系、系统日志、Json、KV等。同时,越来越多的软件开发团队也倾向于使用以非关系型数据库系统为中心,更轻量、更敏捷的软件开发模式,而多模数据库作为一种新兴的数据管理解决方案,正受到越来越多的关注。

多模数据库系统和相关技术,是在NoSQL运动中产生和发展起来的。为了更系统地了解多模数据库,华为云NoSQL数据库研发总监余汶龙通过直播(链接见文末)的方式,分享了《华为云多模数据库GeminiDB的技术架构及应用实践》,解析GeminiDB的技术特性、架构优势等,亲见云原生多模数据库如何在实际应用中大放异彩,解决真实世界的复杂数据挑战。

GeminiDB是华为2017年开始启动的云原生分布式NoSQL数据库研发项目,于2019年7月正式亮相,首发文档引擎,支持MongoDB协议,2019年12月正式发布宽表引擎,2020年发布时序引擎,2021年发表KV引擎,2023年发布DynamoDB引擎。同年11月,GaussDB NoSQL正式升级为独立品牌GeminiDB。因此,GeminiDB也是一款由KV、文档、宽表和时序组成的超融合多模数据库。

GeminiDB云原生多模数据库作为华为云数据库家族中的一员,在全球有23个Region,66个可用区,局点广泛分布于海内外,总共服务了全球2000多家大型的企业,包括互联网、政府、电信等行业。

GeminiDB全球布局

GeminiDB是国内第一款支持存算分离的NoSQL数据库,兼容5种热门生态,如GeminiDB Redis接口、GeminiDB Mongo接口、GeminiDB Dynamo接口、GeminiDB Cassandra接口、GeminiDB Influx接口。

GeminiDB在短短几年内能够得到快速发展,“存算分离”和“多模扩展”的架构核心设计,是提升数据库整体能力的关键。当发生故障时,GeminiDB云原生架构具备故障秒级接管能力。GeminiDB实例3AZ高可靠,在单AZ故障的情况下,可以做到0秒RPO、数据零丢失;在任意一个节点发生故障的时候,实现RTO<10秒,搭乘高可用双活实例之后,SLA可达到99.995%,性能遥遥领先。同时在扩计算时,业务仅秒级抖动;在分级存储时,实现自动化冷热交换,应用“0”改造。

GeminiDB出色的性能,备受广告、游戏、电商等行业的青睐。游戏行业某头部公司,为降低业务高峰期游戏卡顿、延迟,打造用户实时在线通畅的体验感,使用GeminiDB数据库作为前端缓存(需要配置大内存),加速应用访问,最终实现了该游戏在全球23区域内支持资源快速下发,性能5倍提升,0.1ms稳定无抖,并轻松支撑千万级玩家在线,TB级地图数据实时同步更新,轻松应对20倍轻业务高峰变化。

还有华为手机上的华为账号、运动健康、应用市场等APP,其背后总节点数超过了1万,数据量超过了10PB,这些APP使用的是GeminiDB为其提供的双活方案,为用户提供华为终端云体验天花板。

GeminiDB在各个行业中的应用案例不胜枚举。经过数年的产品能力打磨,GeminiDB已经支持了众多的业务场景,同时,丰富的业务场景对 GeminiDB提出了多样化的特性诉求。未来,华为云GeminiDB将更加聚焦企业诉求,持续精进研发能力,夯实技术根基,走向更广泛、更深入的客户场景,赋能千行百业深度数字化,助力企业数字化转型成功。

直播链接:https://bbs.huaweicloud.com/live/cloud_live/202311201900.html

点击关注,第一时间了解华为云新鲜技术~

带你认识多模数据库GeminiDB架构与应用实践的更多相关文章

  1. 腾讯云原生数据库TDSQL-C架构探索和实践

    作为云原生技术先驱,腾讯云数据库内核团队致力于不断提升产品的可用性.可靠性.性能和可扩展性,为用户提供更加极致的体验.为帮助用户了解极致体验背后的关键技术点,本期带来腾讯云数据库专家工程师王鲁俊给大家 ...

  2. Multi-Model多模数据库引擎设计与实现

    如今,随着业务“互联网化”和“智能化”的发展以及架构 “微服务”和“云化”的发展,应用系统对数据的存储管理提出了新的标准和要求,数据的多样性成为了数据库平台面临的一大挑战,数据库领域也催生了一种新的主 ...

  3. ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据

    ABP默认的数据库是SQLServer,不过ABP框架底层是EF框架,因此也是很容易支持其他类型的数据库的,本篇随笔介绍在ABP框架使用Mysql数据库,以及基于SQLServer创建MySql数据库 ...

  4. 一篇文章带你掌握主流数据库框架——MyBatis

    一篇文章带你掌握主流数据库框架--MyBatis MyBatis 是一款优秀的持久层框架,它支持自定义 SQL.存储过程以及高级映射. 在之前的文章中我们学习了MYSQL和JDBC,但是这些东西远远不 ...

  5. Atitit数据库层次架构表与知识点 attilax 总结

    Atitit数据库层次架构表与知识点 attilax 总结 第一阶段,大概理论(三五天 数据库的类型,网状,层次,树形数据库,kv数据库.Oodb Er模型   sql 并发控制与lock  Acid ...

  6. 【IT名人堂】何云飞:阿里云数据库的架构演进之路

    [IT名人堂]何云飞:阿里云数据库的架构演进之路 原文转载自:IT168 ​ 如果说淘宝革了零售的命,那么DT革了企业IT消费的命.在阿里巴巴看来,DT时代,企业IT消费的模式变成了“云服务+数据”, ...

  7. EF当实体模型与数据库的架构不同时要删除数据库时的报错问题

    当使用的EF的时候,我们都知道EF当实体模型与数据库的架构不同时要删除数据库,这是会把错: 无法创建与 'master' 数据库之间的连接,这是因为已打开原始数据库连接,并且已从连接字符串中删除凭据. ...

  8. [转]Visual Studio 2008中如何比较二个数据库的架构【Schema】和数据【Data】并同步

    使用场景: 在团队开发中,每一个人都有可能随时更新数据库,这时候数据库中数据和架构等信息都会发生变化.如果更新不及时,就会发生数据错误或数据丢失的风险,影响团队的开发效率和 项目进度,这时候我们该怎么 ...

  9. Mysql实现企业级数据库主从复制架构实战

    场景 公司规模已经形成,用户数据已成为公司的核心命脉,一次老王一不小心把数据库文件删除,通过mysqldump备份策略恢复用了两个小时,在这两小时中,公司业务中断,损失100万,老王做出深刻反省,公司 ...

  10. 项目实战7—Mysql实现企业级数据库主从复制架构实战

    Mysql实现企业级数据库主从复制架构实战 环境背景:公司规模已经形成,用户数据已成为公司的核心命脉,一次老王一不小心把数据库文件删除,通过mysqldump备份策略恢复用了两个小时,在这两小时中,公 ...

随机推荐

  1. 采用ResNet网络+TSNE降维算法对自建图像数据集进行二维可视化显示

    起因:某一天下午,我在"玩"的时候,突然接到了老板的电话,说是要对图像做可视化降维.因此,我拿到了一批图像的数据. 数据的特点: 1.数据集的图像分为4类,并且每一种类的图像多少不 ...

  2. [GKCTF 2020]cve版签到

    通过题目的提示可知,这是一个CVE(cve-2020-7066)的复现 点击进之后也无回显 看了这个cve之后,知道这个cve就是这个get_headers()会截断URL中空字符后的内容 就根据cv ...

  3. PKCS#11:密码设备与应用程序的密码学接口

    密码学在信息安全中扮演着至关重要的角色.为了保护敏感信息.数字身份和网络通信的安全性,密码设备(如硬件安全模块HSM)与应用程序之间的安全通信和互操作性变得至关重要.PKCS#11(Public-Ke ...

  4. seed 随机种子的作用

    在随机数生成中,种子(seed)是一个起始值,用于确定随机数生成器的初始状态.通过设置相同的种子,可以确保每次运行程序时生成的随机数序列都是相同的.这种确定性的随机数生成可以带来以下几个好处: 可复现 ...

  5. 数据结构与算法 | 二分搜索(Binary Search)

    二分搜索(Binary Search) 文承上篇,搜索算法中除了深度优先搜索(DFS)和广度优先搜索(BFS),二分搜索(Binary Search)也是最基础搜索算法之一. 二分搜索也被称为折半搜索 ...

  6. CF1610B [Kalindrome Array]

    Problem 题目简述 给你一个数列 \(a\),有这两种情况,这个数列是「可爱的」. 它本身就是回文的. 定义变量 \(x\),满足:序列 \(a\) 中所有值等于 \(x\) 的元素删除之后,它 ...

  7. HTTP工具类文件request.js的完善和优化

    request.js 在现代前端项目中通常被称为一个HTTP请求工具或HTTP工具类文件.它的主要作用是对项目中用到的HTTP请求进行统一的配置和处理. 应用示例: // 查询用户列表 export ...

  8. mybatis 操作 mysql 动态创建数据表

    Map 数据一般是根据需求生成的,例如 map.put("ticketId",176),map.put("ticketName","测试工单" ...

  9. JAVA类的加载(2) ——按需加载(延迟加载)

    1.例1: 1 /* 2 按需加载:当你不去实例化Cat时,Cat相关类都不会被加载,即按需加载(需要时加载) 3 1.先加载父类 4 2.初始化类 5 3.类只加载一次(暂且这么认为)--缓存 6 ...

  10. JUC——让步与优先级

    Thread.yield():方法作用是:暂停当前正在执行的线程对象(及放弃当前拥有的cup资源),并执行其他线程 yield():做的是让当前运行线程回到可运行的状态,以允许具有相同优先级的其他线程 ...