如何让 HIVE 中的 CREATE TABLE...AS SELECT 不填充数据?
How to let CREATE TABLE...AS SELECT in HIVE do not populate data?
当我在HIVE中运行CTAS时,数据也会同时填充。但我只想创建 table,而不是填充数据。我应该怎么做?谢谢
使用 create EXTERNAL table
而不是 create table
。观察外部关键字。
在 select 语句中使用 where 条件并给出 where 的值,它不会从配置单元中获取任何记录。
示例 table name demo1
id name country
1 abc India
2 xyz Germany
3 pqr France
In CREATE TABLE…AS SELECT in HIVE
Create table demo2...As SELECT id, name, country from demo1 where id=0;
所以,在上面 where 条件的 id 被给定为 0 并且从上面的数据中 select 语句将不会获取任何记录,类似地在 where 条件中选择一个值其中 returns 没有记录。因此,不会在新创建的 table 中插入任何数据。
您可以使用 LIKE 关键字来做到这一点。
create table new_table_name LIKE old_table_name
这将创建没有数据的 table 结构。
@Sunil 的回答对我也有帮助,我只是发布了一个对我来说必要的补充。
源 table 是 Avro 格式,但我想要的是 ORC 格式的新格式,因此
CREATE TABLE dataaggregate_orc_empty LIKE dataaggregate_avro_compressed ROW FORMAT SERDE 'org.apache.hadoop.hive.ql.io.orc.OrcSerde' STORED AS INPUTFORMAT 'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat' TBLPROPERTIES ('orc.compress'='ZLIB');
如果需要,上述步骤可以分为两步:
CREATE TABLE dataaggregate_orc_empty LIKE dataaggregate_avro_compressed;
alter table dataaggregate_orc_empty set fileformat ORC;
如果有人能就此过程中发生的数据格式更改和相关问题(如果有)提供输入,我将很高兴。
当我在HIVE中运行CTAS时,数据也会同时填充。但我只想创建 table,而不是填充数据。我应该怎么做?谢谢
使用 create EXTERNAL table
而不是 create table
。观察外部关键字。
在 select 语句中使用 where 条件并给出 where 的值,它不会从配置单元中获取任何记录。
示例 table name demo1
id name country
1 abc India
2 xyz Germany
3 pqr France
In CREATE TABLE…AS SELECT in HIVE
Create table demo2...As SELECT id, name, country from demo1 where id=0;
所以,在上面 where 条件的 id 被给定为 0 并且从上面的数据中 select 语句将不会获取任何记录,类似地在 where 条件中选择一个值其中 returns 没有记录。因此,不会在新创建的 table 中插入任何数据。
您可以使用 LIKE 关键字来做到这一点。
create table new_table_name LIKE old_table_name
这将创建没有数据的 table 结构。
@Sunil 的回答对我也有帮助,我只是发布了一个对我来说必要的补充。 源 table 是 Avro 格式,但我想要的是 ORC 格式的新格式,因此
CREATE TABLE dataaggregate_orc_empty LIKE dataaggregate_avro_compressed ROW FORMAT SERDE 'org.apache.hadoop.hive.ql.io.orc.OrcSerde' STORED AS INPUTFORMAT 'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat' TBLPROPERTIES ('orc.compress'='ZLIB');
如果需要,上述步骤可以分为两步:
CREATE TABLE dataaggregate_orc_empty LIKE dataaggregate_avro_compressed;
alter table dataaggregate_orc_empty set fileformat ORC;
如果有人能就此过程中发生的数据格式更改和相关问题(如果有)提供输入,我将很高兴。