每次导入数据后,都会导致数据库查询变慢,个别查询很卡

【 使用环境 】生产环境
【 OB or 其他组件 】ob4.2.1
【问题描述】
每次数据导入后都会导致数据库查询很卡,导入的数据量在几万到百万间,导入后查询就变慢。
第二天早上来了测试后恢复正常了。
尝试手动合并了,还是会很卡。
想问下老师,这种情况如何处理那?

当天导入后查询会很慢,第二天就可以了是吗?

全量合并时会把静态数据和动态数据合并后,再写到磁盘上作为新的静态数据。在这个过程中,会把所有数据都重写一遍。

是的

这个时间需要多久?何时能恢复正常

查看合并过程

老师我们是想优化这个合并过程,尽量缩短,如何处理那?

CDB_OB_MAJOR_COMPACTION这个表里看上一次合并花了多久?查一下 GV$OB_COMPACTION_PROGRESS这个视图看下之前合并的一些过程信息,看看分区数、耗时分布和宏块重用率什么的。加快合并的手段比较少,一般直接增加合并的线程数就可以,即调大compaction_low_thread_score.

好的

理论上421有自动分区合并,导入场景应该是会触发的,你顺便再搜一下 GV$OB_TABLET_COMPACTION_HISTORY这个分区合并历史表,过滤一下type like "%MEDIUM%"看下,需要看导入那段时间的这个记录,不过这个表会淘汰,可能一段时间后是查不到的

好的