你好,我们tidb 每天 update操作(2小时、半小时、临时加的更新操作),像这种有啥好的建议吗
你好,
可以在详细描述下你的问题
每天有定时任务对字段数据更新,还有的做报告要的实时数据也会update表,造成现在锁表,写入很慢,
你好,
此问题需要结合业务去处理下,这边可以提供下基本的思路看是否可以有帮助
- update 批次可以维持在 100 - 500 之间
- 设置 LOW_PRIORITY 将 update 执行等级降低,语法参照 mysql
- 对于实时报表建议进行业务评估,是否需要放在线上业务系统中进行。可以将其数据放在临时表中处理,与线上业务数据分开
类似这种,修改当前语句的形式即可,全部设置 LOW_PRIORITY ,效果不大。
update LOW_PRIORITY tbl set a = 1 where id = 1;
建议仅仅限制定时的 update 语句和报表的 sql。避免出现线上业务 sql 执行靠后
insert HIGH_PRIORITY INTO xpost , 这种 SELECT和INSERT高于update像这种可以吗
根据当前业务情况,不建议对线上的 sql 进行改动,对跑批或者定时任务的 sql 改动是比较符合规范的
好的,谢谢