Postgresql-xl 节点介绍

转载: (19条消息) Postgresql-xl 结构_有梦为马 随处可栖-CSDN博客_postgresql xl

GTM

全局事务控制节点,保证集群数据一致性,与coordinator节点和datanode节点不断通信,是整个集群的核心节点,只存在一个,可以存在一个GTM standby节点,对GTM实时备份。GTM一旦故障,整个集群立刻无法访问,此时可以切换到GTM standby节点上。如果部署了GTM standby节点,就应该同时部署GTM proxy,一般和coordinator datanode部署在同一台服务器上。GTM proxy的作用,代理coordinator datanode对GTM的访问,起到减轻GTM负载的作用,另外一个重要的作用是帮助完成GTM的故障切换,当GTM发生故障后,GTM standby成为新的GTM,此时coordinator datanode节点并不需要重新指定GTM地址,只需要GTM Proxy重新连接到新的GTM地址即可。

Coordinator

接收数据访问请求的节点,本质上是由PG后台进程组成。接收的一条查询后,coordinator节点执行查询计划,然后会根据查询数据涉及的数据节点将查询分发给相关的数据节点。写入数据时,也会根据不同的数据分布策略将数据写入相关的节点。可以说coordinator节点上保存着集群的全局数据位置,coordinator节点可以任意扩展,各个节点之间除了访问地址不同以外是完全对等的,通过一个节点更新的数据可以在另一个节点上立刻看到。每个coordinator节点可以配置一个对应的standby节点,避免单点故障。

Datanode

实际存取数据的节点,接收coordinator的请求并执行SQL语句存取数据,节点之间也会互相通信。一般的,一个节点上的数据并不是全局的,数据节点不直接对外提供数据访问。一个表的数据在数据节点上的分布存在两种模式:复制模式和分片模式:复制模式下,一个表的数据在指定节点上存在多个副本;分片模式下,一个表的数据按照一定的规则分布在多个数据节点上,这些节点共同保存一份完整的数据。

Postgresql-xl 调优

1. 排查Coordinator 的上游,是否能发出高traffic,比如,检查上游heplify server 的 goroutione数量等。

2. 排查 Coordinator 的上游 和 pg-xl 的 TCP 跑道是否足够宽

1> 在 cr 上抓包,看是否有存在,TCP window size 为 0 和 TCP retransmission 的情况

2> 根据需要,调整 TCP IPV4 setting 保证 有足够的 receive send buffer 为每一个TCP socket

net.ipv4.tcp_rmem net.ipv4.tcp_wmem net.ipv4.tcp_mem

3. 查看 pg-xl 的瓶颈在哪里?

写速率: 1.6G/Min

1> 查看在创建表时,是否可以删除一些不必要的索引(index)

2> pg-xl  配置参数的调优

process numbers, Memory, IO-WAL, IO-Checkpointer, Two-phase Commit

3> 查看 Lock 等待状态

"select * from pg_stat_activities" 查看是否有些进程被stuck 由于等待锁

解决方案: 更改了 分布式方案 DISTRIBUTE BY ROUNDROBIN => DISTRIBUTE BY MODUBO(tag)

4> 查看IO 性能

现象,使用glusterfs 作为永久存储,发现 cpu 消耗越来越大,怀疑IO是瓶颈。

验证方法, 去掉永久存储,做比较实验,发现性能大大提高。

了解到glusterfs 性能远差于Cinder performance,解决方案,换成Cinder 存储。

总结: 对性能影响的关键因素

1> IO

2> DB Lock

3> Networking

4> DB memory

后来,把透明大页也打开了。

Postgres-XL 调优相关推荐

  1. mongdb 建立了索引唯一性还能重复插入?_「数据库系列」Postgres性能调优——Index...

    在本文中,我们将探讨如何通过使用Explain和Analyze来分析慢查询,以及使用索引来修改和增强查询时间来解决慢查询. Postgres支持在表上使用各种索引,以加快查询速度. 多列索引 多列B树 ...

  2. 实时数仓入门训练营:Hologres性能调优实践

    简介:<实时数仓入门训练营>由阿里云研究员王峰.阿里云高级产品专家刘一鸣等实时计算 Flink 版和 Hologres 的多名技术/产品一线专家齐上阵,合力搭建此次训练营的课程体系,精心打 ...

  3. PosgreSQL快速参数调优和sysbench压测

    关于PostgreSQL的性能调优可以参考<PostgreSQL 9.0 High Performance>,以及朱贤文在2014 PostgreSQL中国用户大会上分享的<高性能P ...

  4. AI4DB:openGauss人工智能参数调优之X-Tuner

    X-Tuner:参数调优与诊断 一.概述 二.使用准备  三.使用示例  四.获取帮助 五.命令参考 六.常见问题处理 一.概述 增量物化视图可以对物化视图增量刷新,需要用户手动执行语句完成对物化视图 ...

  5. 通过大规模机器学习自动调优数据库参数

    目录 1. 引言 2. 挑战 3. 系统概览 3.1 举例 3.2 假设和限制 4. 工作负载识别 4.1 统计收集 4.2 修剪冗余监控指标 5. 识别重要的参数 5.1 使用Lasso进行特征选择 ...

  6. 压测工具BenchmarkSQL对OceanBase开源版3.1.2性能测试调优

    作者:马顺华 从事运维管理工作多年,目前就职于六棱镜(杭州)科技有限公司,熟悉运维自动化.OceanBase部署运维.MySQL 运维以及各种云平台技术和产品.并已获得OceanBase认证OBCA. ...

  7. 软件测试方法进行调优,软件测试中性能调优的过程解析

    0e7i$ME*D-E6~0性能调优无疑是个庞大的话题,也是很多项目中非常重要的一环,性能调优的难做是众所周知的,毕竟性能调优涵盖的面实在是太多了,在这篇文章中我们蜻蜓点水般的来看看性能调优这项庞大的 ...

  8. 《强化学习周刊》第31期:康奈尔大学推出基于强化学习的数据库调优工具DB-BERT...

    No.31 智源社区 强化学习组 强 化 学  习 研究 观点 资源 活动 关于周刊 强化学习作为人工智能领域研究热点之一,其研究进展与成果也引发了众多关注.为帮助研究与工程人员了解该领域的相关进展和 ...

  9. openGauss数据库性能调优概述及实例分析

    目录 调优思路概述 调优流程 确定性能调优范围 性能因素 调优范围确定 硬件瓶颈点分析 CPU 内存 I/O 网络 查询最耗性能的SQL 分析作业是否被阻塞 调优思路概述 openGauss的总体性能 ...

最新文章

  1. 农银:银行业中台系统的建设思路
  2. API sklearn.neighbors.KNeighborsClassifier
  3. Spring event 使用完全指南
  4. dede_arctype|栏目表
  5. 月活675万 三翼鸟以三大能力“重建”行业赛道
  6. 中石油训练赛 - Equidistant(bfs)
  7. 百词斩和扇贝打卡测试与评估
  8. 深入浅出 Javascript API(二)--地图显示与基本操作 转
  9. sql语句的备份(导入、导出)
  10. Java代码中的注释详解
  11. 降价上标(Github风味)?
  12. 【数据科学】探索性数据分析
  13. 开源微信共享记账小程序
  14. 打印机出现另存为xps_共享打印机打印出现另存为*.xps,现把打印机驱动改成打印机的型号,可客户机还是打...
  15. kindle看pdf乱码_Kindle 3 使用手记(3) - kindle系统之乱码、txt、mobi和pdf
  16. 网络访问计算机无法访问,电脑已连接网络却无法访问互联网怎么办
  17. discuz自定义模板制作
  18. PostgreSQL中的索引—7(GIN)
  19. lmdb.Error: 路径 : ϵͳ�Ҳ���ָ����·����解决办法
  20. Linux操作系统 —— 普通用户无权限执行命令怎么办

热门文章

  1. 20年,我为你感叹!
  2. openwrt网上资料
  3. uni-app实现自定义switch组件
  4. 国内前端设计行业十日谈
  5. 1.安装Kali Linux
  6. Ifconfig网络配置工具详解
  7. 用一根网线连接2台计算机传输数据
  8. php新人怎么领带,职场穿搭礼仪手册指南
  9. 图像语义分割快速入门--keras代码示例-----基于tensorflow2.x-----看完就会系列!!!!
  10. 二十五岁的时候[老猫]