В разделе 15 раздела "Программирование куста" приведен пример, приведенный ниже.
CREATE TABLE binary_table (num1 INT, num2 INT)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
WITH SERDEPROPERTIES ('serialization.last.column.takes.rest'='true')
STORED AS
INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat'
OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveBinaryOutputFormat';
Когда я выполняю некоторые операции SELECT для этой таблицы, Hive будет использовать TextInputFormat для чтения записей из файлов hdf.Но когда я делаю INSERT или UPDATE, Hive будет использовать BinaryOutputFormat для записи строк в hdfs.
Это странно.Что происходит, когда запрос SELECT после некоторых INSERT или UPDATE.
И у меня есть еще один вопрос, как показано ниже.
LOAD DATA LOCAL INPATH '${env:HOME}/california-employees'
OVERWRITE INTO TABLE employees
PARTITION (country = 'US', state = 'CA');
Какой формат ввода выберет для чтения из исходных файлов?