磁盘空间
介绍与磁盘空间相关的参数,用于限制临时文件所占用的磁盘空间。
sql_use_spacelimit
参数说明:限制单个SQL在单个数据库节点上,触发写盘操作时,所有类型写盘文件的总空间大小,管控的空间包括普通表、临时表以及中间结果集写盘占用的空间。该参数可在PDB级别设置。
参数类型:整型
参数单位:kB
取值范围:-1~2147483647,其中-1表示没有限制。
默认值:-1。在PDB场景内,若未设置该参数,则继承来自全局的设置。
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。取值如果要带单位,必须为kB、MB、GB。
设置建议:推荐使用默认值。
设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
temp_file_limit
参数说明:指定一个会话中,能用于临时文件的最大磁盘空间。比如:一个连接会话中需要进行排序或者使用外存哈希表的临时文件,以及使用游标功能占用的临时文件。该参数可在PDB级别设置。
SQL查询执行时使用的临时表空间不在此限制。
在SMP场景(设置query_dop >= 2)下,前台会话中的SQL会被拆分为若干个(个数等于query_dop参数设置的值)后台线程执行。在任意一个线程产生的临时文件达到阈值后,才会触发前台会话中的SQL报错,此时可能出现临时文件大小大于前台会话中设置的本参数值的情况(此场景下单个前台会话占用的临时文件大小峰值不会超过 temp_file_limit * query_dop)。
在磁盘使用率超过只读阈值datastorage_threshold_value_check后,该参数会被CM接管,设置为0,此时修改temp_file_limit将无法生效。磁盘使用率恢复后,CM会将该参数恢复为默认值。
参数类型:整型
参数单位:kB
取值范围:-1~2147483647,其中-1表示没有限制。
默认值:-1。在PDB场景内,若未设置该参数,则继承来自全局的设置。
设置方式:该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。取值如果要带单位,必须为kB、MB、GB。
设置建议:推荐使用默认值。
设置不当的风险与影响:如果设置过小会导致频繁的I/O操作,导致性能劣化;如果设置过大,可能会占用过多的磁盘空间。