Сохраняет ли Hive порядок файлов при выборе данных - PullRequest
3 голосов
/ 20 июня 2019

Если я сделаю select * from table1;, в котором данные для заказа будут извлечены

Порядок файлов или случайный порядок

1 Ответ

3 голосов
/ 20 июня 2019

Без ORDER BY заказ не гарантируется.

Данные читаются параллельно многими процессами (мапперами), после вычисления разбиений каждый процесс начинает чтение некоторого фрагмента файла или нескольких файлов, в зависимости от вычисленных разбиений.

Все параллельные процессы могут обрабатывать разные объемы данных и работать на разных узлах, нагрузка не всегда одинакова, поэтому они начинают возвращать строки и заканчивать в разное время, в зависимости от слишком многих факторов, таких как нагрузка на узел, сеть загрузка, объем данных на процесс и т. д. и т. д.

Сняв все эти факторы, вы сможете повысить точность прогнозирования ордера. Скажем, последовательное чтение из одного потока может возвращать строки в том же порядке, что и в файле. Но это не то, как работает база данных.

Также согласно реляционной теории Кодда, порядок столбцов и строк не имеет значения .

...