Когда использовать сортировку по предложению в кусте QL - PullRequest
1 голос
/ 22 апреля 2019

Я проверил разницу между сортировкой по сравнению с упорядочением по выражению в улье.Упорядочить по используется, когда требуется общее упорядочение, а сортировка по используется, когда имеется несколько редукторов и вход для редуктора, который должен быть в отсортированном порядке.Следовательно, сортировка по может привести к общему порядку, если есть только один редуктор, и частичному упорядочению, если есть несколько редукторов.

Ref- https://cwiki.apache.org/confluence/display/Hive/LanguageManual+SortBy

* 1005.по выражению в hiveQL?

1 Ответ

0 голосов
/ 22 апреля 2019

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

Случай 1- Заказ по

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

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

Случай 2 - сортировка по

И если данные в данном поле не требуются в определенном порядке, как уникально сгенерированные буквенно-цифровые поля, такие как Customer_id

В этом случае логически окончательные данные не обязательно должны присутствовать в определенном порядке на основе customer_id, поскольку он является уникальным ключом и в основном используется для объединения, следовательно, в то время как мы храним данные для деталей транзакций клиента в каждом разделе, он должен быть представлен в отсортированном / упорядоченном виде, чтобы ускорить объединение.Итак, в этом случае мы используем сортировку по (customer_id) при сохранении окончательного результата.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...