AI智能总结
ODC:无锁结构变更与冷热数据分离解决方案 胡智娟 OceanBase高级产品经理 Contents目录 01ODC是什么 ODC能给开发者带来哪些帮助? 02无锁结构变更 为结构变更提供安全稳定的解决方案 03数据归档 为在线库提供冷热数据分离解决方案,实现数据库瘦身 04CY24规划 ODC今年计划提供哪些能力 01ODC是什么 ODC是什么 ODC是什么 一个跨平台的数据库开发工具 超过25项重要开发功能,覆盖对象管理、SQL执⾏、数据查看与编辑等常⻅开发⼯具能⼒,同时提供了PL调试、数据库运维、数据⽣成等企业级特性。 通过现代WEB架构提供方便的使用方式,桌面版可部署在Windows、Mac、Linux系统,WEB版用户通过浏览器即可访问服务。 ODC是什么 一套针对数据库变更管理的团队协作平台 通过访问权限、变更审核、稳定变更三个层次递进风险控制,保障生产数据库变更过程稳定、高效、可追溯。其中变更审核环节,通过SQL检查规则、SQL窗口规范、风险识别定制符合实际业务情况的管控规则。 ODC是什么 一款全面覆盖数据生命周期管理的产品 ODC提供直观的界⾯,使开发⼈员能够轻松地制定冷热数据分离策略。5分钟即可构建冷热数据分离系统。 针对有⾃动新增、删除分区诉求的分区表,ODC⽀持为这些表设置分区创建和清理策略,ODC根据⽤户配置的策略⾃动管理分区,能有效地减轻DBA的工作负担。 02无锁结构变更 无锁结构变更 OfflineDDL和OnlineDDL OnlineDDL的要点 OfflineDDL的影响 服务中断,影响业务连续性 独占锁导致所有对该表的读取和写入操作都将被阻塞,直到DDL完成。这会导致用户请求长时间等待,甚至服务暂时中断。 资源消耗,影响其它关键进程性能下降 大表的OfflineDDL可能会触发大规模的数据读写操作,产生海量I/O,造成磁盘压力骤增进而影响整个系统的性能。 数据一致性风险,导致未提交的更改丢失 OfflineDDL期间,正在进行中的事务会被阻塞,直至超时或被迫回滚。这会导致用户丢失未提交的数据。 无锁结构变更 ODConlineDDL流程 支持offlineDDL自动识别,onlineDDL走普通变更,offlineDDL走无锁结构变更。 使用OB成熟的迁移技术完成全量、增量数据同步,数据同步过程中根据数据库负载限流。 业务切流过程中会根据锁表超时时间、重试次数等设置来执行,以保障切流过程的平滑。在rename过程中只需短暂地(1-3s)影响业务。 变更任务默认保存原表结构及数据以保障紧急情况下变更回滚。 无锁结构变更 ODConlineDDL的应用 字段类型调整 •面对产品需求频繁变更,数据库结构需要随之调整以适应新的业务逻辑或数据存储需求。 •随着数据量增长和查询负载增加,数据库管理员可能会发现某些字段类型并不适合现有数据分布或查询模式。•法规遵从性要求或企业内部数据安全策略的变化迫使调整数据库字段的数据类型。 修改主键 •原有表缺少主键,需要增加主键。•原有的主键设计不符合实际诉求,需要修改主键。 03数据归档 数据增长带来的挑战 •选择高压缩比的数据库•冷热数据分离•为冷数据选择CPU配置较低且存储更便宜的服务器 数据归档的流程 稳定 •支持实时监控,自动限流 灵活 •支持灵活的归档/清理条件配置(支持自定义变量)•支持多种调度策略 安全 •支持数据一致性校验 可靠 •支持归档任务异常回滚 数据归档任务界面 新建归档任务 数据归档关键技术解读 四大关键技术 分片并行实现高性能归档 先校验再删除确保历史数据库可信 •基于主键的分片策略•将归档任务拆分成多个较小的子任务•多个线程并发处理 •支持源端、目标端数据一致性校验 断点恢复更适应大数据规模 多维度限流保障在线库稳定运行 •每个子任务会保留一个滑动窗口用于记录事务的成功状态•失败的事务即为断点,会定期同步到数据库中•重跑时获取每个子任务的断点信息,从断点位置继续运行 •主动限流:流量限制、行数限制•被动限流:根据CPU、内存使用情况限流 数据归档 用户案例:理想汽车之数据库瘦身、降本增效 多场景 业务挑战 •在线日志型数据庞大,缺少有效清理手段•业务数据快速增长,需要控制数据规模•业务场景复杂多样,多表联合过滤等 •历史数据归档:在线库(SSD磁盘)->历史库(SAS磁盘),将数据归档到廉价存储的历史库,节省约三分之二存储成本,提高在线库性能和运维效率 •过期数据清理:直接原地清理过期数据,100%节省存储成本•异常数据回滚:数据归档后,发现异常后可以从历史库进行数据恢复,将数据回滚到在线库 功能价值 •降本增效:大量历史数据访问少、数据量大,清理过期数据降低存储成本 •数据库瘦身:业务快速增长,数据规模日趋庞大,缩小在线库数据规模提升性能和稳定性 04ODC今年规划 产品迭代路线图 支持AP业务场景开发,结合AI提效,持续打磨数据归档及变更风险管控能力 联系我们 官网介绍 www.oceanbase.com/product/odc 钉钉扫码加入用户交流群 代码仓库 https://github.com/oceanbase/odc 谢谢 谢谢 谢谢