【PG性能】Postgresql性能相关(操作系统及数据库简单说明)


--pg 性能调整相关
--内存
buffer cache 直接对磁盘进行操作的数据会缓存到buffer cache
page cache   文件系统中的数据则交给page cache进行缓存
--cache不自动回收,数据库需要内存时,cache可以很快被回收,如果没用到交换分区,可说明内存够用
-释放缓存
sync
echo 1 > /proc/sys/vm/drop_caches
--vmstat  虚拟内存、进程、cpu等整体情况
-r 当前队列中有几个进程在等待
-b  当前有多少个进程进入不可中断式睡眠状态
-swpd  已使用的交换分区的大小
-free  空闲内存大小
-buff 已使用的buffer大小
--cache 已使用的page cache大小
-si/so 从磁盘交换到swap分区和从swap分区交换的磁盘大小
-bi/bo 从磁盘读取和写入到磁盘的大小,单位blocks/s
-in 每秒被中断的进程数
-cs 每秒多少个cpu进程在进进出出
--iostat  监控磁盘输入输出
--mpstat cpu详细性能信息
--sar  默认保存28天,目录 /var/log/sa   修改 /etc/sysconfig/sysstat
--查看某一时间段
sar -q -f /var/log/sa/sa15 -s 22:00:00 -e 23:00:00
sar -q  #汇总cpu状况
sar -b  #汇总io状况
--linux I/O 调度
##查看当前支持的调度算法
dmesg | grep -i scheduler
--cfg 绝对公平调度算法 ,默认
--noop 电梯调度算法  适合ssd
--deadline  绝对保障算法 
--查看当前磁盘sda的io调度算法
cat /sys/block/sda/queue/scheduler
--临时修改
echo noop > /sys/block/sda/queue/scheduler
##磁盘预读扇区
/sbin/blockdev --getra /dev/sda  #默认256,可设置16384或更大
/sbin/blockdev --setra 16384 /dev/sda
#或
echo 16384 /sys/block/sda/queue/read_ahead_kb
##禁用swap
swapoff -a 
##启用
swapon -a
--透明大页,要关闭
cat /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/enabled
##numa guanbi 
numactl -hardware
--or
numastat
#可编辑 /etc/grub.conf 行末加numa=off禁用
##数据库方面
--统计信息
pg_stat_database
--缓存命中率,如果低于1,可尝试调整shared_buffers
select blks_hit::float/(blks_read + blks_hit) as cache_hit_ratio from pg_stat_database where datname=current_database();
--事务提交率,低于1,检查是否死锁或其他超时太多
select xact_commit::float/(xact_commit +xact_rollback) as successful_xact_ratio from pg_stat_database where datname=current_database();
--优化后建议执行以下语句,方面对比优化前后数据
pg_stat_reset()
--表级统计信息
pg_stat_user_tables
--索引使用率
select sum(idx_scan)/(sum(idx_scan) + sum(seq_scan)) as idx_scan_ratio from pg_stat_all_tables where schemaname='your_schema';
select relname,idx_scan::float/(idx_scan+seq_scan+1) as idx_scan_ratio from stat_all_tables where schemaname='your schema' order by idx_scan_ratio asc;
--语句级统计信息 通过pg_stat_statements ,postgres 日志、auto_explain 来获取
pg_stat_statements
--开启
shared_preload_libraries='pg_stat_statements'
pg_stat_statements.track=all 
create extension pg_stat_statements;
--查询平均执行时间最长的3条查询
select calls,total_time/calls as avg_time,left(query,80) from pg_stat_statements order by 2 desc limit 3;
--查看执行计划 analyze可以得到真正执行计划
explain analyze select * from tb1;
--除了analyze选项,可以使用其他
explain (analyze on ,timing on,verbose on,buffers on) select * from tb1;
--session 级别 log_xxx_stat判断问题,使用的系统资源等,
set client_min_messages=log;
set log_parser_stats=on;
set log_planner_stats=on;
--or
set client_min_messages=log;
set log_parser_stats=off;
set log_planner_stats=off;
set log_statement_stats=on;
--重建索引
create unique index concurrently on mytb1 using btree(id);
--id 字段有两索引
select schemaname,relname,indexrelanme,pg_relation_size(indexrelid) as index_size,idx_scan,idx_tup_read,idx_tup_fetch from pg_stat_user_indexes where indexrelname in (select indexname from pg_indexes where schemaname='public' and tablename='mytb1');
--开启事务删除主机索引,同时将第二索引更新为主键约束
begin;
alter table mytb1 drop constraint mytb1_pkey;
alter table mytb1 add constraint mytb1_id_idx primary key using index mytb1_id_idx;
end;
--对于大规模,可通过pg_repack工具进行定时索引重建


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29487349/viewspace-2564316/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29487349/viewspace-2564316/

性能分析利器:pg_stat_statements介绍 pg_stat_statements.max是模块所追踪的最大语句数(即pg_stat_statements视图中的最大行数)。只有超级用户可以改变这个设置。shared_blks_read bigint (未命中块数量) shared_blks_hit/(shared_blks_hit+shared_blks_read)可计算出命中率。pg_stat_statements_reset丢弃到目前为止由pg_stat_statements收集的与指定的userid、dbid和queryid相对应的统计数据。 阅读详情

相关推荐

postgresql|数据库|系统性能监控视图pg_stat与postgresql数据库的调优(备忘)

摘要:本文详细介绍了PostgreSQL数据库中的pg_stat族系统视图,这些视图对数据库监控和性能调优至关重要。文章重点讲解了pg_stat_database、pg_stat_user_tables、pg_stat_user_indexes等核心视图的功能和使用场景,包括如何通过这些视图分析事务提交/回滚情况、索引使用效率、表膨胀问题等。同时对比了openGauss与PostgreSQL在系统视图上的差异,指出正确使用这些视图可以帮助DBA及时发现数据库性能问题,如死锁、全表扫描、索引冗余等。

zsk_john的技术分享专用博客 1508

PG性能调校(二):数据库硬件及基准评测

一、CPU:更多的核心还是更快的核心?   最好方法是使用类似top的工具监控目前现有的服务器。   如果每一个CPU所运行的进程数量不多,那么对于这种类型的工作负荷则使用速度更快的核心会更好。这种情况经常在以批处理的方式运行大量查询的情况下发生,例如,在大批量的数据需要进行排序形成报表时。   如果所有的CPU都与并发进程处于活动状态,那么用户需要的可能是更多核心的CPU。这些情况在具有大...

weixin_34056162的博客 218

高精地图语义分割标注

什么是语义分割?语义分割与目标检测的区别?语义分割的关键应用场景有哪些?高精地图语义分割标注的难点?

weixin_52509513的博客 1626

BI测试工具之跨数据库数据对比,支持oracle,sqlserver

应用场景: 本周在进行SIT,我帮助仅有的一个测试妹妹对部分表进行数据质量验证,第一步需要做的就是比对source与stage表的table definition 与 数据内容的一致性。 本项目使用的是oracle作为DW,source是oracle,sqlserver和xls. 没有权限建立database link, 测试们常用的方法是比对总行数,然后如果数据集太大的话,则抽样比对,导出...

weixin_30338497的博客 298

BI测试(知识总结)

由于之前做过一段时间大数据测试,故整理BI测试知识点以供学习。

m0_70618214的博客 2240

pg和MySQL读性能_【PG性能Postgresql性能相关操作系统数据库简单说明

--pg性能调整相关--内存buffercache直接对磁盘进行操作的数据会缓存到buffercachepagecache文件系统中的数据则交给pagecache进行缓存--cache不自动回收,数据库需要内存时,cache可以很快被回收,如果没用到交换分区,可说明内存够用-释放缓存syncecho1>/proc/sys/vm/drop_caches--vmstat...

weixin_36208880的博客 362

PostgreSQL的视图pg_database

PostgreSQL 中的一个系统视图,用于显示当前数据库集群中的所有数据库的信息。通过查询视图,数据库管理员可以获取关于每个数据库的详细信息,例如数据库的名称、所有者、编码、表空间等。

文牧之的博客 1525

PG数据库PostgreSQL 转储详细操作流程

利用pg_dump进行PostgreSQL 转储详细操作流程

qq_45193872的博客 2194

postgresql pg_hba.conf 配置详解

该文件用于控制访问安全性,管理客户端对于PostgreSQL服务器的访问权限,内容包括:允许哪些用户连接到哪个数据库,允许哪些IP或者哪个网段的IP连接到本服务器,以及指定连接时使用的身份验证模式。

m0_74823452的博客 6505

PostgreSQL数据库pg_basebackup使用

首先,我们在处理大型数据库时发现pg_dump不够高效。pg_basebackup更适合全量备份,尤其是用于搭建主从复制或者PITR(时间点恢复)。接下来,解释pg_basebackup的基本用法,比如如何连接到数据库,备份到目录或压缩文件。还要提到参数如-D指定目录,-X获取WAL日志,-Ft指定tar格式,-P显示进度等。同时,要注意权限问题,用户需要有replication权限,或者使用超级用户账户。可能还会关心如何恢复备份,这时候需要说明如何将备份文件放到数据目录并启动实例。

Auspicious航的博客 2767

详细解析 PostgreSQLpg_stat_database 系统视图的查询结果

摘要:PostgreSQLpg_stat_database视图是数据库监控的核心工具,提供集群中各数据库的累积统计信息。主要包含四类指标:数据库标识与连接信息(如连接数)、事务与查询统计(如提交/回滚事务数、CRUD操作量)、块I/O统计(磁盘读写及缓存命中率)以及冲突状态(如死锁和临时文件使用)。通过分析这些指标可以评估负载情况、识别性能瓶颈,如缓存命中率低需调整shared_buffers,临时文件过多应增加work_mem等。文章还提供了常用查询示例,强调需结合多指标综合分析和建立基准值,为数据库

liumangtuzi888的博客 1022

PostgreSQL的视图pg_stat_database

PostgreSQL 中的一个系统视图,用于提供与数据库相关的统计信息。这个视图包含了多个有用的指标,可以帮助数据库管理员了解数据库的使用情况和性能。以下是datiddatnameblks_readblks_hitconflictstemp_filestemp_bytesdeadlocks。

文牧之的博客 1413

postgresql中的 pg_dump和pg_restore

一、postgresql中的 pg_dump和pg_restore 使用 pg_dump和pg_restore 对数据进行备份和还原。 其中pg_restore 恢复还原采用的是创建语句 1.1 pg_dump和pg_restore 数据库备份:pg_dump 数据库恢复:pg_restore 使用pg_dump的自定义转储格式。. 如果PostgreSQL所在的系统上安装了zlib压缩库,...

uzong 2万+

PostgreSQL 监控 - 高频指标

PostgreSQL 实时健康监控 大屏 - 高频指标 - 珍藏级 作者 digoal 日期 2018-06-13 标签 PostgreSQL , 大屏指标 , qps , long query , locks , active , idle in transaction , long idle in transaction , 2PC 背景 最关键的一些数据库健康指标,趋势监测。...

Hehuyi_In的博客 5820

微软的PowerBi调研及研发测试笔记

注意折叠项目,在power query 编辑器中,找到查询项,再右键找到 高级编辑器,去掉 enablefolding=true选项。URL api模式不能支持 很好的刷新,但是直接用pgsql数据库,就可以支持 derectquery,秒级刷新。当然还可以通过“更改检测”,提高刷新性能,什么时候数据发生变化了,什么更新视图数据。在powerbidesk中,选项中,预览中,打开自动刷新选项。==================报表制作调研。==================嵌入式调研。

共同学习、强我国家 336

PostgreSQL实战-10-性能优化

影响数据库性能的因素: 在硬件层面: CPU IO 内存 网络 在软件层面: 操作系统配置 中间件配置 数据库参数配置 运行在数据库之上的查询和命令 等 ...... 性能检测 系统监控 在进行系统性能优化时, 应当先着眼全局进行分析,再逐步深入到细节。 PostgreSQL 数据库的SQL 服务器应用通常分为 OLTP ...

steven的博客 1990

PostgreSQL 性能分析插件 pg 监控工具

pg_stat_statements pg_top pg_systat pg_proctab pgdash pgmetrics pgbadger pgcluu pg_buffercache pg_trgm pg_stat_statements: 监控收集各类sql执行情况 system_stats:用于监控OS层信息 pg_stat_kcache:监控单条SQL花费cpu等 pg_stat_monitor:pg_stat_statements和pg_stat_kcache的结合体 pgpro_stats

秋̶᭄ꦿ攻城狮࿆ྂ 2427

PostgreSQL 数据库性能

1:数据库性能常用的度量指标 (1)运行时间 run time (2)QPS:Queries Per Second意思是“每秒查询率”,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。 (3)TPS:是TransactionsPerSecond的缩写,也就是事务数/秒。它是软件测试结果的测量单位。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数..

Melo琦 7866

PostgreSQL 某单机插入性能测试 1200万行/s, 4.2GB/s

本文主要介绍并测试一下PostgreSQL 在中高端x86服务器上的数据插入速度,帮助企业用户了解PostgreSQL在这种纯插入场景的性能。 (例如运营商网关数据,金融行业数据,产生量大,并且要求快速插入大数据库中持久化保存。) 另外, 用户如果需要流式实时处理,可以参考基于PostgreSQL的流式处理方案,一天处理1万亿的实时流式处理是如何实现的?...

weixin_33913377的博客 1391

ODS 与模态分析

模态分析不是通过现有的 FRF 来“推测”或“估计”其他模态参数,而是通过测量和分析 FRF 来。

轩辕霸天L 1226

茶叶与杂草检测数据集_20251116_211936.zip

茶叶与杂草检测数据集一、基础信息• 数据集名称:茶叶与杂草检测数据集• 图片数量:训练集:288张图片验证集:25张图片测试集:14张图片总计:327张图片• 训练集:288张图片• 验证集:25张图片• 测试集:14张图片• 总计:327张图片• 分类类别:maleza(杂草):农业环境中的常见杂草类别,可能影响作物生长。te(茶):茶叶植物,代表健康作物类别。• maleza(杂草):农业环境中的常见杂草类别,可能影响作物生长。• te(茶):茶叶植物,代表健康作物类别。• 标注格式:YOLO格式,适用于目标检测或实例分割任务。• 数据格式:图片数据,来源于农业相关场景。二、适用场景• 农业智能监测系统开发:帮助构建AI模型,自动检测茶园中的杂草和茶叶,实现精准除草和作物管理。• 农业机器人集成:用于自动化农业设备,进行杂草识别和清除,提升农业生产效率。• 学术研究与创新:支持计算机视觉在农业领域的应用研究,促进AI与农业技术结合。• 农业教育与培训:作为教学资源,培训学生和从业者识别作物和杂草,提升实践技能。三、数据集优势• 标注精准:采用YOLO格式标注,确保目标定位准确,类别标签明确。• 类别多样性:包含茶叶和杂草两个关键类别,覆盖农业中的常见需求,增强数据实用性。• 场景真实:数据基于真实农业环境,提升模型在实际应用中的泛化能力和鲁棒性。• 任务适配性强:兼容主流深度学习框架,易于集成到目标检测或实例分割项目中,支持快速开发和部署。

上一篇: 【XTTS】Oracle传输表空间xtts增量方式
下一篇: 【PG性能测试】pgbench性能测试工具简单使用
crygaj7140
博客等级 码龄11年 3粉丝 0原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值