Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a...

44
Tecnologías de Procesamiento Big Data

Transcript of Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a...

Page 1: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

TecnologíasdeProcesamientoBigData

Page 2: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ApacheSQOOP

Page 3: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ApacheSqoop

qDocumentación de Apache

https://sqoop.apache.org/docs/1.4.6/SqoopUserGuide.html

qLibro de referencia

Kathleen Ting, Jarek Jarcec(2013) “Apache Sqoop Cookbook”

qVersión estable 1.4.6

Page 4: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Topics delcapítulo

q Introducción a Sqoopq Herramientas disponibles en Sqoopq Importar tablas a HDFSq Paralelismoq Importar tablas a Hiveq Importar tablas a HBaseq Import incrementalq Sqoop Jobq Sqoop Export

Page 5: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Sqoop enelecosistemaHadoop

HerramientasdeIngesta

ProcesamientoBatch

Coordinación

BDnosql

Buscador(indexación)

ProcesamientoNRT

Workflow

Page 6: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

IntroducciónaSqoop

q Las empresas almacenan sus datos en sistemas de almacenamiento

tradicionalesà Bases de datos relacionales.

q Con la aparición de Hadoop surge la necesidad de una herramienta que

permita migrar datos desde sistemas tradicionales a un cluster de Hadoop

(HDFS).

q Apache Sqoop cubre esta necesidad.

Elegimosunorigen(MySQL)

Elegimosundestino(HDFS)

Sqooptransfiere

nuestrosdatos

Page 7: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

IntroducciónaSqoop

RDBMS(MySQL,Oracle,

Teradata)

Hadoop FileSystem(HDFS,

Hbase,Hive)

IMPORT

EXPORT

CLUSTERHADOOP

SQOOP

LaherramientaIMPORT deSqoop importacadatabladesdeunRDBMSaHadoop.CadafiladelatablaseimportacomounregistroenHDFS..

LaherramientaEXPORT deSqoop exportalosficherosdeHadoop atablasdeunRDBMS.CadaregistrodeunficherodeHDFSseráunafiladelatablaenelRDBMS.

AunqueSqoop disponedemuchasfuncionalidadeslasmásimportantessonIMPORTyEXPORT:

Page 8: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

IntroducciónaSqoop

q Un proceso de Sqoop (tanto IMPORT como EXPORT) lanza un job de Map

Reduce y por tanto es un proceso BATCH.

q Sqoop no hace réplicas del origen en tiempo real, sino que hace una copia de

los sistemas origen en un momento dado.

q ¿Existen herramientas que hagan de espejo origen-destino?

Page 9: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Topics delcapítulo

q Introducción a Sqoopq Herramientas disponibles en Sqoopq Importar tablas a HDFSq Paralelismoq Importar tablas a Hiveq Importar tablas a HBaseq Import incrementalq Sqoop Jobq Sqoop Export

Page 10: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

HerramientasdisponiblesenSqoop

bash-4.1$ sqoop helpWarning: /opt/cloudera/parcels/CDH-5.11.1-1.cdh5.11.1.p0.4/bin/../lib/sqoop/../accumulo does notexist! Accumulo imports will fail.Please set $ACCUMULO_HOME to the root of your Accumulo installation.17/09/22 19:21:33 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6-cdh5.11.1usage: sqoop COMMAND [ARGS]

Available commands:codegen Generate code to interact with database recordscreate-hive-table Import a table definition into Hiveeval Evaluate a SQL statement and display the resultsexport Export an HDFS directory to a database tablehelp List available commandsimport Import a table from a database to HDFSimport-all-tables Import tables from a database to HDFSimport-mainframe Import datasets from a mainframe server to HDFSjob Work with saved jobslist-databases List available databases on a serverlist-tables List available tables in a databasemerge Merge results of incremental importsmetastore Run a standalone Sqoop metastoreversion Display version information

See 'sqoop help COMMAND' for information on a specific command.

Comprobamosqueestáinstaladalaherramientadesqoop yejecutamossqoop help

Page 11: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Import.Funcionalidadesdisponibles

bash-4.1$ sqoop help importWarning: /opt/cloudera/parcels/CDH-5.11.1-1.cdh5.11.1.p0.4/bin/../lib/sqoop/../accumulodoes not exist! Accumulo imports will fail.Please set $ACCUMULO_HOME to the root of your Accumulo installation.17/09/22 19:37:12 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6-cdh5.11.1usage: sqoop import [GENERIC-ARGS] [TOOL-ARGS]

Common arguments:--connect <jdbc-uri> --connection-manager <class-name>--connection-param-file <properties-file>--driver <class-name>--hadoop-home <hdir> --hadoop-mapred-home <dir> --help --metadata-transaction-isolation-level <isolationlevel>

At minimum, you must specify --connect and --tableArguments to mysqldump and other subprograms may be suppliedafter a '--' on the command line.

Ejecutamossqoop help import

Page 12: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Topics delcapítulo

q Introducción a Sqoopq Herramientas disponibles en Sqoopq Importar tablas a HDFSq Paralelismoq Importar tablas a Hiveq Importar tablas a HBaseq Import incrementalq Sqoop Jobq Sqoop Export

Page 13: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ImportartablasaHDFS

¿ Qué parámetros pueden ser necesarios en un IMPORT?

Page 14: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ImportartablasaHDFS

sqoop import--connect--username--password--table--target-dir

sqoop import (generic args) (import args)

Page 15: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ImportartablasaHDFS

customerID

contactName

address

city

postalCode

phoneNumber

orderID

customerID

orderDate

product

quantity

price

q Los ejemplos los veremos usando un caso típico: la tabla customers y orders.

Page 16: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ImportartablasaHDFS

sqoop import \--connect jdbc:mysql://localhost/database \--username alumno \--password alumno \--table customers \--target-dir /data/customers

q Usa --target-dir para especificar la ruta de destino final en HDFS

sqoop import \--connect jdbc:mysql://localhost/database \--username alumno --password-file ${user.home}/.password \--table customers \--warehouse-dir /data

q Usa --warehouse-dir para especificar la ruta destino padre en HDFS. Sqoopcreará un subdirectorio con el nombre de la tabla

q Recomendación : securiza la password usando --password-file

Page 17: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

HANDSON

q EJERCICIO 1

En este ejercicio vamos a ver la diferencia de usar el comando target-dir y

warehouse-dir.

Page 18: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ImportartablasaHDFS

sqoop import \--connect jdbc:mysql://localhost/database \--username alumno \--password alumno \--table customers \--columns ordersID,product,price--where ‘price > 100’--target-dir /data/customers

q Usa --columns y --where para importar datos parciales de la tabla.

Page 19: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

HANDSON

q EJERCICIO 2

En este ejercicio importaremos sólo un subconjunto de la tabla origen.

q EJERCICIO 3

Ejecución a través de un shell script.

Permisos:Unixdisponedetrespermisos, lectura(r), escritura(w) y ejecución(x).Entotaltendremosnuevebitsqueindicanlosdistintospermisoenelsiguienteorden: usuario,grupo,otros:

usuario 7=111=rwxgrupo 7=111=rwxotros 5=101=r-x

Page 20: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Topics delcapítulo

q Introducción a Sqoopq Herramientas disponibles en Sqoopq Importar tablas a HDFSq Paralelismoq Importar tablas a Hiveq Importar tablas a HBaseq Import incrementalq Sqoop Jobq Sqoop Export

Page 21: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ParalelismoenSqoop

Id :[0-50]

Id:[51-100]

Id:[101-200]

Id:[201-250]

q Usa –split-by y --m para optimizar el import en Sqoop.q Por defecto se usan 4 mappers.q Recomendación: para no sobrecargar la BD origen elegir un número pequeño de

mappers e ir subiendo hasta llegar al óptimo.q Por defecto split-by escoge la clave primaria pero no tiene porqué ser el campo

óptimo para el split (histograma).

m1

m2

m3

m4

Page 22: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

HANDSON

q EJERCICIO 4. Paralelismo en Sqoop con los parámetros de mappers y split-by.

Page 23: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Free-form query

sqoop import \--connect jdbc:mysql://localhost/database \--username alumno \--password alumno \--query 'SELECT a.order_date FROM orders a JOIN customers b on a.customerID = b.customerID WHERE $CONDITIONS' \--split-by customerID \--target-dir /data/orders_date

q Usa --query cuando quieres traerte datos de dos tablas distintas. “Free-formquery”Obligatorio el uso de --split-by y --target-dir (alternativa --m 1).No compatible con --warehouse-dir .

Page 24: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ImportartablasaHDFS

q En el caso de la “free-form query” Sqoop calcula el max(customerID) y el

min(customerID) sobre los datos de la query. Esta query puede disminuir

mucho el rendimiento.

q Como alternativa ofrece añadir el parámetro --boundary-query.

q Este parámetro puede ser una query arbitraria con los parámetros mínimo y

máximo definidos como constantes en caso de conocerlos aproximadamente

de antemano.

Page 25: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ImportartablasaHDFS

sqoop import \--connect jdbc:mysql://localhost/database \--username alumno \--password alumno \--query 'SELECT a.order_date FROM orders a JOIN customers b on a.customerID = b.customerID WHERE $CONDITIONS' \--split-by customerID \--target-dir /data/orders_date--boundary-query ’select min(customerID),max(customerID) from customers’

sqoop import \--connect jdbc:mysql://localhost/database \--username alumno \--password alumno \--query 'SELECT a.order_date FROM orders a JOIN customers b on a.customerID = b.customerID WHERE $CONDITIONS' \--split-by customerID \--target-dir /data/orders_date--boundary-query ’select 20,500 from customers’

Page 26: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

HANDSON

q EJERCICIO 5. Importar datos de varias tablas.

Page 27: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Topics delcapítulo

q Introducción a Sqoopq Herramientas disponibles en Sqoopq Importar tablas a HDFSq Paralelismoq Importar tablas a Hiveq Importar tablas a HBaseq Import incrementalq Sqoop Jobq Sqoop Export

Page 28: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ImportartablasaHIVE

q Podemos importar datos directamente a HIVE.

sqoop import \--connect jdbc:mysql://localhost/database \--username alumno --password alumno \--table orders \--hive-import \--create-hive-table \--hive-table database.orders

q El comando anterior crea una tabla nueva en Hive .

Page 29: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

HANDSON

q EJERCICIO 6. Importar datos a HIVE.

Page 30: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Topics delcapítulo

q Introducción a Sqoopq Herramientas disponibles en Sqoopq Importar tablas a HDFSq Paralelismoq Importar tablas a Hiveq Importar tablas a HBaseq Import incrementalq Sqoop Jobq Sqoop Export

Page 31: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Topics delcapítulo

q Introducción a Sqoopq Herramientas disponibles en Sqoopq Importar tablas a HDFSq Paralelismoq Importar tablas a Hiveq Importar tablas a HBaseq Import incrementalq Sqoop Jobq Sqoop Export

Page 32: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Import incremental

orderID product quantity

37 Product_A 2

38 Product_B 1

39 Product_C 1

orderID product quantity

37 Product_A 2

38 Product_B 1

39 Product_C 1

40 Product_C 1

41 Product_D 5

orderID product quantity

37 Product_A 2

38 Product_B 1

39 Product_C 1

orderID product quantity

37 Product_A 2

38 Product_B 6

39 Product_C 1

40 Product_C 1

append

last-modified

Page 33: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Import incrementalconappend

sqoop import \--connect jdbc:mysql://localhost/database \--username alumno --password alumno \--table orders \--warehouse-dir /data \--incremental append \--check-column orderId \--last-value 39

q Hacemos import incrementales, es decir copiamos sólo los nuevos registros

que haya en la tabla que queremos migrar.

q Usamos --incremental append , --check-column --last-value.

q Esta opción sólo vale cuando únicamente se hace append en la base de

datos.

q En este caso se copiarán aquellas filas cuyo order_id sea mayor que el

indicado en el last_value (39).

Page 34: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Import incrementalconlast modified

sqoop import \--connect jdbc:mysql://localhost/database \--username alumno --password alumno \--table orders \--warehouse-dir /data \--incremental lastmodified \--check-column updateDate \--last-value "2017-09-20 08:37:59"

q En este caso sí se hacen updates en el base de datos.

q Usamos --incremental lastmodified,--check-column y --last-value.

q La tabla tiene que tener un campo timestamp que se tiene que actualizar en

cada inserción.

q Se copian aquellas filas cuyo updateDate sea mayor que el last-value.

Page 35: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

HANDSON

q EJERCICIO 7. Importar datos incrementales.

Page 36: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Topics delcapítulo

q Introducción a Sqoopq Herramientas disponibles en Sqoopq Importar tablas a HDFSq Paralelismoq Importar tablas a Hiveq Importar tablas a HBaseq Import incrementalq Sqoop Jobq Sqoop Export

Page 37: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Sqoop Jobs

q ¿Cómo sabemos cuál fue el último registro que copiamos de la tabla de

origen a hadoop? ¿Lo apuntamos en una libreta de papel?à Automatizamos

con Sqoop JobJ

q Sqoop te permite crear jobs y programarlos en el tiempo.

q Sqoop almacena el último registro que copiamos a HDFS de forma que la

siguiente vez que ejecutamos el job no nos tenemos que preocupar por nada.

q Se pueden programar import y export.

sqoop job (generic args) (job args)

Page 38: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Sqoop Jobs

sqoop job --list

q Usamos el comando --list para listar los jobs que hay programados.

q Usamos el comando --show para obtener los detalles de un job que esté

programado.

sqoop job --show myjob

q Para ejecutar un job de la lista usamos --exec.

sqoop job --exec myjob

Page 39: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Sqoop Jobs

sqoop job --create myjob \-- import \--connect jdbc:mysql://localhost/database \--username alumno \--password alumno \--table customers \--delete-target-dir \--target-dir /data/customers

q ¿Cómo creamos un job?

q Para borrar un job usamos el comando --delete.

sqoop job --delete myjob

Page 40: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

HANDSON

q EJERCICIO 8. Creación de un job de sqoop.

Page 41: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Topics delcapítulo

q Introducción a Sqoopq Herramientas disponibles en Sqoopq Importar tablas a HDFSq Paralelismoq Importar tablas a Hiveq Importar tablas a HBaseq Import incrementalq Sqoop Jobq Sqoop Export

Page 42: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

Export.Funcionalidadesdisponibles

$ sqoop help exportWarning: /opt/cloudera/parcels/CDH-5.11.1-1.cdh5.11.1.p0.4/bin/../lib/sqoop/../accumulodoes not exist! Accumulo imports will fail.Please set $ACCUMULO_HOME to the root of your Accumulo installation.17/09/23 19:10:26 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6-cdh5.11.1usage: sqoop export [GENERIC-ARGS] [TOOL-ARGS]

Common arguments:--connect <jdbc-uri> --connection-manager <class-name>--connection-param-file <properties-file>--driver <class-name>--hadoop-home <hdir> --hadoop-mapred-home <dir> --help --metadata-transaction-isolation-level <isolationlevel>

--oracle-escaping-disabled <boolean> …

At minimum, you must specify --connect, --export-dir, and --table

Ejecutamossqoop help export

Page 43: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

ImportartablasaHDFS

sqoop export--connect--username--password--table--export-dir

sqoop export (generic args) (import args)

Page 44: Tecnologías de Procesamiento Big Data · Tecnologías de procesamiento Big Data Introducción a Sqoop RDBMS (MySQL, Oracle, Teradata ) HadoopFile System (HDFS, Hbase,Hive) IMPORT

Tecnologías de procesamiento Big Data

¿EsSQOOPunaherramientaválidaparatuaplicación?

Transportardatos

DesdeunRDBMS

Almacenarlosenuncluster deHadoop

NECESITAS…