К сожалению нет. Мы прекратили использовать Hive, но вместо этого использовали таблицу HBase, к которой можно быстро получить доступ через первичный индекс, а также добавили слой Phoenix для удобства SQL, создав представления для существующих таблиц.
я есть одна, но огромная таблица в улье, которая почти всегда будет запрашиваться с помощью столбца первичного ключа (скажем,employee_id
). Таблица будет очень большой, миллионы строк вставляются каждый день, и я хочу быстро выполнять запросы, используя разделы над этим полем.Я следил за этим постом и я знаю, что разбиение подходит только для полей с низким количеством элементов, так как я могу достичь своей цели быстрого запроса сemployee_id
столбец?
Я понимаю, что столбец идентификатора с очень большим количеством элементов должен использоваться в качестве корзины, но это не помогает мне с производительностью запросов по одной таблице, не так ли?
Я думаю, что если бы я мог использовать что-то вродеhash(employee_id)
как разделы, это очень помогло бы мне. Это возможно? Я не видел такого в документах об улье.
Подводя итог, я хочу получить быстрый результат запроса для:
select * from employee where employee_id=XXX
при условии,employee
таблица содержит миллиарды записей с колонкой первичного ключаemployee_id
где классическое разбиение по годам, месяцам, дням и т. д. не помогает.
Заранее спасибо,