Я пишу, перезаписываю и удаляю файлы в HDFS. Я пишу как секционированные, так и несекционированные наборы данных. Таблицы Impala создаются из этих файлов, и я хотел бы убедиться, что то, что находится в базовых файлах, должным образом отражается в таблицах impala.
Отказ от ответственности: мне известно об этой документации и все еще не понимаю, как правильно использовать.
Пример:
Я знаю, что после того, как я запишу секционированный набор данных в HDFS и хочу создать таблицу, мне нужно сделать что-то вроде:
CREATE TABLE my_schema.my_table
LIKE PARQUET 'path_to_parquet_file'
partitioned by (partitioning_cols)
STORED AS PARQUET
LOCATION 'path_to_parent_directory';
ALTER TABLE my_schema.my_table RECOVER PARTITIONS;
- Что мне нужно делать при удалении некоторых разделов?
- Что мне нужно делать, когда я изменяю некоторые файлы в одном или нескольких разделах?
- Что мне нужно делать, когда я добавляю новые разделы?
- В каких именно ситуациях мне нужно
refresh
, invalidate medatada
или recover partitions
? - Есть ли изменение поведения, если у меня нет секционированного набора данных?