Sqoop Eval

1.目的

为了快速对数据库运行简单的SQL查询,在Sqoop中使用Sqoop Eval工具。 Sqoop Eval提供了更多的用途。本章中,我们将介绍它的语法和命令。

1542510896935918.png

2.什么是Sqoop Eval?

Sqoop Eval可以快速对数据库运行简单的SQL查询。可在控制台中预览结果,使用Sqoop Eval工具。作为用户,我们可以期望得到的表格数据从而进行Sqoop import。通过它,我们可以评估任何类型的SQL语句。 DDL或DML语句也可通过eval。

3.为什么Sqoop Eval?

Sqoop Eval的主要目的是允许用户快速地对数据库运行简单的SQL查询。之后,结果将输出到控制台。此外,Sqoop Eval允许用户预览他们的Sqoop import查询,以确保导入他们期望的数据。

4. Sqoop Eval的语法

$ sqoop eval(generic-args)(eval-args)

Sqoop eval参数相互之间可以以任何顺序输入,但Hadoop通用参数只能在eval参数之前。

通用参数

1542511152295656.png

1542511190666852.png

SQL Eval 参数

1542511258833698.png

5. Sqoop Eval 进行 Select Eval

如前所述,可以使用eval工具评估任何类型的SQL查询。 例如,在DB数据库的employee表中选择有限的行。 使用以下命令:

$ sqoop eval \
–connect jdbc:mysql://localhost/db \
–username root \
–query “SELECT * FROM employee LIMIT 3”

如果命令执行成功,它将在终端上产生以下输出:

1542511355299253.png

6. Sqoop Eval 进行 Insert Eval

对于DML和DDL SQL语句,都可以应用Sqoop eval工具。 例如,也可以指定Insert语句, 要在DB数据库的employee表中插入新行,使用以下命令:

$ sqoop eval \
–connect jdbc:mysql://localhost/db \
–username root \
-e “INSERT INTO employee VALUES(1007,‘Gem’,‘UI dev’,15000,‘TP’)”

如果命令成功执行,它将在控制台上显示更新行的状态。

使用select 查询,可以使用以下Sqoop Eval命令来验证的empoloyee的插入新行的内容:

mysql> use DB;
mysql> SELECT * FROM employee;

1542511464450741.png

Sqoop Eval

发表评论

邮箱地址不会被公开。 必填项已用*标注

2 + 三 =

滚动到顶部