《Greenplum5.0 最佳实践》 系统监控与维护 (五)

简介:

常规的系统维护是为了我们的Greenplum数据库具有更高的稳定性和更优化的性能体现

  1. 使用 ANALYZE 更新系统的统计信息
  2. 数据库的数据膨胀管理 (需要仔细点延伸下去)
  3. 监控Greenplum的日志文件

Monitoring (监控)

Greenplum 数据库系统提供了非常使用的监控工具。
gp_toolkit 模式包含多种视图,可以通过SQL命令去查询Greenplum数据库系统的 system catalogs , log files 和 对当前操作环境下系统的状态信息。
对于更多的 gpstategpcheckperf 涉及在 《Greenplum Database Utility Guide》中。对于 gp_toolkit 的信息, 可以参考 《Greenplum Database Reference Guide》

gpstate

使用 gpstate 实用程序是用来查看Greenplum 整个系统状态的。 通常,我们执行 gpstate 命令会获得如下信息,这些信息包裹当前有多少个段数据库在运行,多少个段数据挂掉了,如果存在数据库挂掉了,这就需要我们注意解决问题了,因为挂点的点很容易引起计算倾斜等问题。
执行 gpstate -Q 可以获取在 master 节点的 system catalog 中有多少个段数据库 DOWN (宕机了)。
如果想获得更详细的信息需要执行的命令为 gpstate -s

gpcheckperf

gpcheckperf 时用用来检测硬件的性能的,所有的节点。可以用来确定硬件故障,它的性能检查涉及到如下几条:

  1. 磁盘 I/O检测 -- 使用的是 linux 系统命令 dd 读写大的日志文件,来获得磁盘的性能。 他返回结果为 读写 MB/sec
  2. 内存带宽测试 -- 是使用的是 STREAM benchmark 来测试,其单位为 MB/sec

    计算公式为 带宽=内存核心频率×内存总线位数×倍增系数
  3. 网络性能测试 -- 运行的是 gpnetbench 网络测试的 benchmark (可以选择为 netperf) 来测试集群的网络性能。 这个benchmark 运行在三种模式下,分别是 并行对测试 (-r N), 串口对测试 ( -r n), 全矩阵测试 ( -r M)。这里会获得 最小 最大 平均 和 中值 的转换率 单位是 MB/sec

为了使用 gpcheckperf 获得有用的数据, 数据库系统必须 停机 才可以。如果不停机的话,很多获得数据根本不可靠。
使用 gpcheckperf 要求在测试的主机之间建立可靠的主机设置机制。他将会调用 gpsshgpscp 命令, 所以必须确保这些命令完全在你的系统 PATH 中。 可以使用如下命令检查是否可以使用 ( -h host1 -h host2) 等。或者使用 (-f host_file) 这是一个 text 文件。里面的内容就是各个主机名。

通常情况下, gpcheckperf 运行的测试为 I/O 测试, 内存测试, 串口测试 网络测试。 在磁盘 I/O 测试的时候,我们需要的是 使用 -d 参数来选择具体的系统上的文件路径。 如下例子


$gpcheckperf -f subnet_1_hosts -d /data1 -d /data2 -r ds

其中这上面的 -r 参数是用来选择运行在 : 磁盘I/O (d), 内存带宽 (s) , 网络并行对 (N), 网络串行对 (n), 网络全矩阵测试 (M).
这有网络测试模式可以选择执不执行 . 具体参见 ‘《Greenplum Database Reference Guide》

## 监控操作系统
通常使用如下命令来监控操作系统

  1. iostat 允许可以监控每个段节点磁盘的使用情况
  2. top 动态视图的形式显示操作系统的进程情况
  3. vmstate 展示内存使用情况

通常是使用 gpssh 切换到不同的节点上去查看检测信息

最佳实践

  1. 参看 《Greenplum Database Administrator Guide》 完成监控任务的部署和实现。
  2. 在安装Greenplum 数据库之前先执行一次 gpfcheckperf , 保存输出结果,此后不定期的执行测试
  3. 使用你能找到的所有工具来了解在不同负载的情况下,系统的状态
  4. 检查任何异常事件以确保原因
  5. 通过定期运行 explain 命令来获得查询的解释计划, 监控系统上的查询活动, 以确保运行最佳。
  6. 审视执行计划,以确保是否使用了索引,并按照预期完成分区的选择

附加信息

gpcheckperf 参看手册 《Greenplum Database Utility Guide》
维护系统的搭建 参考手册 《Greenplum Database Administrator Guide》
Sustainable Memory Bandwidth in Current High Performance Computers. John D. McCalpin. Oct 12, 1995.http://www.cs.virginia.edu/~mccalpin/papers/bandwidth/bandwidth.html
www.netperf.org to use netperf, netperf must be installed on each host you test. See gpcheckperf reference for more information.

目录
相关文章
|
3月前
|
运维 监控 关系型数据库
PostgreSQL运维核心技能之掌握并行查询
PostgreSQL运维核心技能之掌握并行查询
87 9
|
3月前
|
缓存 运维 监控
打造稳定高效的数据引擎:数据库服务器运维最佳实践全解析
打造稳定高效的数据引擎:数据库服务器运维最佳实践全解析
|
3月前
|
运维 关系型数据库 MySQL
"MySQL运维精髓:深入解析数据库及表的高效创建、管理、优化与备份恢复策略"
【8月更文挑战第9天】MySQL是最流行的开源数据库之一,其运维对数据安全与性能至关重要。本文通过最佳实践介绍数据库及表的创建、管理与优化,包括示例代码。涵盖创建/删除数据库、表结构定义/调整、索引优化和查询分析,以及数据备份与恢复等关键操作,助您高效管理MySQL,确保数据完整性和系统稳定运行。
321 0
|
6月前
|
SQL 运维 监控
如何做数据库自动化运维
【5月更文挑战第5天】IT运维中的DBA面临诸多挑战,包括库表设计规范落地困难、SQL审核繁琐、数据提取需求频繁、资源管理和监控复杂。为解决这些问题,引入数据库自动化运维平台至关重要。该平台实现SQL审核自动化,确保语句规范和安全,支持数据提取的自助服务,强化元数据管理,提供一键资源部署,并进行全面的数据库监控。这样,DBA的角色转变为平台管理者,提高效率,规范化流程,减轻工作负担。
|
存储 缓存 Prometheus
统一观测丨使用 Prometheus 监控 Cassandra 数据库最佳实践
统一观测丨使用 Prometheus 监控 Cassandra 数据库最佳实践
|
缓存 负载均衡 监控
聊聊深入挖掘业务需求,可0-1设计高可用、高并发、高伸缩的分布式项目架构,环境搭建、自动化部署、服务器环境线上排查、性能评估
聊聊深入挖掘业务需求,可0-1设计高可用、高并发、高伸缩的分布式项目架构,环境搭建、自动化部署、服务器环境线上排查、性能评估
101 0
|
存储 JSON 自然语言处理
【大数据开发运维解决方案】ElasticSearc写入查询性能优化总结
ES(ElasticSearch) 我们需要根据公司要求,进行偏向性的优化。1、bulk批量写入2、多线程写入3、修改索引刷新时间4、修改merge参数以及线程数6、index buffer7、磁盘间的任务均衡8、Mapping优化8.1、自动生成docID(避免ES对自定义ID验证的操作) 8.2、调整字段Mapping 8.3、调整_source字段 8.4、禁用_all 8.5、禁用Norms 8.6、index_options设置 9、优化存储
【大数据开发运维解决方案】ElasticSearc写入查询性能优化总结
|
SQL 运维 大数据
【大数据开发运维解决方案】GoldenGate replicat进程延迟分析步骤
GoldenGate几乎支持市面上流行的所有主流的操作系统平台和数据库。 博主所在单位目前使用Oracle GoldenGate将各个业务生产库汇聚到一起做数仓***实时ODS平台***, 我们采用异构同步,即源端同步过来的表在ODS新增了一个etltime字段,用来记录当前数据变更时间。 为了记录数据的事务变更历史记录,我们将数据的变更记录映射同步到一张tab_name_audit表中。为了防止源端业务库误删数据,我们将被删除的数据映射同步到一张tab_name_his表中。原表映射到ods后还是正常的映射同步dml操作。
【大数据开发运维解决方案】GoldenGate replicat进程延迟分析步骤
|
存储 Kubernetes 数据可视化
9款日志管理工具大比拼,选型必备!
9款日志管理工具大比拼,选型必备!
|
SQL 运维 监控
高性能数据访问中间件 OBProxy(三):问题排查和服务运维
1 引言 上篇文章我们讲解了 OBProxy 的安装部署,在实践时,大家还可能因为机器环境、操作顺序不对等问题导致安装部署失败,这时候可以到OceanBase的开源社区 问答板块提问,会有专业的工程师回答你的问题。完成了 OBProxy 的安装部署后,就可以使用 OBProxy 访问 OceanBase 数据库了。 如果刚开始使用 OBProxy ,排查问题和运维 OBProxy 是大家将要遇到的
254 2
高性能数据访问中间件 OBProxy(三):问题排查和服务运维