我们知道Trafodion使用"update statistics"语句来进行表的统计信息的更新,关于"update statistics"的语法,可参考Trafodion官网:http://trafodion.incubator.apache.org/docs/sql_reference/index.html#update_statistics_statement
不过上述SQL手册只是介绍更新统计信息的语法情况,我们如何知道"update statistics"背后数据库所做的一切事情呢?
Trafodion提供"update statistics log on"命令帮助完成此事情,"update statistics log on"用于保存session中所有的update statistics语句的后台执行情况保存到ULOG中,具体使用方法如下,
sqlci
cqd ustat_log './ustat_0807.log';
update statistics log on;
update statistics for table table_name on every column sample;
exit
上述语句执行完成,可以在运行"update statistics"所在的节点的cdl(即/var/log/trafodion)下面找到生成的ULOG文件,举例如下,
[trafodion@n12 trafodion]$ ll
total 792
-rw-rw-r-- 1 trafodion trafodion 809815 Aug 3 10:09 ULOG.tdm_arkcmp.1.n12.41562.log
[trafodion@n12 sqllogs]$ pwd
/home/trafodion/sqllogs
上述ULOG.tdm_arkcmp.1.n12.41562.log则保存了"update statistics"语句后台执行的每个步骤,方便定位"update statistics"过程中任何出现的问题。