【发布时间】:2017-06-30 22:36:02
【问题描述】:
我在 hdfs 中有一些数据。
此数据是使用 Sqoop 从 PostgreSQL 数据库迁移而来的。
数据具有以下hadoopish格式,如_SUCCESS、part-m-00000等。
我需要根据这些数据创建一个 Hive 表,然后我需要将此表导出到单个制表符分隔的文件中。
据我所知,我可以通过这种方式创建表格。
create external table table_name (
id int,
myfields string
)
location '/my/location/in/hdfs';
然后我可以将表格保存为tsv文件:
hive -e 'select * from some_table' > /home/myfile.tsv
我不知道如何将数据从 hdfs 加载到 Hive 表中。
此外,我应该使用create 手动定义表的结构,还是在自动创建所有列时有任何自动化方式?
【问题讨论】:
-
Hive 数据已经在 LOCATION 的 HDFS 中
-
你用了什么sqoop命令?它具有为您创建 Hive 表的选项
-
@cricket_007:这是由另一个人完成的。所以,我无法改变这一点。
-
好的,那你应该去和那些人谈谈,否则你必须手动编写你的
CREATE EXTERNAL TABLE查询......这是我看到的唯一选项。自动化的方式是第一种 -
问题的标题非常具有误导性。