Hive 表创建后如何修改序列化方式?(文本格式转 ORC 格式)
是的,Hive 表创建后可以修改表的序列化方式。
举例说明一个默认文本格式修改为 ORC 格式和字段分隔符为 '\t' 的操作:
- 首先,使用以下命令打开 Hive:
hive
- 然后,使用以下命令创建一个默认的文本格式表:
CREATE TABLE my_table (
column1 INT,
column2 STRING,
column3 DOUBLE
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE;
- 接下来,使用以下命令修改表的序列化方式为 ORC 格式和字段分隔符为 '\t':
ALTER TABLE my_table
SET SERDE 'org.apache.hadoop.hive.ql.io.orc.OrcSerde'
WITH SERDEPROPERTIES ('field.delim'='\t');
- 最后,使用以下命令验证表的序列化方式已经被成功修改:
DESCRIBE FORMATTED my_table;
输出应该类似于以下内容:
...
SerDe Library: org.apache.hadoop.hive.ql.io.orc.OrcSerde
InputFormat: org.apache.hadoop.hive.ql.io.orc.OrcInputFormat
OutputFormat: org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat
...
这表明表的序列化方式已经成功修改为 ORC 格式。
原文地址: https://www.cveoy.top/t/topic/mhpl 著作权归作者所有。请勿转载和采集!