Sei sulla pagina 1di 16

EDWIN ALEXANDER AGUILAR SANCHEZ

Introduccin a Big Data

Big Data se define como el conjunto de herramientas informticas


destinadas a la manipulacin, gestin y anlisis de grandes volmenes de
datos de todo tipo los cuales no pueden ser gestionados por las
herramientas informticas tradicionales. Big data es un trmino de origen
ingls cuya traduccin equivale a "Datos masivos", la tecnologa big data
tiene por objetivo analizar datos e informacin de manera inteligente que
ayuden a una correcta toma de decisin.
El objetivo fundamental del big data es dotar de una infraestructura
tecnolgica a las empresas y organizaciones con la finalidad de poder
almacenar, tratar y analizar de manera econmica, rpida y flexible la gran
cantidad de datos que se generan diariamente, para ello es necesario el
desarrollo y la implantacin tanto de hardware como de software especficos
que gestionen esta explosin de datos con el objetivo de extraer valor para
obtener informacin til para nuestros objetivos o negocios.
Es una realidad que la cantidad de informacin digital que se genera
diariamente en nuestro planeta crece exponencialmente, gigantes y
potentes bases de datos en donde se almacenan por ejemplo todos los
movimientos de dinero que se producen en una entidad bancaria, la
informacin que registran los puntos de ventas de los grandes centros
comerciales o toda la informacin que se genera en las redes sociales, blogs
y pginas webs que se actualizan diariamente, son ejemplos entre otros de
fuentes generadoras de informacin y datos. En este aspecto hay estudios
que afirman que cada da se genera tanta informacin digital como el
equivalente a toda la informacin escrita a lo largo de toda la historia de la
humanidad, sin duda vivimos en la era de la informacin digital.
Ante esta nueva realidad de la cantidad ingente de datos que se generan
diariamente, muchas empresas y organizacin desean utilizar esta
informacin con el objetivo de mejorar las prestaciones de sus servicios o
negocios, para ello la tecnologa big data ha sido desarrollada con la
finalidad de capturar, almacenar y analizar toda estos datos con la finalidad
de obtener informacin til para nuestro negocio.

Hadoop

Apache Hadoop es un framework de software que soporta aplicaciones


distribuidas bajo una licencia libre. Permite a las aplicaciones trabajar con
miles de nodos y petabytes de datos. Hadoop se inspir en los documentos
Google para MapReduce y Google File System (GFS).
Hadoop es un proyecto de alto nivel Apache que est siendo construido y
usado por una comunidad global de contribuyentes, mediante el lenguaje de
programacin Java. Yahoo! ha sido el mayor contribuyente al proyecto, y usa
Hadoop extensivamente en su negocio.
Caractersticas
Hadoop consiste bsicamente en el Hadoop Common, que proporciona
acceso a los sistemas de archivos soportados por Hadoop. El paquete de
software The Hadoop Common contiene los archivos .jar y los scripts
necesarios para hacer correr Hadoop. El paquete tambin proporciona
cdigo fuente, documentacin, y una seccin de contribucin que incluye
proyectos de la Comunidad Hadoop.
Una funcionalidad clave es que para la programacin efectiva de trabajo,
cada sistema de archivos debe conocer y proporcionar su ubicacin: el
nombre del rack (ms precisamente, del switch) donde est el nodo
trabajador. Las aplicaciones Hadoop pueden usar esta informacin para
ejecutar trabajo en el nodo donde estn los datos y, en su defecto, en el
mismo rack/switch, reduciendo as el trfico de red troncal (backbone
traffic). El sistema de archivos HDFS usa esto cuando replica datos, para
intentar conservar copias diferentes de los datos en racks diferentes. El
objetivo es reducir el impacto de un corte de energa de rack o de fallo de
interruptor de modo que incluso si se producen estos eventos, los datos
todava puedan ser legibles.8
Un clster tpico Hadoop incluye un nodo maestro y mltiples nodos esclavo.
El nodo maestro consiste en jobtracker (rastreador de trabajo), tasktracker
(rastreador de tareas), namenode (nodo de nombres), y datanode (nodo de
datos). Un esclavo o compute node (nodo de cmputo) consisten en un
nodo de datos y un rastreador de tareas. Hadoop requiere tener instalados
entre nodos en el clster JRE 1.6 o superior, y SSH.

Big Data

Acceder a Hortonworks

Para explorar los archivos de hortonworks, damos clic en el siguiente botn

Para subir archivos damos clic sobre el botn subir

Al hacer clic en subir archivos nos aparece el siguiente cuadro de dialogo.

Agregamos dos archivos al directorio: Batting.csv y Master.csv.

Beeswax (Hive UI)


Iniciamos Beeswax (Hive UI)
Beeswax es una interfaz de usuario para el sistema de Hive data warehouse
para Hadoop.

Beeswax proporciona una interfaz grfica de usuario para la colmena. A la


derecha es un editor de consultas. Hay un lmite de una consulta por
ejecutar ciclo. Una consulta puede abarcar varias lneas. En la parte inferior
se encuentran los botones para ejecutar la consulta, guarde la consulta con
un nombre, explicar la consulta y para empezar una nueva consulta.

Interfaz grafica de Beeswax

Antes de empezar vamos a echar un vistazo a cmo los modelos de datos


Hive cerdo y difieren. En el caso de todos los objetos de datos Pig existen y
son operados en el guin. Una vez que el guin est completo se eliminan
todos los objetos de datos a menos que haya guardado ellos. En el caso de
la Colmena estamos operando en el almacn de datos Hadoop. Cualquier
consulta que usted hace, tabla que crear, los datos que se copian persiste
de consulta para consultar. Usted puede pensar en la colmena como
proporcionar un banco de trabajo de datos donde puede examinar,
modificar y manipular los datos de Hadoop. As que cuando realizamos
nuestro procesamiento de datos tarea que se ejecutar una consulta o una
lnea a la vez. Una vez que una lnea se ejecuta correctamente se puede ver
en los datos objetos para comprobar si la ltima operacin hizo lo que se
esperaba. Todos sus datos son en vivo, en comparacin con el cerdo, donde
los datos slo existen los objetos dentro de la secuencia de comandos a
menos que se copian a almacenamiento. Este tipo de flexibilidad es la
fuerza de la colmena. Puede resolver problemas poco a poco y cambiar de
opinin sobre lo que debe hacer a continuacin, dependiendo de lo que
encuentre.
La primera tarea que vamos a hacer es crear una tabla para contener los
datos. Vamos a escribir la consulta en el rea de composicin en el derecho
como este. Una vez que haya escrito en la consulta golpear el botn
Ejecutar en la parte inferior.

La consulta devuelve "No hay datos disponibles en la tabla" porque en este


punto que acaba de crear una mesa vaca y tenemos no copiado los datos
en ella.
Una vez que la consulta se ha ejecutado podemos hacer clic en Tablas en la
parte superior del rea de composicin y veremos que tenemos una nueva
tabla llamada temp_batting.

Al hacer clic en el botn Examinar de datos nos permitir ver los datos y en
este momento la tabla est vaca. Este es un buen ejemplo de la sensacin
interactiva que se obtiene con el uso de Hive.

La siguiente lnea de cdigo se carga el archivo de datos Batting.csv en el


temp_batting mesa. Podemos comenzar a escribir el cdigo y nos daremos
cuenta de que hay una funcin auxiliar que nos ayuda a llenar en el camino
correcto para nuestro archivo.

Despus de ejecutar la consulta podemos mirar las tablas de nuevo y


cuando navegamos los datos para temp_batting vemos que los datos se han
ledo en. Nota Hive consume el archivo de datos Batting.csv durante este
paso. Si nos fijamos en el Explorador de archivos, ver Batting.csv ya no
est all.

Ahora que hemos ledo los datos en que pueden empezar a trabajar con l.
La siguiente cosa que queremos hacer extraer los datos. As que primero
vamos a escribir en una consulta para crear una nueva tabla llamada bateo
para contener los datos. Esa mesa tendr tres columnas para player_id, el
ao y el nmero de carreras

Luego extraemos los datos que queremos de temp_batting y copiarlo en


bateo. Lo haremos con un patrn de expresin regular.
Para ello vamos a construir una consulta de varias lneas. La primera lnea
de la consulta a crear el bateo mesa. Las tres llamadas regexp_extract van a
extraer el player_id, ao y los campos administrados por la temp_batting
mesa. Cuando haya terminado de escribir la consulta que se ver as. Tenga
cuidado ya que no hay espacios en el patrn de expresin regular.

Ejecutar la consulta y mirar la tabla de bateo. Usted debe ver los datos que
se parece a esto.

Ahora tenemos los campos de datos que queremos. El siguiente paso es


agrupar los datos por ao para que podamos encontrar la mejor puntuacin
para cada ao. Esta consulta primero agrupa a todos los registros de aos y
luego selecciona el jugador con los ms altos carreras de cada ao.

Los resultados de la consulta se ven as.

Ahora tenemos que volver y conseguir la player_id (s) as que sabemos que
fue el jugador (s). Sabemos que para un ao determinado podemos utilizar
las pistas para encontrar el jugador (s) para ese ao. As que podemos
tomar la consulta anterior y unirlo con los registros de bateo para llegar a la
mesa final.

Los datos resultantes se ven as:

Interactive Query for Hadoop with Apache


Hive on Apache Tez
Para el siguiente tutorial utilizaremos los siguientes archivos.

Ahora, vamos a cargar los archivos de datos anteriores en HDFS y crear dos
mesas de la colmena mediante los pasos siguientes.
Vamos a nombrar las tablas como por los nombres de archivo csv: hvac y
building.

Haga clic en "Crear una nueva tabla a partir de un archivo" en el panel de la


izquierda. Ingrese nombre de la tabla como " hvac " y elegir hvac.csv
presentar de su sistema local como el archivo de entrada.

Una vez que se especifica archivo, podrs ver los nombres de columna y el
mapeo de datos de la siguiente manera. Es posible que tenga que
desplazarse hacia abajo poco.

Haga clic en el botn Crear para completar el proceso de creacin de la


tabla.
Repita los pasos anteriores para crear su segundo "building" mesa.
Una vez que se crean estas 2 tablas, debera ver las tablas que figuran en la
pantalla HCAT.

Las mejoras de velocidad


Para echar un vistazo a las mejoras en la velocidad de la colmena en Tez,
podemos ejecutar algunas consultas de ejemplo. Para ello vamos a utilizar
las dos tablas anteriores - HVAC y building.

Vamos a correr primera Hive sin Tez.

Paso 2:
Tenga en cuenta que Hive est ejecutando utilizando MapReduce Framework
de la salida de registro en la pantalla.

Entonces, vamos a ejecutar la hiveql como abajo.

Esta consulta se llev a cabo utilizando el MapReduce framework.

Paso 3:
Ahora podemos permitir que Hive en la ejecucin Tez y aprovechar las
Dirigido acclicos Grfico (DAG) de ejecucin que representa la consulta en
lugar de mltiples etapas del programa de MapReduce que participan una
gran cantidad de sincronizacin, las barreras y los gastos generales de IO.
Esta mejora en Tez, escribiendo establecidos en la memoria en lugar del
disco duro los datos intermedios.
Utiliza el siguiente paso para configurar el motor de ejecucin de Tez:

Paso 4:
Ejecutar la misma consulta que nos haban acabado anteriormente en el
paso 2, para ver si la velocidad ha mejorado o no.

Paso 5:
Ahora vamos a volver a ejecutar la misma consulta del paso 2 o el paso 4.

Una vez ms, debe correr ms rpido, ya que utilizar recipientes calientes
producidos en el paso 4, ya se est ejecutando en la misma sesin de
cliente Hive.
Aqu est el resultado.

Para experimentar esta nueva, usted podra utilizar su propio conjunto de


datos, cargar a tu HDP Sandbox utilizando pasos anteriores y ejecutar con
Tez y fuera.

Paso 6:
Usted puede seguir su subrbol en empleos Tez en HDP Sandbox Web UI
tambin. Por favor, vaya a: http://127.0.0.1:8088/cluster y el seguimiento de
sus puestos de trabajo durante la ejecucin o publicarlos para ver los
detalles.

Puede hacer clic en su trabajo y ver ms detalles.


Consulta Vectorizacin.
Ahora vamos a ver si el uso de Vectorizacin acelera esto an ms.
Qu es la vectorizacin?
Cuando se utiliza funcin Vectorizacin, que obtiene 1.000 filas a la vez en
lugar de 1 para su procesamiento. Por lo tanto, puede procesar hasta 3
veces ms rpido con menos tiempo de CPU. Esto se traduce en una mejor
utilizacin de clster. Es para abordar el problema de latencia en Hive por
un amplio uso de contenedores y la reutilizacin. Funcin Vectorizacin
funciona en tablas Hive con ORC nica Formato de archivo.

Paso 1:

Vamos a crear una tabla con formato de archivo ORC de la siguiente


manera:

Paso 2:
Ejecute la siguiente instruccin para permitir Tez.

Paso 3:
Ejecute la siguiente consulta.

Paso 4
Ahora vamos a ejecutar la siguiente consulta SQL:

Paso 5:
Ahora vamos a ejecutar los siguientes pasos para habilitar la vectorizacin:

y luego ejecutar la consulta SQL del paso anterior

Esta vez que se ejecuta con un plan de consulta vectorizado, que escala
muy bien sobre todo con grandes conjuntos de datos.

Paso 6:
Echemos un vistazo al plan de "explain" para confirmar que est de hecho
utilizando un plan de consulta vectorizado:

Tenga en cuenta que en el plan de explicar, el modo de ejecucin es


"vectorizada". Cuando esta funcin est desactivada, lo hars no ver la
misma lnea en el plan.

Potrebbero piacerti anche