String vs Varchar Hive Query Performance - PullRequest
       14

String vs Varchar Hive Query Performance

0 голосов
/ 21 февраля 2019

У меня есть эта таблица с 5 записями, около 25 столбцов, и большинство из них имеют строковый тип.Когда я делаю запрос, поиск результатов длится около 47 секунд. У меня есть 2 ГБ места для каждого столбца String (потому что я не знаю, как уменьшить это значение) , максимальная длина записи составляет всего около 32 тыс. Символов для одного столбца, остальные имеют гораздо больше, чемто (7,18,50).

Чтобы повысить производительность запросов, Я скопировал эту таблицу, но вместо String я использовал Varchar (1000) и varchar (50000) для этой длинной записи, упомянутой выше, во всех столбцах STring.Я думал, что это даст мне более быстрый выбор, но это займет почти вдвое больше времени.

Как я понимаю, я использую намного меньше места, используя varchar, но почему-то этого не происходит. При тех же условиях я должен получить лучший ответ, используя varchar вместо строки?

1 Ответ

0 голосов
/ 21 февраля 2019

Не должно быть никакой разницы в производительности между string и varchar, но лучший вариант используется как строка, varchar также хранится внутри как строка.

Вот некоторые отличные нити по сравнению деталейдля обоих:

https://community.hortonworks.com/questions/48260/hive-string-vs-varchar-performance.html

Hive - Varchar vs String, есть ли преимущество, если формат хранения соответствует формату файла Parquet

...