1、PostgreSQL中文社区第13届PostgreSQL中国技术大会聚焦云端创新汇聚智慧共享郭一军云贝数据数据冷热分离在金融行业的实践PostgreSQL中文社区冷热分离产品架构冷热分离功能实现03冷热分离要点总结04冷热分离应用背景0102PostgreSQL中文社区目录contents01冷热分离应用背景PostgreSQL中文社区PostgreSQL中文社区未来数据库技术发展趋势云原生化平台化智能化一体化PolarDBGaussDBTDSQL开源数据库PostgreSQLPostgreSQL中文社区数据库冷热分离的设计热数据冷数据热数据是需要被计算节点频繁访问的在线类数据,比如可以是半年
2、以内的数据,用户经常会查询它们,适合放在数据库中存储;数据保留3个月;核心热数据采用NVME存储热数据;对于一个分布式数据库系统来说,不可避免的都会存在数据倾斜问题。无论使用hash分片还是list分片,同一个账户或机构(shardkey)的数据都只会落到一个数据节点;为了避免数据倾斜问题,需要在设计阶段进行合理的分片设计;冷数据是指离线类不经常访问的数据,用于灾难恢复的备份或者因为要遵守法律规定必须保留一段时间,比如业务与操作日志数据以及统计数据。通常会存储在性能较低、价格较便宜的文件系统里,适用于离线分析;核心冷数据采用历史库集群进行集中管理,每个核心一个历史库集群,冷数据采用SATA S
3、SD存储数据;分级分层分类PostgreSQL中文社区数据库冷热分离的优势在金融行业中,数据冷热分离是一种常见的实践,用于优化数据存储和访问效率,通过将频繁访问的热数据和不常访问的冷数据分开存储,可以提高系统性能并降低存储成本。常见的实现方式包括使用分布式数据、存算分离架构以及数据归档策略。这些方法不仅能满足金融行业对数据实时性和安全性的要求,还能有效管理海量数据。提升性能降低成本冷热分离可以显著提高数据库的查询性能,第一:热数据保存在高性能存储介质上,如内存或SSD,提高了数据访问速度和系统响应能力。第二:减少热数据存储的压力,从而提升整体系统响应速度。通过冷热分离,可以更有效利用存储资源。
4、热数据保存在高性能但成本较高的存储介质上,而冷数据则迁移到成本较低的大容量存储介质上,从而大幅降低存储成本。PostgreSQL中文社区数据库冷热分离的挑战数据分类的难度数据迁移成本查询性能的平衡系统复杂度的增加数据一致性的维护如何将热数据和冷数据进行有效的分类是一个挑战。不同应用场景下,热数据和冷数据的定义可能会有所不同,需要根据具体情况制定合理的分类规则。将热数据和冷数据分别存储在不同的存储介质上需要进行定期的数据迁移,这在时间和资源消耗上会带来一定成本。如何降低数据迁移的开销?将热数据和冷数据分离后,需要在查询热数据和冷数据之间进行平衡,确保整体查询性能不会下降。这需要结合实际应用场景进
5、行调优。冷热分离方案需要额外的架构设计和实现,例如需要逻辑层增加路由层来判断数据请求是访问冷库还是热库。这增加了系统设计和维护的复杂性。在数据分离和迁移的过程中,需要确保数据的一致性和完整性,避免出现数据丢失或不一致的问题。02冷热分离产品架构PostgreSQL中文社区PostgreSQL中文社区国产化金融级分布式数据库TDSQL(PG版)指标监控运维管理实时管理安全审计数据治理Data Forward Bus 集群数据交互总线Datanode(数据节点DN)业务数据存储节点GTM(事务管理器)全局事务管理器,协调集群集群事务,并管理全局对象Coordinator(协调节点CN)业务访问入口
6、,每个节点对等,对外提供一致视图GTM-MTransation InfoGlobal objectGTM-STransation InfoGlobal objectCoodinatorGlobal catalogCoodinatorGlobal catalogCoodinatorGlobal catalogDatanode1Local catalogLocal DataDatanode2Local catalogLocal DataDatanode3Local catalogLocal DataDatanode4Local catalogLocal DataPostgreSQL中文社区冷热数据