Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 调整Teradata(分组)_Sql_Database_Performance_Teradata - Fatal编程技术网

Sql 调整Teradata(分组)

Sql 调整Teradata(分组),sql,database,performance,teradata,Sql,Database,Performance,Teradata,我正在尝试调整Teradata中的查询。它相当大,所以我在下面概述一下: SEL column_1, column_2......column_20, sum(column_21), sum(column_22),.....sum(column_30) from table_a a inner join table_b b on conditions... group by column_1, ...,column_20; 我正在尝试调整这个。它在小组中遇到了表演障碍。表A和表B是巨大的(超过

我正在尝试调整Teradata中的查询。它相当大,所以我在下面概述一下:

SEL column_1, column_2......column_20, sum(column_21), sum(column_22),.....sum(column_30)
from table_a a
inner join table_b b
on conditions...
group by column_1, ...,column_20;
我正在尝试调整这个。它在小组中遇到了表演障碍。表A和表B是巨大的(超过20亿条记录)

我尝试了以下选项,但都没有提高性能:

1) 收集所有必要的统计数据

2) 在表a和B中的列上创建JI

3) 在表A和B中的列和总和上创建AJI

4) 为GROUPBY中涉及的列在每个表上创建SI


有人能提出进一步的建议吗?

如果没有以下方面的详细信息,很难说什么:

  • 查询(它们总是相同的,还是在哪里总是不同的)
  • A和B的结构(主索引/分区)
  • 执行计划
  • 执行日志(查看瓶颈在哪里)
但如果我们假设每次创建和使用AJI时,这个查询都是完全相同的,那么我能想到的唯一改进就是尝试调整JI的主索引,这样它在amp中的分布就会尽可能均匀


(顺便说一句,如果使用AJI,那么第2步和第4步将浪费您的时间和数据库空间)

您如何知道问题在分组中,而不是在连接或求和()中?您可以发布解释计划吗?您知道解释查询的哪一步实际上是挂起的吗?