阿里工程师讲座(三)|学习笔记

本文涉及的产品
PolarClaw,2核4GB
云数据库 PolarDB MySQL 版,列存表分析加速 4核8GB
简介: 快速学习阿里工程师讲座(三)

开发者学堂课程【高校精品课-西安交通大学-数据库理论与技术:阿里工程师讲座】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/12/detail/15865


阿里工程师讲座(三)


内容介绍:

一. 传统数据库架构和云的本质

二. 云原生数据库

三. 下一代云原生数据库


三.下一代云原生数据库

所以刚才介绍的云原生数据库架构其实主要是在共享存储这个架构,因为现在共享存储就是云原生数据库的主流架构,在共享存储上原来做的一些工作以及单独做了一些优化的工作那下一代远程数据库应该是怎么样的也有一些思考,以及已经做了一些前置的部署。

这里可以看到数据库的核心还是要做更好的 US status所以 US status 为什么很有价值,就是传统数据库架构,就是一个 resource 需求,要根据你的峰值需求来确定资源量,就像之前提到的买一个机器哪怕峰值一下1000台机器,平时只要一台机器也得买1000台,并且不能减少。

那在原生数据库这个阶段就是会有 scale 做的比较好的时候就跟现有这个阶段就可以做分时段的弹性就是某个时间段需求比较大时可以去把资源 scaleup 起来。如果某个阶段需求比较小,那要付的钱其实只要付蓝色的积分部分所以这个成本就会下降的比较多。

那中泰的原生数据库应该怎么样应该是不需要用户 care 这些,要买什么规格要买多少的机器,要买多少内存的数据库这种都不用关心就是用多少就给多少最后按用的量来计费,那这才是理论上最完美的数据库了,所以现在的原生数据库就是以这个目标来做一个演进了。

image.png

技术上怎么做呢?其学术界已经有很多的探索,应该去怎么做这个事情,这里有一些比较新的这几年的论文,一个就是架构网络演进,整个架构应该演进包括 SIGMOD 提出了关键数据库应该可以用远程内存 RDMA 来做加速第三篇就开始提了第三篇是普通大学一篇论文,它的内容是说可以用高效的内存的分离来实现数据库的这部分弹性。第四篇是比较有名的是 OSDI18best paper它就是用内存存储整体的分离做了一个操作系统。最后一篇是在这个操作系统上运行数据库来检验这个架构的可行性。整个学术界基本上也是在存储分离的基础上做内存分离这个架构来做下一代云原生数据库的探索。

image.png

就是说传统的没有任何共享数据库,它弹性可能是小时级那么在存储计算分离以后它的弹性是分钟级,那到内存分离以后因为整个大部分的非意识状态,意识状态之下都是共享的。弹性时只要分配一个更大的 cpu 就行,那cpu本身是无状态的所以可以把整个弹性做到秒级,那这样就可以实现了按用户的需求来做弹性就可以了。

image.png

那么在一八年就开始立项做下一代云原生数据库,因为那时候 PolarDB 就是共享存储的原生数据库,基本上已经成熟了,分了一部分力量来做这个事情就是在做这个共享内存的数据库共享数据库最大的特点就这个共享内存架构共享内存架构最大的优势就是它的 cpu 跟内存就可以不再对等,因为经常出现的情况是一个数据库节点cpu平时其实运行量是非常低的,但是因为内存缓存了大量的数据内存使用量又特别高,那这部分不闲置下来的cpu其实是不能被使用起来的,因为内存跟存储一定要在一台机器上。

现在构建了一个分布式的内存池以后这些问题就不存在了因为闲下来的这些 cpu 完全可以共享给别人来用。那这样自己的成本就会有大量的下降那另外一个就是多个cpu可以共享一份内存。那么成本就会分担比较厉害,比如本来扩展15个读节点,那每个读节点都要有一份独立的内存,那这个内存里面缓存的数据其实都是差不多的。现在它们可以共享一份数据一份内存,这份内存里面缓存的数据就可以缓存的更多了

第二个就是内存弹性内存可以不再有什么限制因为它是个节点的分布式的内存池那这对于一些分析型块的性能其实是非常重要的。第三个就是通过共享内存就可以实现这个秒级弹性。因为 cpu 节点上的数据都可以刷到内存上来,那么弹性就只要去重新分配这个 cpu 就可以。这份结果在工业界或者学术界都是比较新的工作,所以把这份结果放到了6月份开的 SIGMOD 21,SIG MOD 21是一个鼎会是现在相对来说是数据库业界最好的一个会议。

image.png

以下这是一个指标,刚介绍了共享存储架构挑战那共享内存架构的挑战就更大了。比如原来的 cpu 跟内存的通信都是通过 QPI 总线,基本都是百纳秒这个级别那现在即使通过 RDMA 来做,那也是几个 u 秒这个级别,这个通信成本需要通过大量的架构的优化以及实现的优化来减少这部分额外通信对性能带来的影响现在看到的就是在local有一个非常小的缓存的情况下,肯定需要的就跟L2缓存一样但是缓存量非常小可能只要原来的百分之十百分之五,这个力度性能还可以达到原来的90%左右的水平。

sysbench 就是工业上用的比较多的一个测试机,包括 TPCC 也测了。整个进程损失大概只有10%几,这样基本上是处于的可用的形态前面一些学术界的论文也提到,基本上要损失一个数量级。只能到百分之五十或者百分之三四十这个成本内那个挑战,所以这块还是重要的。包括这就是不单是说做了这个架构实践优化,也更深度的去结合这些软硬件相关的工作来实现性能的提升所以第三部分的下一代数据库架构基本就分享到这

image.png

最后也是呼应一下前面提到的就是以前学术界跟工业界还是有比较大的 GAP就是学术界在研究自己方向,工业界也在研究自己方向,互相交流比较少。但是现在这几年这个情况有很大的改善,包括工业界也会跟学校合作做一些研究,来做一些宣讲来讲一些现在在做的事情,老师会把自己的一些研究成果,看看能不能放到一个现实的系统中,这样互相的交流会特别多,这个是比较重要的一个事情。

今天就分享到这里,欢迎以后毕业了加入

问:serverless 怎么理解

答:因为 serverles s 这个词用的比较多,它其实也是类比于传统的架构,就是传统架构去买一个 server那云传统时说的 server,就是买一台物理机后来云时代出现以后,Server 基本上是买一个虚机那么现在 serverless越多就是说虚机的概念也不需要虚机,也算是 infrastructureserverless 以后,比如 functio 方这种功能都认为是一个比较 serverless 的一个形态,不需要去 care 这个程序到底是运行在哪台机器上,因为有机器就有这个框框,有这个框框再去设计就很难去做就更高层面的弹性或者相关工作,那就是只是给一个执行的容器,不需要去care真的执行台机器上需要时,把这个函数孵化出来来调用逻辑调用完就释放掉。

那对于数据库来说 serverless 也是这个含义,这里提了就是在共享存储上也在做 serverless,这个 serverless意思就是这个机器也不局限于给多少个,比如8个和32个G 的内存,而是根据需求,流量高了给一个更高的规格更大的资源流量少了再给回来其实认为是个 ondemand 过程,那就是不再需要 server 的概念,跨越这个server就是一个分布式。所以数据库的 serverless 就是按需的去给一个资源现在基本上业界在提 serverless 的时候都是可以做自适应的弹性

后面提的 PolarDB serverless 目的也还是一样,还是按需的给一个资源的供给,但是它的实现就不一样,它不再是去自动的做升降,而是它水平方向直接把资源全部给裁剪开来了完全是在一个大的资源池里面做弹性而不是规格的一个柔性的升降配。但的目标是一样的。

问:云数据库跟阿里数据中台是什么关系?

答:数据中台,以个人的理解它这个大层的服务,它是个 service,它会提供更上层的一些功能。云数据库其实是个Pass,那它只是提供一个数据库的能力。在数据库上面再做一些数据的集成数据的筛减,数据化的一些服务架在这个云数据库上那才是提供一个数据中台的能力。所以基本认为这中间还有一层。

相关实践学习
函数计算部署PuLID for FLUX人像写真实现智能换颜效果
只需一张图片,生成程序员专属写真!本次实验在函数计算中内置PuLID for FLUX,您可以通过函数计算+Serverless应用中心一键部署Flux模型,快速体验超写实图像生成的魅力。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
相关文章
|
C#
WPF之VLC流媒体播放
原文:WPF之VLC流媒体播放 最近在做关于在WPF使用VLC流媒体播放的问题,现在可以在WPF中实现VLC本地播放了,流播放解决了,在下面的代码中注释流媒体播放那两段代码,更多的在乎大家摸索了^^,以供大家相互学习,这里我就先把实现VLC本地播放的代码和过程写给需要的朋友参考。
2971 0
|
9月前
|
消息中间件 存储 数据采集
《数据中台隐性故障的排查逻辑与工程化避坑策略》
本文围绕数据中台建设中的三类隐性故障展开复盘,基于特定数据处理框架、分布式存储系统及混合计算环境,拆解故障排查与解决路径。首先解决用户活跃报表偶现数据缺失问题,通过优化任务调度与数据分区校验避免跨时段数据漏采;其次攻克实时推荐接口高峰期空数据难题,通过匹配计算并行度与缓存优化提升数据处理效率;最后修复离线仓库用户留存率重复统计故障,重构分区合并脚本并建立数据质量巡检机制。文中还提炼“现象锚定-链路拆解-根源验证”排查方法论,为数据中台开发者提供工程化避坑指南。
272 7
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
AI进化论:从识别模式到创造世界的“数字大脑”
AI进化论:从识别模式到创造世界的“数字大脑”
334 63
|
4月前
|
人工智能 自然语言处理 安全
2026数字人公司TOP企业排行
随着AI、图形学等技术进步,数字人产业快速发展。2025年我国相关企业超1200家,规模突破300亿元。阿里、华为、腾讯、世优科技等企业在电商、通信、社交、AI交互等领域领先,推动数字人在金融、政务、教育等场景落地。技术趋同下,全栈能力与行业理解成竞争关键。
|
存储 SQL 分布式计算
别让你的数据“裸奔”!大数据时代的数据隐私保护实战指南
别让你的数据“裸奔”!大数据时代的数据隐私保护实战指南
691 19
|
7月前
|
人工智能 运维 监控
运维安全还能靠“人盯人”?别闹了,聊聊自动化处理的真功夫
运维安全还能靠“人盯人”?别闹了,聊聊自动化处理的真功夫
268 17
|
10月前
|
JSON 中间件 Go
Go语言实战指南 —— Go中的反射机制:reflect 包使用
Go语言中的反射机制通过`reflect`包实现,允许程序在运行时动态检查变量类型、获取或设置值、调用方法等。它适用于初中级开发者深入理解Go的动态能力,帮助构建通用工具、中间件和ORM系统等。
560 63
|
前端开发 安全 Java
Spring Boot 便利店销售系统项目分包设计解析
本文深入解析了基于Spring Boot的便利店销售系统分包设计,通过清晰的分层架构(表现层、业务逻辑层、数据访问层等)和模块化设计,提升了代码的可维护性、复用性和扩展性。具体分包结构包括`controller`、`service`、`repository`、`entity`、`dto`、`config`和`util`等模块,职责分明,便于团队协作与功能迭代。该设计为复杂企业级应用开发提供了实践参考。
482 0
|
8月前
|
存储 运维 数据可视化
短剧为什么比长剧更依赖云和网络?
微短剧对云与网络的依赖远高于传统影视,因其制作周期短、投流驱动强、数据量大、IT团队轻量化及出海需求迫切。短剧的成功离不开高速传输、实时数据反馈、多云互联与跨境合规传输。一套理想的云网方案应具备高速文件传输、多云互联、跨境加速与合规、实时数据回传及可视化管理能力,助力短剧企业快速响应市场、提升投放效率、实现全球化分发。
|
11月前
|
缓存 负载均衡 网络协议
电商API接口性能优化技术揭秘:缓存策略与负载均衡详解
电商API接口性能优化是提升系统稳定性和用户体验的关键。本文聚焦缓存策略与负载均衡两大核心,详解其在电商业务中的实践。缓存策略涵盖本地、分布式及CDN缓存,通过全量或部分缓存设计和一致性维护,减少后端压力;负载均衡则利用反向代理、DNS轮询等技术,结合动态调整与冗余部署,提高吞吐量与可用性。文中引用大型及跨境电商平台案例,展示优化效果,强调持续监控与迭代的重要性,为电商企业提供了切实可行的性能优化路径。