amazon-s3 – 将Hive桌面导出到S3桶 - 代码日志

amazon-s3 – 将Hive桌面导出到S3桶

我通过弹性MapReduce交互式会话创建了一个Hive Table,并将其从CSV文件中填入:

CREATE TABLE csvimport(id BIGINT, time STRING, log STRING)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t';

LOAD DATA LOCAL INPATH '/home/hadoop/file.csv' OVERWRITE INTO TABLE csvimport;

我现在想将Hive表存储在S3桶中,以便在终止MapReduce实例后保留表。

有谁知道如何做到这一点?

是的,您必须在启动会话的开始和结束时导出和导入数据

为此,您需要创建映射到S3桶和目录的表

CREATE TABLE csvexport (
  id BIGINT, time STRING, log STRING
  ) 
 row format delimited fields terminated by ',' 
 lines terminated by '\n' 
 STORED AS TEXTFILE
 LOCATION 's3n://bucket/directory/';

将数据插入到s3表中,插入完成后,该目录将有一个csv文件

 INSERT OVERWRITE TABLE csvexport 
 select id, time, log
 from csvimport;

您的表格现在已被保留,并且当您创建一个新的蜂巢实例时,您可以重新导入数据

您的表可以存储在几种不同的格式,取决于你想要使用它。

http://stackoverflow.com/questions/9489487/exporting-hive-table-to-a-s3-bucket

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:amazon-s3 – 将Hive桌面导出到S3桶