云原生数据库特征

分层架构

处理流程分为 计算服务层存储服务层共享服务层

计算服务层负责解析SQL,转化为物理执行计划。

存储服务层负责数据缓存与事务处理。

共享存储层负责数据的持久化存储。

资源解耦与池化

虚拟化技术实现资源池化,按需按量使用,弹性调度资源。

弹性伸缩能力

下层分布式共享存储,上层是分布式共享计算池,中间层用于计算存储解耦,可以提供弹性高可用能力,做到分布式技术集中式部署。对应用透明。

高可用与数据一致性

分布式环境下会发生节点故障、通信异常和网络分区等问题。采用一致性协议可以保证发生异常时多个节点存储的数据达成一致。

比如raft协议与paxos协议。

高可用策略:

  • RTO优先:数据库优先尽快恢复服务,对于数据库在线时间要求比较高的用户,使用RTO策略。
  • RPO优先:数据库应该优先尽可能保证数据的可靠性,即数据丢失量最小,对于数据一致性要求比较高的用户,应使用RPO。

多租户与资源隔离

多租户指一套系统能支撑对个租户。一般多租户采用一组租户以数据库系统,或者多租户共享以数据库系统,通过命名空间等方式隔离,但是比较负责。云原生场景下,数据库可以为多个租户绑定相应的计算节点和存储节点实现资源的隔离和吗,面向不同租户的资源调度。

智能化运维

  • 自定义备份策略,通过复制实例恢复到任意时间点。
  • 自动在线热升级,及时修复bug。
  • 资源和引擎双重监控,连接云监控自动报警策略。
  • 节点故障秒级探测,分钟级切换。
  • 提供专家级自助服务,可解决大部分场景的性能问题。

参考文件:

《云原生数据库原理与实践》

相关推荐
cainiao0806057 小时前
容器化改造避坑指南:传统应用迁移K8s的10个关键节点(2025实战复盘)
云原生·容器·kubernetes
若兰幽竹7 小时前
【从零开始编写数据库:基于Python语言实现数据库ToyDB的ACID特性】
数据库·python
宇钶宇夕7 小时前
S7-200 SMART CPU 密码清除全指南:从已知密码到忘记密码的解决方法
运维·服务器·数据库·程序人生·自动化
周杰伦的稻香7 小时前
MySQL密码管理器“mysql_config_editor“
数据库·mysql
云朵大王8 小时前
SQL 视图与事务知识点详解及练习题
java·大数据·数据库
czhc11400756638 小时前
LINUX712 MYSQL;磁盘分区;NFS
数据库·mysql·adb
不太可爱的大白9 小时前
Mysql:分库分表
数据库·mysql
十五年专注C++开发9 小时前
hiredis: 一个轻量级、高性能的 C 语言 Redis 客户端库
开发语言·数据库·c++·redis·缓存
bianguanyue10 小时前
SQLite密码修改故障排查:RSA加密随机性导致的数据库匹配问题
数据库·sqlite·c#
亚马逊云开发者11 小时前
将 Go 应用从 x86 平台迁移至 Amazon Graviton:场景剖析与最佳实践
linux·数据库·golang