Sqoop - Eval

Este capítulo describe cómo utilizar la herramienta 'eval' de Sqoop. Permite a los usuarios ejecutar consultas definidas por el usuario en los respectivos servidores de bases de datos y obtener una vista previa del resultado en la consola. Por lo tanto, el usuario puede esperar que se importen los datos de la tabla resultante. Con eval, podemos evaluar cualquier tipo de consulta SQL que pueda ser una declaración DDL o DML.

Sintaxis

La siguiente sintaxis se utiliza para el comando eval de Sqoop.

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

Seleccionar evaluación de consulta

Usando la herramienta eval, podemos evaluar cualquier tipo de consulta SQL. Tomemos un ejemplo de selección de filas limitadas en elemployee mesa de dbbase de datos. El siguiente comando se usa para evaluar el ejemplo dado usando una consulta SQL.

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

Si el comando se ejecuta correctamente, producirá la siguiente salida en la terminal.

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

Insertar evaluación de consulta

La herramienta Sqoop eval puede ser aplicable tanto para modelar como para definir declaraciones SQL. Eso significa que también podemos usar eval para insertar declaraciones. El siguiente comando se utiliza para insertar una nueva fila en elemployee mesa de db base de datos.

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

Si el comando se ejecuta correctamente, mostrará el estado de las filas actualizadas en la consola.

O bien, puede verificar la tabla de empleados en la consola MySQL. El siguiente comando se utiliza para verificar las filas deemployee mesa de db base de datos usando select 'query.

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     |
+------+--------------+-------------+-------------------+--------+