У меня есть таблица, которая отслеживает действия пользователя на сайте с высокой пропускной способностью, который определяется как (нерелевантные поля и т. Д. Удалены):
CREATE EXTERNAL TABLE `actions`(
`uuid` string COMMENT 'from deserializer',
`action` string COMMENT 'from deserializer',
`user` struct<id:int,username:string,country:string,created_at:string> COMMENT 'from deserializer')
PARTITIONED BY (
`ingestdatetime` string)
ROW FORMAT SERDE
'org.openx.data.jsonserde.JsonSerDe'
STORED AS INPUTFORMAT
'org.apache.hadoop.mapred.TextInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION
's3://<path_to_bucket>'
TBLPROPERTIES (
'transient_lastDdlTime'='1506104792')
И хочу добавить еще несколько полей к пользовательским данным (например, level: int , чтобы отслеживать, какой уровень был у пользователя, когда он выполнял действие).
Можно ли изменить определение таблицы, чтобы включить эти новые свойства, и если да, то так ли этоможно настроить значения по умолчанию, если их нет в файлах исходных данных?