数据库
文章平均质量分 73
奥利奥泡一泡
Hello World!!!
展开
-
pg逻辑复制和数据同步
本文主要讲如何通过pg的逻辑复制功能,利用kafka,同步数据到第三方数据库(比如elassticsearch)。 pg逻辑复制 关于pg逻辑复制需要先看以下文章:《PostgreSQL变更事件捕获 》《pg的时间线解析》 逻辑复制几个比较重要的概念: 复制标识 逻辑复制设计之初,是为了将主库数据实时同步到从库的,主库是发布方,从库是订阅方,那么发布方发布一条更新消息,订阅方也就是从库需要知道更新的是哪一行记录,所以需要一个复制标识。复制标识总共有default(主键做默认标识)、index、fu原创 2021-10-30 16:16:56 · 1902 阅读 · 0 评论 -
Postgresql的vacuum机制一些理解
我们知道,postgresql(以下简称pg)多版本控制mvcc和oracle有所不同,oracle通过回滚段实现,数据更新之前先将旧版本数据写入回滚段,然后再将待更新数据写入原data block,而pg mvcc则是当元组发生更改时,直接在原数据data page插入一条新的记录,同时将原元组逻辑上标识为删除,这些标识为删除的元组也叫死元组。这就导致当进行多次更新和删除操作,磁盘上会多出很多死元组,占用了很多磁盘空间并且导致系统性能下降。 vacuum的作用则是回收这些这些无效的空间。 vacuum命令原创 2020-12-27 14:25:25 · 1240 阅读 · 0 评论 -
使用merge into实现千万级别数据迁移
之前项目需求,需要将另一个系统的数据迁移到当前系统的数据库中。数据量大概4000w,项目所使用的数据库是DB2。当时我们采用sql脚本进行迁移,其中迁移的核心sql语句就是使用merge into语句。 merge into语法如下: MERGE INTO <target> USING <source> ON <match-conditio...原创 2019-06-14 21:00:56 · 3350 阅读 · 0 评论