Вставить в таблицу Impala против записи в HDFS
У меня около 10 тысяч записей (хранится как ArrayList в Java). Я хочу вставить эти записи в Impala.
Должен ли я использовать insert into table partition values
напрямую вставить импале. (Я не уверен, сколько записей можно вставить в один оператор SQL).
Или я должен записать эти записи в HDFS тогда alter impala
Таблица?
Какой способ предпочтительнее? Или есть другие решения?
А также, если я делаю это каждые 5 минут, как я могу избежать так много маленьких файлов в одном разделе (разделены по часам)? Это даст 12 маленьких файлов в каждом разделе, так что это повлияет на скорость запроса?
1 ответ
Решение
Лучшее, что вы можете сделать, это сделать:
- Создайте свою таблицу в Impala как внешнюю таблицу, связанную с маршрутом HDFS.
- Делать вставки напрямую в HDFS, если возможно ежедневно, в час, наверное, мало
- Выполните недействительную команду metada $ TABLE_NAME, чтобы данные были видны
Я надеюсь, что ответ служит вам
С уважением!