论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
数据库
›
分布式数据库
›
GaussDB数据库中SQL诊断解析之设置SQL限流
GaussDB数据库中SQL诊断解析之设置SQL限流
乌市泽哥
金牌会员
|
2024-12-21 18:46:32
|
显示全部楼层
|
阅读模式
楼主
主题
893
|
帖子
893
|
积分
2679
设置SQL限流
GaussDB提供SQL限流功能,当存在异常SQL(如存在不优索引)、SQL并发量上升时,通过SQL限流功能控制异常SQL的访问量或者并发量,保障服务的可用性。
条件条件
登录账号需要具备授权项“gaussdb:instance:listFlowlimit”、“gaussdb:instance:flowlimitAddOrUpdate”、“gaussdb:instance:createFlowLimit”、“gaussdb:instance:updateFlowLimit”、“gaussdb:instance:deleteFlowLimit”、“gaussdb:instance:getFlowLimitInfo”、“gaussdb:instance:getFlowLimitTemplate”、“gaussdb:instance:listFlowLimitInfo”、"gaussdb:instance:syncFlowLimit"和“gaussdb:instance:flowlimitDelete”。
约束限制
GaussDB实例的数据库引擎版本需要大于即是V2.0-8.0.1,内核版本大于即是505.0.0。
分布式不支持自治限流任务。
分布式实例不支持SQLID类型的限流。
不支持对系统级别用户(例如root等)进行SQL限流。
当前不支持批量删除SQL限流任务。
每个实例最多支持1000条限流任务。
对于关键词限流任务,一个关键词中包含英文逗号视作以逗号分割的两个关键词,作用时不区分关键词前后顺序。
用户通过系统级别用户(例如root等)进行背景SQL限流的增编削,会导致现实限流任务情况与前端不一致。
限流规则匹配会斲丧CPU性能,建议同一个实例里不要创建大量限流规则。
新添加SQL限流规则之前已经开始执行的SQL语句不会被计入并发数。
容灾场景下,主实例上的限流规则会自动同步到备实例,容灾升主后暂时不支持限流规则的增编削查,切回原实例后可继续管理限流任务。
备份恢复到新实例、容灾场景切回原实例,如果出现数据丢失的情况,请参考故障处理。
实例异常和规格变更期间允许创建、修改、查看限流规则,但可能会失败,如果出现失败或异常可
以通过删除限流规则处理,删除前请确保数据库正常。
驱动创建数据库连接涉及的SQL语句(如:select setting from pg_settings where name=‘delimiter_name’)被限流会导致无法新建连接,不允许该类SQL的限流操作。
实例节点在创建、重启过程中(比如扩副本、扩分片),可能会因为节点无法连接导致SQL限流任务详情查询异常。
灰度升级期间或容灾升主后双主场景下原备实例的限流创建、修改、删除限流规则会触发任务流校验,返回“当前实例正在有其他操作”的错误信息,而限流任务不停显示创建中、修改中或删除中,可
以通过单击“数据同步”恢复数据的正常。
内核如果抛出报错信息,如ERROR: The workload rule takes effect and this request will be cancelled. rule_id: x, rule_name: “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”,此中rule_name对应Console控制台“限流任务ID”,对应审计日记task id。
当多个限流任务规则同时生效于同一条SQL语句,存在生效优先级:
并发数/最大活泼会话数的数量越小优先级越高。
并发数/最大活泼会话数类似时,优先级:自治限流任务>SQLID类型>关键词类型。
并发数/最大活泼会话数类似且限流类型一致时,后创建的限流任务优先拦截。
制止创建同名表。如果差别Database或差别SCHEMA下存在同名表,创建该表相干的SQLID限流任务时,限流规则可能不生效。
创建限流任务
登录管理控制台。
单击管理控制台左上角的,选择地区和项目。
在页面左上角单击,选择“数据库 > 云数据库 GaussDB”,进入云数据库 GaussDB信息页面。
在“实例管理”页面,选择指定的实例,单击实例的名称,进入实例详情页面。
选择“诊断优化 > SQL诊断 > SQL限流”。
选择“SQL限流任务”或“自治限流任务”,单击“创建任务”,填写限流信息,具体参数填写请参考表1。
创建SQL限流任务
图1 创建SQL限流任务
数据同步
登录管理控制台。
单击管理控制台左上角的,选择地区和项目。
在页面左上角单击,选择“数据库 > 云数据库 GaussDB”,进入云数据库 GaussDB信息页面。
在“实例管理”页面,选择指定的实例,单击实例的名称,进入实例详情页面。
选择“诊断优化 > SQL诊断 > SQL限流”。
单击“数据同步”。
弹框中单击“确定”可以进行备份原实例后的数据同步。
图5 数据同步
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
乌市泽哥
金牌会员
这个人很懒什么都没写!
楼主热帖
是什么让.NET7的Min和Max方法性能暴增 ...
@RequestParam,@PathVariable两个注解 ...
聚焦企业开放OpenAPI痛难点,华为云API ...
想入行SAP咨询,最具性价比的方式 ...
SqlServer远程连接
7 行代码搞崩溃 B 站,原因令人唏嘘! ...
活动 | 塑造软件新生态 赋能发展新变革 ...
2019 第十届蓝桥杯大赛软件赛决赛,国 ...
CentOS7 安装 Redis 7.0.2
[WPF] 使用 HandyControl 的 CirclePan ...
标签云
挺好的
服务器
浏览过的版块
MES
快速回复
返回顶部
返回列表