我想临时使用hive对hdfs上的文件做一些操作,所以我不想使用内部表。但是我的数据太大了,例如1TB,所以我担心外部表的性能。
所以我问这个问题
hive 中表和外部表之间的性能差异。

最佳答案

您可以创建 hive 外部表并使用它们。我没有注意到内部表和外部表的性能有任何重大差异。

为了提高性能,您可以创建由 hive 管理的 ORC(文件格式)表。

Create ORC table:
CREATE TABLE IF NOT EXISTS <orc_table_name>(
    <col name> <type>)
COMMENT 'comments'
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS ORC;

然后插入到 ORC 表中:
INSERT OVERWRITE TABLE <orc_table_name> SELECT * FROM <external_table_name>;

引用:HDFS to Hive external table and ORC

关于hadoop - hive中内表和外表的性能差异,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41309881/

10-16 03:05