课程费用

6800.00 /人

课程时长

50分钟以下及更短时间

成为教练

课程简介

案例背景:
云原生数据库通常采用存储计算分离架构来实现计存独立弹性、服务高可用和按需付费等特性。对于这种架构,直接使用成熟的云存储服务(而非自建专有储存服务),能够有效降低数据库的维护成本、提升稳定性和版本迭代速度。
然而,问题是云存储与本地存储是存在巨大特性差异的,因此在将为本地盘设计的本地数据库迁移至云储存上时,需要进行适配性优化。 否则性能上完全无法满足数据库

解决思路:
我们首先分析了云存储的工作特性差异及其根因,并讨论了将B-tree和LSM-tree类存储引擎的部署至云存储上时所会遇到的问题与挑战。
通过系统实验、总结分析等,我们发现本地存储与云存储面临以下差异和挑战

1. 远程分布式存储集群的访问导致云存储服务的I/O延迟高;
2. 通常聚合I/O带宽未被充分利用;
3. 在具有本地存储的单机上运行良好但需要适应云存储而导致特性改变的传统设计,例如文件cache缓存;
4. 长链路导致各种数据库I/O操作之间的隔离度较低(例如,日志刷写与大量数据I/O的竞争);
5.云用户允许且可能使用非常大的单表文件(例如数十TB)而不进行数据切分,这加剧了I/O问题的影响。

然后,针对这些问题,我们提出了一个优化框架Cloudjump,来帮助开发人员实现中心化数据库上云时的性能适配。

成果:
最后,我们通过两个实用案例,将CloudJump分别应用到基于B-tree的PolarDB和基于LSM-tree的RocksDB上,来展示所提优化框架的使用及优化效果
体会: 云存储可以被看做是最新一代的硬件, 目前大部分存储引擎都是针对本地盘进行设计, 这些存储引擎需要针对云存储进行重新优化设计.

目标收益

1. 对于数据库从业者而言, 能够理解云存储和本地存储的区别, 后续对自己产品的数据库存储引擎未来发展有深刻的人数
2. 对于数据库的使用者而言, 通过了解数据库实现原理, 能够对于数据库的选型决策提供技术支持
3. 对于计算机从业者, 能够了解云原生数据库的发展

培训对象

课程内容

案例方向


数据库 / 运维新趋势 / CloudNative(云原生)

案例背景


云原生数据库通常采用存储计算分离架构来实现计存独立弹性、服务高可用和按需付费等特性。对于这种架构,直接使用成熟的云存储服务(而非自建专有储存服务),能够有效降低数据库的维护成本、提升稳定性和版本迭代速度。
然而,问题是云存储与本地存储是存在巨大特性差异的,因此在将为本地盘设计的本地数据库迁移至云储存上时,需要进行适配性优化。 否则性能上完全无法满足数据库

收益


1. 对于数据库从业者而言, 能够理解云存储和本地存储的区别, 后续对自己产品的数据库存储引擎未来发展有深刻的人数
2. 对于数据库的使用者而言, 通过了解数据库实现原理, 能够对于数据库的选型决策提供技术支持
3. 对于计算机从业者, 能够了解云原生数据库的发展

解决思路


我们首先分析了云存储的工作特性差异及其根因,并讨论了将B-tree和LSM-tree类存储引擎的部署至云存储上时所会遇到的问题与挑战。
通过系统实验、总结分析等,我们发现本地存储与云存储面临以下差异和挑战

1. 远程分布式存储集群的访问导致云存储服务的I/O延迟高;
2. 通常聚合I/O带宽未被充分利用;
3. 在具有本地存储的单机上运行良好但需要适应云存储而导致特性改变的传统设计,例如文件cache缓存;
4. 长链路导致各种数据库I/O操作之间的隔离度较低(例如,日志刷写与大量数据I/O的竞争);
5.云用户允许且可能使用非常大的单表文件(例如数十TB)而不进行数据切分,这加剧了I/O问题的影响。

然后,针对这些问题,我们提出了一个优化框架Cloudjump,来帮助开发人员实现中心化数据库上云时的性能适配。

结果


最后,我们通过两个实用案例,将CloudJump分别应用到基于B-tree的PolarDB和基于LSM-tree的RocksDB上,来展示所提优化框架的使用及优化效果
体会: 云存储可以被看做是最新一代的硬件, 目前大部分存储引擎都是针对本地盘进行设计, 这些存储引擎需要针对云存储进行重新优化设计.

提交需求