2016-11-08 7 views
0

theoretische Frage,Impala GROUP BY partitioniert Spalte

Lets sagen, ich habe Tabelle mit vier Spalten: A, B, C, D. Werte von A und D sind gleich, Tabelle ist durch Spalte A partitioniert.

Leistung weise würde es einen Unterschied machen, wenn ich diese Abfrage SELECT SUM (B) GROUP BY A; oder diese: SELECT SUM (B) GROUP BY D;

In anderen Worten frage ich, gibt es irgendeine Leistungssteigerung durch die Verwendung der GROUP BY auf partitionierte Spalte?

Dank

Antwort

0

Normalerweise gibt es Performance-Gewinne, wenn Sie die partitionierten Spalten auf einem Filter verwenden (WHERE-Klausel in der SQL)

da beide Abfragen ein „Full-Table-Scan“ verwenden Sie es nicht viel haben sollte der Unterschied zwischen beiden Abfragen. Sie können einen Unterschied sehen, wenn es viele Partitionen gibt (etwa 50 KB), was die Abfrageleistung tendenziell verschlechtert, aber das ist normalerweise nicht der Fall.