icon有了关系型数据库,为什么还需要GeminiDB数据库?icon

GeminiDB数据库是为了解决多种类数据的存储和不同种数据类型的不同种加速处理机制而产生的。在2008年之前,说到数据库大部分企业只知道Oracle,但后来游戏、电商、社交等互联网新业务衍生出了大量的非关系型数据,比如微信、抖音里边的聊天、点赞,《王者荣耀》里边的皮肤、道具,这些数据就不适合用Oracle来存储。

 关系型数据库不适合用于非结构化数据的3大原因

可扩展性差

背景:早期网站以关系型数据为主,而在Web2.0时代,数据增长主要集中在非结构化数据,比如电商里边的直播带货、弹幕、购物车、评论等,这些数据更适合使用DDS或GeminiDB Redis接口


原因:关系型数据库扩展性差,有新格式数据进来,就要给表增加或删除字段,不适合用在非结构化数据上,比如购物车大多用KV数据库而不是MySQL,如果使用RDS读写速度会非常慢,业务几乎无法执行

存储上限低

背景:Web2.0网站的数据量越来越大,Facebook每天要处理约25亿条消息、500TB数据,其他大型SNS网站每天也都会产生的海量用户动态数据


原因:以MySQL为例,单表最大只有亿条,而文档数据库DDS单表最大支持百亿条数据,如果使用关系型数据库存储海量的非关系型数据,会导致数据库的结构变得极复杂

读写性能差

背景:SNS网站要实时生成动态页面提供动态信息,数据库并发非常高,比如微博,时不时会因某个热点明星事件名机,就是因为读写并发瞬间飙升超过了数据库上限


原因:关系型数据库在海量数据情况下读写性能会很差,硬盘IO无法承受过高的写请求

icon非关系型数据库适合存储非结构化或半结构化数据,执行大规模数据存储和处理的场景icon

非关系型数据库(GeminiDB)旨在为大规模数据存储和处理提供更高的性能和更灵活的数据模型,适用于数据模型比较简单、不需要高度的数据一致性、对数据库性能和灵活性要求高的场景。目前NOSQL数据库主要可以分为以下四大类:键值存储数据库、文档型数据库、列存储数据库和图型数据库。

 

iconGeminiDB相比原生NoSQL成本降低20%,性能最高提升20倍icon

 

iconDDS的优势:单表最大支持百亿条数据,支持灵活改变结构,对JSON友好icon

文档数据库DDS(Document Database Service)完全兼容MongoDB协议,在华为云高性能、高可用、高安全、可弹性伸缩的基础上,提供了一键部署等能力,支持分片集群(Sharding)、副本集(ReplicaSet)、单节点(Single)三种部署架构。DDS在游戏、电商、社交等典型互联网场景上应用最为广泛。

 

icon文档数据库服务DDS读写快的原理解读icon

MongoDB将数据存储为一个文档,数据结构由键值对(key=>value)组成,类似于JSON,字段值可以包含其他文档,数组及文档数组。

 

iconDDS应用开发举例:物流场景订单状态更新,开发更简单icon

 

icon文档数据库服务DDS适合数据量大、读写入操作频繁,且对事务性要求不高的数据场景icon

文档数据库服务DDS完全兼容MongoDB,是非关系型数据库中功能最丰富、最像关系型数据库的非关系型数据库。DDS支持的数据结构非常松散,可以存储比较复杂的数据类型,具有简化开发、支持扩展、高性能、高可用等特点。

目前,文档数据库的应用已经广泛渗透到各个行业场景,比如游戏、物流、电商、社交音视频、物联网等等。

 

游戏场景
数据类型
针对游戏业务,为了降低应用开发的复杂性,方便方便快速开发迭代,推荐客户使用DDS。用户信息、游戏装备、会员积分等数据直接以内嵌文档的形式存储,方便查询和更新。

产品优势
DDS能在游戏玩法变化中快速变更表结构,非常适用于灵活家变的游戏业务需求。
 
社交场景
数据类型
对于电商业务来说,订单信息、订单状态、物流信息会不断更新,为降低开发复杂度和加快版本更新,以DDS内最数组的形式来存储这些数据最合适,一次查询就能将订单所有的变更读取出来。

产品优势
DDS对高QPS应用有很好的支持,同时分片架构可以快速进行水平扩展,灵活应对应用变化。
 
电商场景
数据类型
对于电商业务来说,订单信息、订单状态、物流信息会不断更新,为降低开发复杂度和加快版本更新,以DDS内最数组的形式来存储这些数据最合适,一次查询就能将订单所有的变更读取出来。

产品优势
DDS对高QPS应用有很好的支持,同时分片架构可以快速进行水平扩展,灵活应对应用变化。
 
物联网场景
数据类型
物联网场景大多有高并发写入需求,为了提升写入速度,推荐使用DDS存储智能设备的信息,设备汇报的日志信息(此处需要特别留意与influx数据的存储信息区别,以免混淆)。

产品优势
DDS的集群实例可动态扩容,性能及存储空间可实现快速扩展,非常适合IOT的高并发写入的场景。
icon文档数据库服务DDS与自建MongoDB相比的4大优势icon

 

iconDDS客户案例icon

 

iconGeminiDB Redis接口优势:完全兼容Redis接口,支持丰富数据类型,可实现持久化存储icon

GeminiDB Redis接口采用云原生分布式架构,完全兼容Redis协议,支持丰富数据类型,提供数据实时持久化、多副本强一致保障等一站式服务。作为全世界最流行的KV数据库,Redis具有接口简单、性能优异、生态广泛等特点,通常使用在高并发、低时延的互联网业务场景。

 

iconGeminiDB Redis接口兼容Redis接口,适合对数据一致性要求高、需进行数据持久化存储的数据场景icon

Redis随互联网而生,天生支持多种场景,可以满足大部分互联网业务需求,如数据LRU淘汰、队列、发布订阅、地理位置、排序排名、生产消费模式等。此外,地图,即时通讯、广告等多种场景也可以使用到Redis。

 

电商场景
大促秒杀:Redis计数器可以记录商品秒杀销售个数、库存个数,并对流量进行限制。
商品排名:Redis的zset结构,可以实现热销商品排名、点评排名、推荐排名等。
商业分析:用户画像(动态数、关注数、粉丝数、喜欢商品数、发帖数 等)、特征工程(用hash结构表示特征字段)。
 
在线教育场景
每日签到:Redis的hash结构,可以实现学生们的每日在线签到。
课程关联:Redis的hash结构,可以轻松实现关联一个课程的所有在线用户。
互动问答:Redis的list结构,可以实现在线教育里,学生举手后排队连麦回答问题。
 
游戏场景
积分排行:Redis的zset结构,可以实现玩家对战积分排名。
竞技排名:Redis计数器可以记录玩家经验值、武力值、等级值、在线好友数等。
地理位置:Redis的GEO结构,可以将玩家进行分区,比如广州服务器、北京服务器等,并计算玩家距离。
 
 
物联网场景
消息中转:Redis Stream结构,可用做消息中间件,把采集到的设备实时数据转发给其他边缘计算软件组件。
状态监控:Redis的发布订阅功能,可以轻松观察每个设备的健康状态,并触发相应处理。
icon电商大促秒杀限流 - Redis计数器特性运用icon

GeminiDB Redis接口计数器的使用场景非常广泛,游戏、电商、社交音视频等业务场景都能用得上。以并发量超高的电商秒杀场景为例,商城需要用GeminiDB Redis接口计数器对商品的可售、已售数量进行统计,同时为了避免下单量超过商品可售数量,还需要对参与秒杀的用户数量进行限流。

秒杀限流原理简介
以电商秒杀的流量控制为例,为了处理高并发读写,通常在MySQL上层部署Redis作为缓存。为了抗住大流量,使用计数器作限流。比如,当我们想控制每秒1万次请求时,可以初始化一个counter=10000,随后每次请求过来,都对counter减1,当counter归零后,阻塞后续的请求。每隔一段时间,重置counter=10000,以此保证大流量不会冲击底层的MySQL。
icon游戏积分排行榜 - Redis的zset结构特性运用icon

zset(有序集合)是Redis中最常用的数据结构,zset一方面通过set来保证内部value值的唯一性,另一方面通过value的score(权重)来进行排序。在游戏业务场景领域,不同玩家的活跃度、等级积分排名也是通过zset结构来实现的。

积分排行原理简介
以右图的开服活动累计排名为例,很明显第三列的战力就是排序的一个根据,那么它就代表zset的score选项。而第二列的角色名就是zset的member成员,我们会先使用id来代表这个member,例如10001代表“魔域精英”,10002代表“桃之夭夭”,10003代表“Zero”,这样就能使用zset做到根据玩家的战力积分进行排行了。
icon在线教育课前签到 - Redis的hash结构特性运用icon

Redis hash(哈希散列)是由字符类型的field(字段)和value组成的哈希映射表结构(也称散列表),它非常类似于表格结构。在hash类型中,field与value 一一对应,且不允许重复。

在线签到原理简介
Redis hash特别适合于存储对象,一个filed/value组合可以看做是表格中一条数据记录,广泛应用于签到类似的场景。以右侧的签到图为例:头像高亮的表示已签到,头像置灰的表示未签到,如果field1是王世阳,那value1就是已签到;如果field2是陈浩,那么value2就是未签到。
iconGeminiDB Redis接口与开源Redis相比的4大优势icon

 

iconGeminiDB Redis接口客户案例icon

 

iconGeminiDB Influx接口:用来存和时间强相关的数据,提供高性能读写、高压缩率、冷热分层存储等能力icon

GeminiDB Influx接口是一款采用计算存储分离架构,兼容InfluxDB生态的云原生时序数据库,提供高性能读写、高压缩率、冷热分层存储以及弹性扩容、监控告警等服务能力,适用于运维、物联网、工业生产等监控应用场景。简单来说,GeminiDB Influx接口非常适合处理带有时间属性的数据。

 

icon关系型数据库或非关系型数据库可以替代InfluxDB吗?icon

 

iconGeminiDB Influx接口与自建InfluxDB相比的6大优势icon

 

iconGeminiDB Influx接口适合存储带有时间属性的数据,在大规模查询、高吞吐数据场景下优势巨大icon

在万物互联(IoT)兴起的推动下,时间序列数据(衡量事物随时间变化的数据)的应用和场景激增,是增长最快的数据类型之一,例如监控指标数据、传感器数据、日志等等。GeminiDB Influx接口完全兼容InfluxDB,特别适用于资源监控数据等时序相关数据的处理和分析。

 

icon时序数据库应用举例:GeminiDB Influx接口在车联网里的业务模型icon

每辆车都有很多的监控指标,运行速度、电量信息、电池状态、电流等,都是随着时间的变化而产生数据。

 

iconGeminiDB Influx接口客户案例icon

 

 
产品推荐 查看更多>>
    阿里云云原生数据仓库AnalyticDB MySQL版

    AnalyticDB MySQL是基于湖仓一体架构打造的实时湖仓,高度兼容MySQL,毫秒级更新,亚秒级查询。不论在数据湖中的非结构化/半结构化数据,还是在数据库中的结构化数据,都可使用AnalyticDB MySQL同时完成高吞吐离线处理和高性能在线分析,真正做到数据湖的规模,数据库的体验。帮助企业构建数据分析平台,实现降本增效。

    高度兼容

    实时湖仓

    降本增效

    高性能

    YMatrix智能制造超融合数据库

    YMatrix智能制造超融合数据库,集群拓扑,内置高可用、故障自动切换、无单点故障。强一致性,符合事务ACID属性,数据无需落地,有更高的性能潜力。

    集群拓扑

    内置高可用

    故障自动切换

    强一致性

    移动云云数据库MySQL

    云数据库MySQL 是一种稳定可靠、弹性、轻量运维、开箱即用的数据库服务。它基于kubernetes提供容器化数据库服务,支持三款主流关系型数据库引擎MySQL、MariaDB、MySQL PXC,提供容灾、备份、恢复、监控等基本功能。主要面向政府、医疗、交通、物联网和中小型互联网客户,支持高并发高性能高安全性的场景。

    轻量运维

    稳定可靠

    开箱即用

    高安全性