Почему количество картографов так сильно различается в улье для перезаписи вставки

#hive #apache-tez

#улей #apache-tez

Вопрос:

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

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

  1. выберите t.id , t.id_type из t limit 20;

—> Создание 10 задач отображения.

  1. вставить перезаписать таблицу t2 выберите t.id как идентификатор, t.id_type как id_type из t limit 20;

—> Генерация 1100 задач отображения.

Ответ №1:

Используйте РАСШИРЕННУЮ команду EXPLAIN, она предоставит информацию о том, что именно выполняется, и покажет считываемые файлы. Сравните вывод команды для обоих запросов. Вероятно, он читает разные файлы или делает что-то еще.

 EXPLAIN EXTENDED select t.id, t.id_type from t limit 20;
  

против

 EXPLAIN EXTENDED insert overwrite table t2 select t.id as id, t.id_type as id_type from t limit 20;