自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yanzongshuai的专栏

专注于MySQL、MariaDB、Percona、PostgreSQL数据库及Aerospike等nosql数据库

  • 博客(464)
  • 论坛 (3)
  • 问答 (1)
  • 收藏
  • 关注

原创 我的微信公众号二维码

2019-05-18 20:25:00 624

原创 PG14 监控和日志功能提升

PG14 监控和日志功能提升PostgreSQL 14与2021年9月发布,其中包括很多性能改进和功能增强,包括监控方面的功能提升。下面是一些关键内容。查询标识符查询标识符用于标识查询,可...

2021-12-03 22:01:20 1

原创 PostgreSQL 14中连接参数target_session_attrs增强

PostgreSQL 14中连接参数target_session_attrs增强本文讨论PostgreSQL 14数据库连接参数target_session_attrs增强的功能,并解释该...

2021-11-28 20:04:16 227

原创 PostgreSQL 14通过libpq改进logging

PostgreSQL 14通过libpq改进loggingPG14中增强了libpq功能,以跟踪应用程序的服务器/客户端通信的可用性。它添加了新的选项控制输出格式。背景libpq是客户端库...

2021-11-21 21:28:01 469

原创 PostgreSQL 14中两阶段提交的逻辑解码

PostgreSQL 14中两阶段提交的逻辑解码正文Fujitsu OSS团队和PostgreSQL开源社区合作在PG14中添加了在逻辑复制中对两阶段提交进行解密的功能。下面看看这项功能是...

2021-11-20 22:13:52 484

原创 PostgreSQL 14中TOAST的新压缩算法LZ4,它有多快?

对于列压缩选项,PostgreSQL 14提供了新的压缩方法LZ4。与TOAST中现有的PGLZ压缩方法相比,LZ4压缩更快。本文介绍如何使用整个选项,并和其他压缩算法进行性能比较。背景P...

2021-11-18 23:38:40 607

原创 PostgreSQL 14中提升Nested Loop Joins性能的enable_memoize

PostgreSQL 14中提升Nested Loop Joins性能的enable_memoize最近在PG14中发现新增一个配置参数enable_memoize,通过此参数可以提升嵌套...

2021-11-12 21:27:07 611

原创 一分钱福利--墨天轮云上资源PostgreSQL在线实训环境

一分钱福利--墨天轮云上资源PostgreSQL在线实训环境在家学习,时常因没有一个环境而烦恼。有幸墨天轮最近推出了云上资源PG在线实训环境。极其方便了广大数据库爱好者。废话不多说,首先给出资源申请方法:1、打开墨天轮主页,选择云市场2、这里可以看到PG的实训环境,只需0.01元就可以使用3个月。过期后可以再进行购买实训环境还有Oracle、opengauss、MySQL、MogDB、redis。3、购买后在个人信息:我的订单处可以看到实训环境,直接点击进入4

2021-10-29 21:08:17 37

原创 Linux中的HugePage对数据库服务来说为什么如此重要:以PG为例

Linux中的HugePage对数据库服务来说为什么如此重要:以PG为例用户经常因为OOM killer造成数据库崩溃问题来找我们寻求帮助。Out Of Memory killer会杀死P...

2021-10-15 22:41:40 33

原创 优化PG查询:一问一答

优化PG查询:一问一答正文Q1:是否有普罗米修斯exporter,你知道普罗米修斯监控PG的原生选项吗?可以使用Postgres Exporter采集PG的各种指标,并将其发送给普罗米修斯...

2021-09-21 20:10:40 23

转载 快速发现性能问题

服务发现性能问题,考虑pg_stat_statements。他可提供发现慢查询的快速高效方法。这是PG的附带模块,需要在postgresql.conf中添加:shared_preload_...

2021-06-20 21:32:14 35

原创 pg_basebackup原理解析

pg_basebackup介绍pg_basebackup提供一个全量备份。常用来搭建流复制环境。属于物理备份。逻辑备份工具时pg_dump。参数说明:-D:--pgdata=DIRECTO...

2021-05-28 21:33:11 233

原创 PostgreSQL pg_resetwal处理机制

pg_resetwal的参数ControlFile结构及pg_resetwal参数影响的字段static struct option long_options[] = { {&#3...

2021-05-26 14:39:26 416

原创 PostgreSQL崩溃恢复读取WAL

1、崩溃恢复和备机回放都是StartupXLOG函数进行处理,从pgcontrol文件中读取checkpoint位置,从这个位置开始读取WAL记录进行回放。2、读取一个WAL记录的函数是R...

2021-05-19 21:42:34 122

原创 PostgreSQL执行计划explain

入口函数为ExplainOnePlan,他会创建一个查询描述结构queryDesc,然后进入执行器执行ExecutorStart、ExecutorRun、ExecutorFinish、Ex...

2021-05-09 20:55:31 128

原创 PostgreSQL执行计划数据结构

过一个案例介绍PG执行计划相关数据结构:PlanState和Plan。以下面执行计划为例:postgres=#explainselect*fromt2whereid1>(...

2021-05-05 21:11:09 66

原创 PG中的WAL:1 buffer cache

PG中的WAL:1 buffer cache为什么需要WAL日志数据库管理系统需要操作的数据位于RAM,并会异步刷写到磁盘或其他非易失性存储介质。写被推迟,推迟时间越久IO次数越少,系统...

2021-05-02 21:38:55 89

原创 PG检查点刷写脏页CheckPointGuts

Checkpoint进程刷写脏页函数为CheckPointGuts,这个函数除了刷写脏数据页外,还会刷写CLOG、事务时间戳信息、子事务信息等,详情查看之前写的文章:https://blo...

2021-05-01 15:55:56 95

转载 Ordering列以或更好性能

为减少数据库的存储空间,需要确保对列进行排序,通常最好先放置固定大小的列,然后再添加可变长度的列。使用表定义:CREATETABLEt_foo(aint,b...

2021-04-24 10:02:26 41

原创 PG修改数据页页头等信息时是否会产生WAL?

研究PG WAL机制时想到个问题:进行插入、删除、更新等操作时,需要通过WAL来保证其一致性,以及复制构建高可用环境,当修改数据页页头等元数据信息时是否会产生WAL? ...

2021-04-18 21:41:39 45

原创 PG明明业务进行的是SELECT,为什么监控磁盘,写负载那么大呢?

问题进行测试时,预制完数据后立即进行SELECT测试查询场景,或者预制完数据立即重启服务,然后进行SELECT场景测试,监控磁盘负载时,发现写负载特别大。这就有疑惑了,测试场景都是查询,没...

2021-04-10 22:05:09 73

原创 PostgreSQL事务提交日志与CLOG操作初步认识

1、CLOG脏页在checkpoint时刷写CreateCheckPoint->CheckPointGuts->CheckPointCLOG SimpleLruFlush(...

2021-03-29 00:00:00 233

原创 ReadBuffer_common读取页通用函数

1、先通过BufferAlloc函数进行搜索,若在共享内存中数据页的哈希表找到,则直接返回其页描述符,否则分配一个页描述符,并向hash表插入对应一个entry。found表示是否在换成命...

2021-03-07 21:16:21 84

翻译 查询计划器与random_page_cost

查询计划器与random_page_cost本周小贴士比较奇怪,基于我们今天遇到的一个问题。将简讯的链接存储到一个简单数据库中:CREATE TABLE links (uid CHAR...

2021-03-04 22:39:10 105 2

原创 PG:checkpoint是什么

PG:checkpoint是什么Checkpoint是PG中的核心概念。然而会有用户对此比较陌生,不知道如何调优。本文解释checkpoint及如何调优,希望对数据库内核理解有所帮助。PG...

2021-02-21 19:05:34 64

原创 PG备份恢复工具pg_probackup

PG备份恢复工具pg_probackuppg_probackup是管理PG数据库集群备份和恢复的工具。用于执行周期性备份PG实例。兼容PG9.5,,96,10,11,12,13。和其他备份...

2021-02-18 22:15:48 302

原创 腾讯2021sigmod论文Spitfire分析

Spitfire:易失和非易失性内存的三层buffer管理Spitfire: A Three-Tier Buffer Manager for Volatile and Non-Volati...

2021-02-06 21:21:42 624 2

翻译 模式匹配

模式匹配如果在不设置全文搜索的情况下,如何过滤查询结果,您会选择哪种方法?LIKE也许是最容易想到的:SELECT*FROMpeopleWHEREnameLIKE'...

2021-01-31 21:11:04 73

原创 监控复制:PG_STAT_REPLICATION

监控复制:PG_STAT_REPLICATIONPG复制(同步和异步复制)是数据库社区最普遍的功能之一。现在用户通过高可用集群或者使用复制建立只读副本来分散工作负载。这里需要注意,如果使...

2021-01-29 22:04:45 275

原创 基于ARM的AWS EC2实例上的PG跑起来性能怎么样?

基于ARM的AWS EC2实例上的PG跑起来性能怎么样?ARM处理器在数据中心中的应用一直是一个热门话题,我们很想看看他在PG中表现怎么样。用于测试和评估基于ARM的服务器,其可用性一直...

2021-01-26 23:54:29 171

原创 WBL论文解析

后写日志Write behind logging基本思想NVM的优点是可字节寻址、接近内存的高性能、顺序访问和随机访问差距不大。2016年VLDB会议上《write behind log...

2021-01-22 23:14:58 264

翻译 PG通过表访问方法API如何执行顺序扫描

PG通过表访问方法API如何执行顺序扫描引言PG中有很多方法检索数据并返回给用户。依赖于用户的SQL语句,查询计划模块生成最有方法以检索请求的数据。顺序扫描是用户请求大量数据时或者当表没...

2021-01-20 21:38:33 110

翻译 PG中的oid和relfilenode之间的关系

PG中的oid和relfilenode之间的关系PG中的表由一个relfilenode值,即磁盘上表的文件名(除了外表和分区表)。通常情况下可以在Pg_class表找到这个值,然而也会查...

2021-01-18 08:00:00 213

翻译 PG14中的idle_session_timeout

PG14中的idle_session_timeout新添加的配置参数idle_session_timeout和idle_in_transaction_session_timeout类似,...

2021-01-17 13:33:51 467

翻译 PG:INT4 VS. FLOAT4 VS. NUMERIC

PG:INT4 VS. FLOAT4 VS. NUMERIC关系型数据库中数据类型是一个重要话题。PG提供很多不同类型,但并不是所有类型都相同。根据需要实现的目标,可能应用需要不同列类型...

2021-01-15 22:08:49 182

翻译 PG空闲连接对性能的影响

PG空闲连接对性能的影响该系列的第一篇为:PG空闲连接的资源消耗:https://amazonaws-china.com/cn/blogs/database/resources-cons...

2021-01-13 23:00:16 202

翻译 仅对部分数据构建索引

索引会占用比想象中的还要大的空间,有好几次我向表中添加索引以增加速度,但是对磁盘使用量的快速增长感到震惊。虽然索引是构建在列上,但是并不是每个行记录都需要在索引里面,这是部分索引part...

2021-01-10 18:11:47 76

翻译 NOW()会返回时区信息

Getting NOW() in your preferred timezone执行NOW()函数获取当前时间时,可以获得日期和服务器所在的时区。很多服务器运行在UTC/GMT,如果用户...

2021-01-03 15:38:05 305

翻译 检测表中行记录是否已存在

检查PG表中行记录是否已存在,可通过发起一个select看下是否有行记录返回,但是依赖于如何做到这点,返回的结果可能比较奇怪或者不太高效。EXISTS子查询表达式可用于明确确定另一个查询...

2021-01-02 18:05:18 81

翻译 使用JDBC时,加速批量insert

java开发者使用PG jdbc驱动时,可以指定reWriteBatchedInserts连接参数来加速批量操作。如果reWriteBatchedInserts=true...

2021-01-01 15:52:29 550

空空如也

yzs87的留言板

发表于 2020-01-02 最后回复 2020-01-02

写博客能不能添加个撤销键

发表于 2018-01-04 最后回复 2018-01-06

innodb插入意向锁如何使用

发表于 2015-06-07 最后回复 2015-06-07

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除