如何在拼花格式中实现模式的更改

时间:2017-04-18 21:43:29

标签: hive hiveql avro parquet impala

我们面临的一个设计问题。

我有一个镶木地板格式的蜂巢外部表,其中包含以下列:

describe payments_user
col_name,data_type,comment
('amount_hold', 'int', '')
('id', 'int', '')
('transaction_id', 'string', '')
('recipient_id', 'string', '')
('year', 'string', '')
('month', 'string', '')
('day', 'string', '')
('', None, None)
('# Partition Information', None, None)
('# col_name            ', 'data_type           ', 'comment             ')
('', None, None)
('year', 'string', '')
('month', 'string', '')
('day', 'string', '')

我们每天都会获得数据,这些数据会动态地分配到年份,月份和日期。 因此,如果要在添加新列并发送批处理文件的位置更改源端的数据,我们如何获取数据。我知道avro有这种能力,但为了减少返工,如何在拼花格式中实现这一目标?

如果avro是什么程序?

1 个答案:

答案 0 :(得分:1)

你正在寻找的是模式演变,Hive支持它与AVRO相比有一些限制。

Schema evolution in parquet format