当前位置: 首页 > news >正文

云服务培训五-数据库服务

如上图所圈,这次主要学习云数据库RDS for MySQL、GaussDB和GeminiDB相关内容。

 

 

一、结构化数据、非结构化数据

选择数据库时,首先从模型上分析,是否涉及事务处理、复杂的查询关联,还是数据量大、有并发访问需求。同理,其余指标如访问性能、类型等类似分析。 

结构化数据:有标准的格式

=> 关于数据治理,在拿到数据后,首先要分析该数据是结构化还是非结构化的,根据类型选择对应的服务。

=> 非结构化数据放到存储(如OBS、EVS)里面存放;

=> 结构化数据,完全结构化就用关系型数据库,半结构化用非关系型数据库。

华为云数据库选择

云原生通过容器化、微服务架构、自动化运维等技术手段,实现了应用的快速部署、弹性扩展、高效运维和跨云部署

 

二、关系型数据库服务RDS

 

利用数据库搭建如下简单架构。是否存在问题?问题出在哪里呢?

 

=> 明显看出,上述架构存在一个故障单点,即RDS。

很好理解,应用服务器不是单点,一台坏了剩下一台也能继续服务,但如果RDS坏了,整个系统就不能正常工作了。 

既然如此,又该如何解决呢?主备部署

=> 主备部署,简单理解,就是当主数据库出现故障时,RDS服务会自动把访问接口切换到备用服务器上,然后把主服务器替换掉,变成一台新的备用服务器。通过该机制,当一台服务器坏掉就会被自动的替换,甚至可达秒级切换。

 => 主备服务器可同时放在一个可用区里,以获得较好的同步性;也可选择放在不同的可用区,从而获得跨可用区的容灾能力。

因为可用区可能会坏掉,有了多可用区的选择,就能在一个可用区坏掉时使用另外一个可用区的备数据库服务器,以保持业务连续性。

主备部署这么好,就没有啥缺点吗?

=> 成本增加,如多部署一台服务器、多了一些数据同步的成本。

回到最开始的问题,如下是基于主备部署实现的高可用架构的落地方案。

=> 只有主数据库向应用服务器提供服务,即承载所有数据库的访问流量;而备数据库则随时准备切换上来,平常不参与工作。

自动Binlog手动两种备份方式,如下:

 

 

 

RDS可以通过创建只读副本的方式,建立读写分离的数据库系统。

读写分离是一种常见的数据库架构设计,通过将读操作和写操作分开到不同的数据库实例,来提升系统性能和可扩展性。读写分离将读操作分配到读数据库,而写操作由写数据库处理,该方式能有效分担数据库的负载,避免单个数据库成为瓶颈,且能实现读操作和写操作的并行处理,提高系统的整体处理能力和响应速度。

6、只读副本实现水平扩展

同样,可以通过创建只读副本的方式实现水平扩展,如下:

 

以上为主备部署+只读副本 

RDS for MySQL产品架构

三、GaussDB (for MySQL) 

除了 RDS for MySQL,还有没有其他数据库服务和解决方案呢?GaussDB (for MySQL)

 

 RDMA:远程直接内容访问

注:RPO(Recovery point objective),恢复点目标,是指业务系统所能容忍的数据丢失量。 

 

四、GaussDB 云数据库

 

 

注:GaussDB和GaussDB (for MySQL)是两种不同的数据库服务,不要混淆。 

 

 

五、非关系型数据库:云数据库GeminiDB

1、非关系型数据库特点

① 每条数据都是一个结构文档。

② 表格中的记录之间没有逻辑关系。

③ 擅长对完整值进行哈希定位而非复杂查询。

云数据库GeminiDB架构
1)高可用

=> 当计算节点故障:秒级的故障切换;

=> 当存储节点故障:存储三副本,单点故障整体系统仍可运行。

2)弹性扩容

=> 扩容计算节点:计算节点无状态,可快速扩容;

=> 扩容存储节点:共享存储,一键扩容,不中断业务。

 

非关系型数据库使用注意
① 设计好数据键和索引定义。快速定位,避免全表查找。 

=> 避免热键;

=> 避免数据过于复杂; 

=> 不论数据量多少,毫秒级数据定位。

② 如果需要,在应用层进行逻辑锁和数据逻辑关联。

③ 在压力提高时,合理利用集群来分散压力。 

=> 利用分片算法快速定位数据在集群中的位置;

=> 数据设计上让访问压力分散到集群内各个节点,避免热分区。

六、数据库管理服务 DAS

 

 

相关文章:

  • 大语言模型微调的基本概念介绍
  • Git 安装与配置一站式指南
  • 【小羊肖恩】小羊杯 Round 2 C+K
  • 迷你世界脚本区域接口:Area
  • 如何防止Python网络爬虫爬取网站内容
  • 每日一题之因数计数
  • 【MySQL】索引(页目录、B+树)
  • 算法分析 —— 《栈》
  • [Lc滑动窗口_1] 长度最小的数组 | 无重复字符的最长子串 | 最大连续1的个数 III | 将 x 减到 0 的最小操作数
  • 蓝桥与力扣刷题(蓝桥 核桃的数量)
  • 研究生综合管理系统的开发与应用在农业大学中的实践
  • Redis详解(实战 + 面试)
  • C语言——文件操作
  • Hive-06之函数 聚合Cube、Rollup、窗口函数
  • 一、旋钮式滑动变阻器模块
  • 最新常见的图数据库对比,选型,架构,性能对比
  • LangPrompt提示词
  • 【弹性计算】弹性裸金属服务器和神龙虚拟化(三):弹性裸金属技术
  • 【RAG】Embeding 和 Rerank学习笔记
  • 【计算机网络入门】初学计算机网络(九)
  • 定制化网站/深圳网站seo服务
  • 合肥论坛网站建设/seo新人培训班
  • 白鹭引擎做h5网站/最近有哪些新闻
  • 网站建设一般多钱/市场调研报告范文模板word
  • 找外包公司做网站给源码吗/大型网站建设平台
  • 58同城 网站建设 成都/搜索引擎营销优化诊断训练