云数据库方案设计一、云数据库的云化改造面对云化环境,数据库在多个方面需要进行改造,包括快捷的安装部署,提供数据库的动态伸缩和资源隔离,以及监控、迁移、备份等一体化管理,以适应云环境中自动安装部署、一体化监控管理,资源动态分配等需求
快速安装及部署1
1 一键部署和分钟级实例的创建:1
准备好预置数据库的 docker 镜像 a
初始化好空数据目录(也支持根据场景预置数据) b
数据库配置文件放置在 docker 镜像之外,通过映射的方式进入镜像内部2
用户选择实例资源后(CPU、内存),系统自动计算最佳设置 a
用 户 选 择 实 例 的 内 存 、 CPU 数 量 , 使 用 场 景(OLTP、OLAP) b
根据用户选择,自动调整、优化参数(共享缓存 、work_mem、等等) 3
使用 docker 镜像加载外置配置文件启动数据1
2 多种部署方式 1
单机(单独的 docker 镜像)2
主备 和 负载均衡 a)
配置好的三个独立 docker 镜像,分别扮演主机、备机、读写分离节点 b)
三个节点配置文件都在外部,映射到内部运行 c)
启动时,根据用户的资源选择和网络场景,自动规划配置文件内容3
KADB 集群 a)
根据角色配置好独立的 docker 镜像,分别扮演数据节点、协调器节点等 b)
节点的配置文件都放在外部,映射到内部运行 c)
根据用户设置的资源,场景,自动分配节点数量,配置节点参数
在线伸缩云环境中,支持在线调整任何一个实例使用的资源
对于数据库而言,若分配的资源,包括 CPU、内存、磁盘等资源发生变化,数据库同样需要对于资源的变化实施生效
CPU 变化时,主要影响数据库的并发连接数和并行参数,在金仓云数据库中,并发连接数和并行参数可以动态调整
内存发生变化时,数据库的共享内存,排序内存等内存分配支持动