Greenplum 数据库最佳实践(9)
? ?
不要启用操作系统的大内存页 gp_vmem_protect_limit
使用 gp_vmem_protect_limit 设置段数据库(Segment)能为所有任务分配的最大内存。切勿设置此值超过系统物理内存。如果 gp_vmem_protect_limit 太大,可能造成系统内存不足,引起正常操作失败,进而造成段数据库故障。如果gp_vmem_protect_limit设置为较低的安全值,可以防止系统内存真正耗尽;打到内存上限的查询可能失败,但是避免了系统中断和Segment故障,这是所期望的行为。 gp_vmem_protect_limit 的计算公式为: (SWAP + (RAM * vm.overcommit_ratio)) * .9 / number_Segments_per_server
? runaway_detector_activation_percent
Greenplum数据库 4.3.4 引入了失控查询终止(Runaway Query Termination)机制避免内存溢出。系统参数runaway_detector_activation_percent控制内存使用达
到 gp_vmem_protect_limit的多少百分比时会终止查询,默认值是 90%。如果某个Segment使用的内存超过了gp_vmem_protect_limit的90%(或者其他设置的值),Greenplum数据库会根据内存使用情况终止那些消耗内存最多的 SQL 查询,直到低于期望的阈值。
?
statement_mem
使用 statement_mem 控制 Segment 数据库分配给单个查询的内存。如果需要更多内存完成操作,则会溢出到磁盘(溢出文件,spill files)。statement_mem 的计算公式为: (vmprotect * .9) / max_expected_concurrent_queries
statement_mem 的默认值是 125MB。例如使用这个默认值, EMC DCA V2 的一个查询在每个Segment服务器上需要1GB内存(8 Segments * 125MB)。对于需要更多内存才能执行的查询,可以设置回话级别的 statement_mem。对于并发度比较低的集群,这个设置可以较好的管理查询内存使用量。并发度高的集群也可以使用资源队列对系统运行什么任务和怎么运行提供额外的控制。
? gp_workfile_limit_files_per_query
gp_workfile_limit_files_per_query 限制一个查询可用的临时溢出文件数。当查询需要比分配给它的内存更多的内存时将创建溢出文件。当溢出文件超出限额时查询被终止。默认值是0,表示溢出文件数目没有限制,可能会用光文件系统空间。
? gp_workfile_compress_algorithm
如果有大量溢出文件,则设置gp_workfile_compress_algorithm对溢出文件压缩。压缩溢出文件也有助于避免磁盘子系统I/O操作超载。
? 配置资源队列
Greenplum 数据库的资源队列提供了强大的机制来管理集群的负载。队列可以限制同时运行的查询的数量和内存使用量。当Greenplum数据库收到查询时,将其加入到对应的资源队列,队列确定是否接受该查询以及何时执行它。
?
不要使用默认的资源队列,为所有用户都分配资源队列。每个登录用户(角色)都关联到一个资源队列;用户提交的所有查询都由相关的资源队列处理。如果没有明确关联到某个队列,则使用默认的队列 pg_default。
? 避免使用 gpadmin 角色或其他超级用户角色运行查询超级用户不受资源队列的限制,因为超级用户提交的查询始终运行,完全无视相关联的资源队列的限制。
? 使用资源队列参数ACTIVE_STATEMENTS限制某个队列的成员可以同时运行的查询的数量。
? 使用MEMORY_LIMIT参数控制队列中当前运行查询的可用内存总量。联合使用ACTIVE_STATEMENTS和MEMORY_LIMIT属性可以完全控制资源队列的活动。 队列工作机制如下:假设队列名字为sample_queue,ACTIVE_STATEMENTS 为10,MEMORY_LIMIT为 2000MB。这限制每个段数据库(Segment)的内存使用量约为2GB。如果一个服务器配置8个Segments,那么一个服务器上,sample_queue需要16GB内存。如果Segment服务器有64GB内存,则该系统不能超过4个这种类型的队列,否则会出现内存溢出。(4队列 * 16GB/队列)。
注意 STATEMENT_MEM 参数可使得某个查询比队列里其他查询分配更多的内存,然而这也会降低队列中其他查询的可用内存。
? 资源队列优先级可用于控制工作负载以获得期望的效果。具有MAX优先级的队列会阻止其他较低优先级队列的运行,直到MAX队列处理完所有查询。
? 根据负载和一天中的时间段动态调整资源队列的优先级以满足业务需求。根据时间段和系统的使用情况,典型的环境会有动态调整队列优先级的操作流。可以通过脚本实现工作流并加入到 crontab 中。
? 使用 gp_toolkit 查看资源队列使用情况,并了解队列如何工作。
第五章系统监控和维护
本章介绍日常维护最佳实践以确保Greenplum数据库的高可用性和最佳性能。
? 监控
Greenplum数据库带有一套系统监控工具。
gp_toolkit 模式包含可以查询系统表、日志和操作环境状态的视图,使用 SQL 命令可以访问这些视图。
gp_stats_missing 视图可以显示没有统计信息、需要运行 ANALYZE 的表。
关于 gpstate 和 gpcheckperf 的更多信息,请参考《Greenplum数据库工具指南》。关于 gp_toolkit 模式的更多信息,请参考《Greenplum数据库参考指南》。
gpstate
gpstate 工具显示了Greenplum数据库的系统状态,包括哪些段数据库(Segments)宕机,主服务器(Master)和Segment的配置信息(主机、数据目录等),系统使用的端口和Segments的镜像信息。
运行 gpstate -Q 列出Master系统表中标记为“宕机”的Segments。 使用 gpstate -s 显示 Greenplum 集群的详细状态信息。 gpcheckperf
gpcheckperf 工具测试给定主机的基本硬件性能。其结果可以帮助识别硬件问题。它执行下面的检查:
?
磁盘I/O测试 - 使用操作系统的 dd 命令读写一个大文件,测试磁盘的IO性能。它以每秒多少兆包括读写速度。
? ?
内存带宽测试 - 使用 STREAM 基准程序测试可持续的内存带宽。
网络性能测试 - 使用 gpnetbench 网络基准程序(也可以用 netperf)测试网络性能。测试有三种模式:并行成对测试(-r N),串行成对测试(-r n),全矩阵测试(-r M)。测试结果包括传输速率的最小值、最大值、平均数和中位数。
运行 gpcheckperf 时数据库必须停止。如果系统不停止,即使没有查询,gpcheckperf的结果也可能不精确。
gpcheckperf 需要在待测试性能的主机间建立可信无密码SSH连接。它会调
用 gpssh 和 gpscp,所以这两个命令必须在系统路径 PATH 中。可以逐个指定待测试的主机(-h host1 -h host2 ...)或者使用 -f hosts_file,其中 hosts_file 是包含待测试主机信息的文件。如果主机有多个子网,则为每个子网创建一个主机文件,以便可以测试每个子网。 默认情况下,gpcheckperf 运行磁盘I/O测试、内存测试和串行成对网络性能测试。对于磁盘测试,必须使用-d选项指定要测试的文件系统路径。下面的命令测试文件 subnet_1_hosts 中主机的磁盘和内存性能:
$ gpcheckperf -f subnet_1_hosts -d /data1 -d /data2 -r ds
-r选项指定要运行的测试:磁盘IO(d),内存带宽(s),网络并行成对测试(N),网络串行成对测试(n),网络全矩阵测试(M)。只能选择一种网络测试模式。更多信息,请参考《Greenplum数据库参考指南》。
…… 此处隐藏:2005字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [实用模板]第八章:法国“新浪潮”与“左岸派”
- [实用模板]2021年北京上半年临床医学检验技师生物
- [实用模板]SAP GUI 7.10客户端安装配置文档
- [实用模板]2001年临床执业医师资格考试综合笔试试
- [实用模板]36机场工作实用英语词汇总结
- [实用模板](一)社会保险稽核通知书
- [实用模板]安全教育主题班会材料
- [实用模板]濉溪县春季呼吸道传染病防控应急演练方
- [实用模板]长沙房地产市场周报(1.30-2.3)
- [实用模板]六年级数学上册典中点 - 图文
- [实用模板]C程序设计(红皮书)习题官方参考答案
- [实用模板]中国证监会第一届创业板发行审核委员会
- [实用模板]桥梁工程复习题
- [实用模板]2011学而思数学及答案
- [实用模板]初中病句修改专项练习
- [实用模板]监理学习知识1 - 图文
- [实用模板]小机灵杯四年级试题
- [实用模板]国贸专业毕业论文模板
- [实用模板]教育学概论考试练习题-判断题4
- [实用模板]2015届高考英语一轮复习精品资料(译林
- 00Nkmhe_市场营销学工商管理_电子商务_
- 事业单位考试法律常识
- 诚信教育实施方案
- 吉大小天鹅食品安全检测箱方案(高中低
- 房地产销售培训资料
- 高一地理必修1复习提纲
- 新概念英语第二册lesson_1_练习题
- 证券公司内部培训资料
- 小学英语时间介词专项练习
- 新世纪英语专业综合教程(第二版)第1册U
- 【新课标】浙教版最新2018年八年级数学
- 工程建设管理纲要
- 外研版 必修一Module 4 A Social Surve
- Adobe认证考试 AE复习资料
- 基于H.264AVC与AVS标准的帧内预测技术
- 《食品检验机构资质认定管理办法》(质
- ABB变频器培训课件
- (完整版)小学说明文阅读练习题及答案
- 深思洛克(SenseLock) 深思IV,深思4,深
- 弟子规全文带拼音




