暂无个人介绍
head
变长类型,有4个字节记录这个字段的真实长度
shared buffer的一半
shared buffer设置为内存1/4,如果不使用huge page建议不要超过32GB
使用alter system set 或者 set xxx=xxx;
保证排他锁不冲突,大表加字段是很快的
删除pg_wal时需要谨慎操作,可根据这个删除https://github.com/digoal/blog/blob/master/201702/20170216_01.md
可做如下优化
select new_rid from mid.t_hdmap_margin_rid_map as t_hdmap_margin_rid_map
where new_rid = any(array (select new_rid from mid.t_hdmap_margin_rid_map as t_hdmap_margin_rid_map))
详情参考 https://www.datadoghq.com/blog/100x-faster-postgres-performance-by-changing-1-line/
PG可以通过xmax字段的值是否为0,作为判断依据.
但是需要在SQL后面跟上returning xmax,才能返回xmax的值.
代码修改为:
INSERT INTO name_test (
name_id, name
)
VALUES (%s, %s)
ON CONFLICT(name_id)
DO UPDATE SET name_id=EXCLUDED.name_id,name=EXCLUDED.name
returning xmax;
update:
[('1481076451',)]
insert:
[('0',)]
最后取值,可做判断.
详情参考https://github.com/digoal/blog/blob/master/201810/20181017_01.md