是否可以在Hive中导出许多分区

时间:2015-07-02 14:05:59

标签: hadoop hive


是否可以从一个EXPORT中的一个表导出多个分区?

Documentation说:

EXPORT TABLE tablename [PARTITION (part_column="value"[, ...])]
  TO 'export_target_path'

我认为[, ...]表示其他分区列:part_column1="value", part_column2="value"不是同一分区列的不同值。

是否可以使用一个具有多个值的列?我的意思是这样的: part_column1 = "value1","value2"part_column1 = "value1", part_column1 = "value2"

[编辑] 我的例子是:

hive (pr)> export table account partition (start_date="2015-06-23",start_date="2015-06-22") to 'accounts';
Copying data from file:/tmp/hive_2015-07-02_17-40-50_937_3732031090994168422-1/-local-10000/_metadata
Copying file: file:/tmp/hive_2015-07-02_17-40-50_937_3732031090994168422-1/-local-10000/_metadata
Copying data from hdfs://server.pl:8020/apps/hive/warehouse/pr.db/account/start_date=2015-06-22
Copying file: hdfs://server.pl:8020/apps/hive/warehouse/pr.db/account/start_date=2015-06-22/000000_0
Copying file: hdfs://server.pl:8020/apps/hive/warehouse/pr.db/account/start_date=2015-06-22/000001_0
Copying file: hdfs://server.pl:8020/apps/hive/warehouse/pr.db/account/start_date=2015-06-22/000002_0
OK
Time taken: 20.69 seconds

所以我想导出两个分区:start_date =“2015-06-23”,start_date =“2015-06-22”并且只导出分区start_date =“2015-06-22”

的Pawel

2 个答案:

答案 0 :(得分:1)

你不能像Hive 0.14那样做。尝试指定2个部分将在目标目录中仅创建一个文件夹,其中包含来自一个分区的数据。

答案 1 :(得分:0)

文档示例明确表示您可以为两列做

export table employee partition (emp_country="in", emp_state="ka") to 'hdfs_exports_location/employee';

因此,当您可以完成上述工作时,您还可以获得以下信息。如果您遇到任何错误

export table employee partition (emp_country="in", emp_country="us") to 'hdfs_exports_location/employee';