Sqoop数据导入语法学习
时间: 2024-11-12 10:33:49 浏览: 33
2、sqoop导入(RMDB-mysql、sybase到HDFS-hive)
Sqoop是一个开源工具,用于在Hadoop和传统的关系型数据库之间进行数据迁移。它的核心命令行语法用于从RDBMS导入数据到Hadoop的HDFS(Hadoop Distributed File System),或反之将HDFS的数据导出到RDBMS。
基本的导入语法如下:
```sql
sqoop import \
--connect <jdbc_url> <!-- 数据库连接URL -->
--username <db_username> <!-- 数据库用户名 -->
--password <db_password> <!-- 数据库密码 -->
--table <table_name> <!-- 要导入的表名 -->
[--target-dir <hdfs_path>] <!-- HDFS目标路径,默认会自动创建目录 -->
[--fields-terminated-by <sep>] <!-- 字段分隔符,默认是',' -->
[--lines-terminated-by <lf>] <!-- 行分隔符,默认是'\n' -->
[--null-value '<null_value>'] <!-- 空值表示 -->
```
例如,一条完整的命令可能是这样的:
```bash
sqoop import \
--connect "jdbc:mysql://localhost/testdb" \
--username root \
--password mypassword \
--table employees \
--target-dir /user/hadoop/employees_data
```
导出数据的语法类似,只是方向相反:
```sql
sqoop export \
--connect <jdbc_url> \
--username <db_username> \
--password <db_password> \
--table <table_name> \
[--export-dir <hdfs_path>] \
[--incremental <method>] <!-- 如果是增量导出,可以设置成append或last-value -->
```
阅读全文