hive导入csv数据
时间: 2023-09-16 13:12:15 浏览: 190
csv 文件 导入hive
在hive中导入csv数据主要有以下两种方法:
1. 使用LOAD DATA命令导入csv数据
步骤如下:
(1)创建数据表
首先需要在hive中创建一个数据表,表的结构应该与csv文件中的数据结构相匹配,例如:
```
CREATE TABLE mytable (
id INT,
name STRING,
age INT,
gender STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
STORED AS TEXTFILE;
```
(2)将csv文件上传到HDFS上
使用hadoop fs -put命令将csv文件上传到HDFS上,例如:
```
hadoop fs -put /local/path/to/myfile.csv /hdfs/path/to/myfile.csv
```
(3)使用LOAD DATA命令导入csv数据
使用LOAD DATA命令将csv数据导入到hive表中,例如:
```
LOAD DATA INPATH '/hdfs/path/to/myfile.csv' INTO TABLE mytable;
```
2. 使用EXTERNAL TABLE导入csv数据
步骤如下:
(1)创建外部表
首先需要在hive中创建一个外部表,外部表的结构应该与csv文件中的数据结构相匹配,例如:
```
CREATE EXTERNAL TABLE mytable (
id INT,
name STRING,
age INT,
gender STRING
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
LOCATION '/hdfs/path/to/myfile.csv';
```
(2)将csv文件上传到HDFS上
使用hadoop fs -put命令将csv文件上传到HDFS上,例如:
```
hadoop fs -put /local/path/to/myfile.csv /hdfs/path/to/myfile.csv
```
(3)查询外部表
使用SELECT语句查询外部表,hive会自动读取HDFS上的csv文件并将其解析成表格数据,例如:
```
SELECT * FROM mytable;
```
阅读全文