当前位置: 首页 > news >正文

Greenplum -- 资源队列管理

前言

在Greenplum中,每个用户都会对应到资源队列中,资源队列张很多场景有很好应用,例如,很多人共用数据库,需要对不同的人开发不通的队列,控制资源,默认不指定则对应到pg_default资源队列
Greenplum -- 资源队列管理
对添加进来的sql,并不是所有的都会被资源队列所限制,默认情况就:
select、select into、create table name as select、declare cursor会被限制在资源队列中,如果设置参数resource_select_only = off(在postgresql.conf文件),那么insert、update、delete 也是会被限制在资源队列中

一、资源队列常用方法

1.1、查看资源队列情况:

testdb=# select from pg_resqueue_attributes;
Greenplum -- 资源队列管理
active_statements:同时可执行的sql个数
max_cost:每条sql最大消耗的cost数量,也就是explain查看的时候可以看到的cost
min_cost:最少cost数量,如果sql需要的cost小与这个,无论什么情况都会马上执行
cost_over_commit:true时,在资源队列没有其他sql运行时,超过max_cost的sql也会被执行,false时,只要超过了max_cost就直接报错
priority:CPU优先级,分为min|low|medium|high|max
memory_limit:分两种情况,一种是只设置了memory_limit和active_queue,那么每个sql最大占用内存为: memory_limit / active_queue;另外一种情况是设置了max_cost,那么每个sql最大占用内存为:memory_limit
(sql_cost / max_cost) sql_cost表示当前sql所需要的cost

1.2、查看整个系统当前正在执行sql,可以根据

testdb=# SELECT * FROM pg_stat_activity;

1.3、查看资源队列中等待的语句:

testdb=# SELECT * FROM gp_toolkit.gp_locks_on_resqueue WHERE lorwaiting='true';

1.4、查看用户与资源队列的对应关系

testdb=# SELECT rolname, rsqname FROM pg_roles, gp_toolkit.gp_resqueue_status WHERE pg_roles.rolresqueue=gp_toolkit.gp_resqueue_status.queueid;

1.5、查看当前执行的sql与对应资源队列关系

testdb=# select * from gp_toolkit.gp_resq_priority_statement ;

1.6、新建资源队列:

testdb=# create resource queue myqueue with (priority=low, memory_limit=1024000, active_statements=10);

1.7、修改资源队列

testdb=# alter resource queue myqueue with (memory_limit=1000000);

转载于:https://blog.51cto.com/13126942/2345067

相关文章:

  • C++范畴下测试数据类型的范围整理
  • iOS UIWebView截获html并修改便签内容
  • MySQL报错解决:ERROR! The server quit without updating
  • Jsp forward plugin的操作和方法
  • SQL手工注入漏洞测试(Sql Server数据库)
  • Windows Core OS 包含了开源组件
  • 快过年了,我给小明制定了一份价值60万的Java学习计划
  • windows程序设计简介
  • 深入理解javascript原型和闭包(1)——一切都是对象
  • ZStack--级联框架
  • 关于安卓通过webservice访问数据库问题
  • 从上万监控到实时示警 浙江绍兴餐饮迎智能“食代”
  • win8.1 virtualbox 安装centos7注意事项
  • Java虚拟机在执行程序时内存划分的区域都有哪些?
  • 常见MQTT服务器搭建与试用
  • 「前端」从UglifyJSPlugin强制开启css压缩探究webpack插件运行机制
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • 2019年如何成为全栈工程师?
  • angular2开源库收集
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • Debian下无root权限使用Python访问Oracle
  • express.js的介绍及使用
  • HTTP请求重发
  • Java 内存分配及垃圾回收机制初探
  • PHP变量
  • 那些被忽略的 JavaScript 数组方法细节
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (0)Nginx 功能特性
  • (33)STM32——485实验笔记
  • (LeetCode C++)盛最多水的容器
  • (十三)Java springcloud B2B2C o2o多用户商城 springcloud架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)...
  • (一)ClickHouse 中的 `MaterializedMySQL` 数据库引擎的使用方法、设置、特性和限制。
  • (转)c++ std::pair 与 std::make
  • (转)清华学霸演讲稿:永远不要说你已经尽力了
  • (转)用.Net的File控件上传文件的解决方案
  • (转)真正的中国天气api接口xml,json(求加精) ...
  • .NET MVC、 WebAPI、 WebService【ws】、NVVM、WCF、Remoting
  • .NET 指南:抽象化实现的基类
  • .net 重复调用webservice_Java RMI 远程调用详解,优劣势说明
  • .net反编译工具
  • .NET设计模式(11):组合模式(Composite Pattern)
  • .NET中的十进制浮点类型,徐汇区网站设计
  • .Net转Java自学之路—SpringMVC框架篇六(异常处理)
  • .Net转Java自学之路—基础巩固篇十三(集合)
  • @ComponentScan比较
  • @RestControllerAdvice异常统一处理类失效原因
  • @vue/cli脚手架
  • [2013][note]通过石墨烯调谐用于开关、传感的动态可重构Fano超——
  • [AIGC] 如何建立和优化你的工作流?
  • [Android] 240204批量生成联系人,短信,通话记录的APK
  • [Android]常见的数据传递方式
  • [boost]使用boost::function和boost::bind产生的down机一例
  • [BUUCTF 2018]Online Tool
  • [CareerCup][Google Interview] 实现一个具有get_min的Queue
  • [Django 0-1] Core.Checks 模块