У меня есть заголовок объекта таблицы, и я хочу изменить его и добавить несколько столбцов. Я хочу, чтобы новые добавленные столбцы имели значение по умолчанию как null. Моя таблица уже загружена данными за 14 лет. Поскольку это разделенная таблица за 2002-2014 годы, по умолчанию значение этого нового добавленного столбца должно быть нулевым в таблице.
create table facility_HEADER
(
A string,
B INT,
C INT
)partitioned by (year int comment 'Date Year Incurred')
STORED AS PARQUET
Команда изменения таблицы
ALTER TABLE facility_HEADER add columns (MSCLMID Bigint,NPI STRING,UNITS decimal(10,2));
Когда я помещаю описание в таблицу, я вижу, что столбцы добавлены в конце. Когда я помещаю select * из любого раздела, он дает ошибку.
Ошибка с исключением java.io.IOException: org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.ClassCastException: org.apache.hadoop.io.IntWritable нельзя преобразовать в org.apache.hadoop.io. LongWritable
В моей таблице есть данные за 14 лет, и я не хочу, чтобы это было сделано путем добавления null в предложение select и указания псевдонимов.
Я пробовал то, что было здесь и из здесь.
Может ли кто-нибудь помочь мне в том, что на самом деле произошло с моей таблицей. Я потерял данные за 14 лет на ходу.