Sqoop 简明教程

Sqoop - Eval

本章描述了如何使用 Sqoop 的“eval”工具。它允许用户对各自的数据库服务器执行用户定义的查询,并在控制台上预览结果。因此,用户可以预计导入结果表数据。使用 eval,我们可以评估任何类型的 SQL 查询,无论是 DDL 还是 DML 语句。

Syntax

Sqoop eval 命令使用了以下语法。

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

Select Query Evaluation

使用 eval 工具,我们可以评估任何类型的 SQL 查询。让我们举一个在 employee 数据库的 db 表中选择有限行的一个例子。以下命令用于使用 SQL 查询来评估给定的示例。

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

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

+------+--------------+-------------+-------------------+--------+
| Id   | Name         | Designation | Salary            | Dept   |
+------+--------------+-------------+-------------------+--------+
| 1201 | gopal        | manager     | 50000             | TP     |
| 1202 | manisha      | preader     | 50000             | TP     |
| 1203 | khalil       | php dev     | 30000             | AC     |
+------+--------------+-------------+-------------------+--------+

Insert Query Evaluation

Sqoop eval 工具可以适用于建模和定义 SQL 语句。这意味着,我们也可以将 eval 用于插入语句。以下命令用于在 employee 数据库的 db 表中插入新行。

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

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

否则,您可以在 MySQL 控制台上验证员工表。以下命令用于使用 select’ 查询验证 employee 数据库 db 表的行。

mysql>
mysql> use db;
mysql> SELECT * FROM employee;
+------+--------------+-------------+-------------------+--------+
| Id   | Name         | Designation | Salary            | Dept   |
+------+--------------+-------------+-------------------+--------+
| 1201 | gopal        | manager     | 50000             | TP     |
| 1202 | manisha      | preader     | 50000             | TP     |
| 1203 | khalil       | php dev     | 30000             | AC     |
| 1204 | prasanth     | php dev     | 30000             | AC     |
| 1205 | kranthi      | admin       | 20000             | TP     |
| 1206 | satish p     | grp des     | 20000             | GR     |
| 1207 | Raju         | UI dev      | 15000             | TP     |
+------+--------------+-------------+-------------------+--------+