Kann ich die Hive-Partitionsspalten, die den in meinen Quellentabellen (Teradata) vorhandenen Partitionsspalten ähneln, direkt betrachten? Oder muss ich irgendwelche anderen Parameter berücksichtigen, um die Hive-Partitionierungssäulen zu bestimmen? Bitte helfen Sie.Kann ich die Hive-Partitionsspalten, die den in Quellen (Teradata) -Tabellen vorhandenen Partitionsspalten ähneln, direkt betrachten?
Antwort
Dies ist keine Best Practice. Wenn Sie auf diese Weise Daten erstellen, findet eine Person, die versucht, direkt auf HDFS-Daten zuzugreifen, keine Partitionsspalten in jeder Partition. Beispiel: Teradata-Tabelle wird durch date
Spalte partitioniert. Wenn die Hive-Tabelle ebenfalls durch date
partitioniert ist, dann wird die HDFS-Partition sagen, 2016-08-06 wird kein Datumsfeld haben. Um die Endbenutzerpartition einfach durch eine Dummy-Spalte zu vereinfachen, sagen wir date_d
, die genau dieselben Werte wie die Datumsspalte hat.
Abstractly, Partitionierung in Teradata und Hive sind similar.To beginnen mit Ihnen wahrscheinlich die gleichen Spalten wie in Ihrer Quelle Partition die Tabellen verwenden können.
Wenn Sie Datengröße in jeder einzelnen Partition sehr groß ist, dann betrachten es Partitionierung weiter, würde vor allem die Performance Multi-Level- Partitionierung zur Verbesserung der von der Anzahl der Filter hängen Sie auf Ihre Fragen gelten.