2017-02-28 5 views
0

In Bucketing, in welcher Phase im Hive werden Bucket-Dateien erstellt?Wenn Bucket-Dateien im Hive erstellt werden

create table emp(id int, name string, country string) 
clustered by(country) 
INTO 2 BUCKETS 
row format delimited 
fields terminated by ',' 
stored as textfile ; 

Wenn ich 20 Buckets und nur 4 Zeilen habe, wie viele Dateien werden erstellt?

Antwort

0

Buckets werden erstellt, wenn Sie Ihre Tabelle erstellen. Sie befinden sich in Ihrem Hive-Warehouse als eigenständige Dateien in Ihrem Tabellenkatalog. Sobald Sie einen neuen Datensatz in Ihre Bucket-Tabelle eingefügt haben, berechnet Hive den Hash des Wertes der Bucket-Spalte und erhält den Zeiger der Bucket-Datei. Für Ihre 20 Eimer werden Sie 20 leere Dateien auf dem Start, aber der genaue Ort Ihrer 4 Aufzeichnungen würde auf dem Ergebnis der Hash-Funktion auf dem heißen Stein Spalt Wert abhängig:

**record.country.value => hashfunction(record.country.value) = bucketNumber** 

Sie können es reproduzieren, indem Sie die folgenden Schritte beschrieben in Bucket-Tabelle Abschnitt in diesem article

Verwandte Themen