You are on page 1of 21

INTRODUCCIN

Con el constante crecimiento de informacin en cada uno de los aspectos ms


relevantes mundialmente como sociedad, comercio y ciencia, se vuelve
necesario un cambio con respecto al manejo de la informacin, que hasta hace
poco tiempo se vena implementando a partir de bases de datos relacionales.
Si bien este esquema funcionaba para ambientes que almacenaban teras de
informacin con datos puntuales y que a travs de consultas SQL se poda
buscar la informacin requerida, se vuelve dispendioso y costoso al momento
de analizar un mayor volumen de informacin, en ambientes donde anualmente
se almacenan petas de todo tipo de datos, incluyendo aqu los no
estructurados, como archivos de video y audio; un ejemplo de esto es Google,
que recibe a diario trillones de bytes, con el objetivo de ofrecer muchos de los
servicios que actualmente se conocen como el mismo motor de bsqueda y
Google Earth. El manejo de grandes cantidades de informacin conlleva a
pensar en la implementacin de herramientas que permitan administrar y
gestionar este tipo de datos no estructurados y semi-estructurados, en la
bsqueda de patrones concurrentes para la toma de decisiones. Actualmente
se pueden encontrar tecnologas como Hadoop, MapReduce y bases de datos
NoSQL, que se pueden implementar en la creacin de un ambiente Big Data.
1. Planteamiento Metodolgico

1.1. Descripcin del Problema

La informacin sobre el comportamiento del pblico lector ha sido desde


siempre una de las aspiraciones de cualquier biblioteca, con objeto de
poder ajustar la oferta y la conformacin de las colecciones a las
prcticas de lectura de sus usuarios. Los datos con que contaba la
biblioteca para ello provenan, principalmente, de los obtenidos del
servicio de prstamo, y en menor medida de las desideratas de los
usuarios. La informacin obtenida de esta manera tena un carcter
elemental (n de prstamos, tipo de lectura, tiempo de devolucin, etc.)
que renda un servicio suficiente, teniendo en cuenta las limitaciones de
la toma de informacin, pero limitado para los propsitos del sistema. La
incorporacin de procedimientos de minera de datos (big data) gracias a
la gestin digital de los contenidos y a sus disponibilidad en formatos
electrnicos ha abierto un horizonte completamente nuevo para las
bibliotecas que estn en disposicin de trazar perfiles muy ajustados
sobre hbitos de lectura teniendo en cuenta parmetros analticos muy
pormenorizados.
La biblioteca est en la actualidad en disposicin de generar sistemas de
informacin complejos que doten de sentido las demandas de los
lectores, las respuestas a los mismos y las necesidades de los diferentes
agentes que participan en el ecosistema bibliotecario, en cuyo eje se
sita la biblioteca, tanto desde el punto de vista del suministro de
servicios como desde el de la generacin de informacin estratgica. La
toma de decisiones basada en datos, ha sido siempre una aspiracin de
cualquier biblioteca, ahora el problema no es la falta de datos, sino la
necesidad de saber gestionar y valorar los mismos teniendo en cuenta la
combinacin de volumen, variedad y velocidad que ahora adquieren.
1.2 Formulacin del Problema

1.2.1 Problema Principal


Indecisin en cmo mejorar los servicios prestados a los docentes y
estudiantes

1.2.2 Causas

1.2.3 Efectos
2. Objetivos

2.1 Objetivos Generales


Proponer e implementar una solucin para apoyar en la toma de

decisin para mejorar los servicios prestados por la Biblioteca


Central de la UNMSM usando BIG DATA.

2.2 Objetivos Especficos


Conocer los servicios prestados ms importantes por la Biblioteca
Central de la UNMSM.
Definir la arquitectura de la solucin BIG DATA.
Definir los reportes y dashboard para apoyar a la toma de
decisiones.
Definir el framework BIG DATA que se utilizar.

3. Justificacin
La importancia de desarrollar el proyecto radica en apoyar la bsqueda de
informacin para una mejor prestacin de servicios de la facultad para con sus
alumnos dentro de la comunidad universitaria.
As mismo, el proyecto contribuye y apoyar el aprendizaje de las nuevas
tendencias en la gestin de la informacin, fomentando de esta manera el
campo de investigacin dentro de la comunidad universitaria.

4. Delimitacin

4.1 Espacio.
El espacio para la realizacin del proyecto ser en la Facultad de Ingeniera de
Sistemas de la UNMSM, teniendo en cuenta que se busca implementar un
ambiente de pruebas y desarrollo para Big Data.
4.2 Tiempo.
El planteamiento, desarrollo e implementacin del proyecto ser realizado
durante 2 meses.

4.3 Alcance.
El alcance definido para el proyecto se ha divido en :

4.4 Alcance Mayor


El alcance de esta propuesta es proponer e implementar una solucin BIG
DATA para ayudar en la toma de las siguientes decisiones.

4.5 Alcance Menor (Piloto)


El alcance menor, propuesto para el piloto es:
El tiempo de duracin para el desarrollo de la solucin es 2 meses.
Se implementar:
Cuadro estadstico de material bibliogrfico ms prestado por categoras
y carreras.
Scraping para detectar que libros son lo ms buscados por los
estudiantes en el Per.
5. Marco terico

Big Data ha representado un movimiento revolucionario, en cuanto al manejo


de toda la informacin que hasta hace poco tiempo era poco probable se
pudiera analizar, con la inclusin de este concepto se puede pensar en el
procesamiento de datos del tipo no estructurado, como video, audio, sistemas
GPS y gran nmero de sensores ubicados en dispositivos mviles, automviles y
equipos industriales entre otros.

5.1 Definicin de Big Data.

Segn Gartner, Big data es una referencia a aquellos sistemas de informacin


que manejan conjuntos de datos de gran volumen, de alta velocidad, de
veracidad, de valor y de gran variedad de recursos, que demandan formas
rentables e innovadoras de procesamiento de la informacin para mejorar la
comprensin y la toma de decisiones.
Segn Gualtieri Big data es la solucin al crecimiento exponencial de los datos,
en el momento en que se hace difcil su administracin con respecto al
almacenamiento, procesamiento y acceso.
De esto se puede obtener beneficios como:
Optimizar el clculo y la precisin algortmica para reunir, analizar,
enlazar y comparar conjuntos de grandes datos.
Identificar patrones para la toma de decisiones en los mbitos
econmico, social, tcnico y legal.
La mayora de las definiciones que se pueden encontrar de Big data estn
enfocadas al volumen de los datos, al almacenamiento de dicha informacin, de
esto se puede concluir que el volumen importa pero que tambin existen otros
atributos importantes de Big data, estos son: la velocidad, la veracidad, la
variedad y el valor. Estos cinco aspectos constituyen una definicin
comprensiva y adems destruyen el mito acerca de que Big data se trata
nicamente del volumen. A cada uno de estos aspectos se le atribuyen las
siguientes caractersticas:
5.2 Atributos de Big Data

Volumen Velocidad Variedad Veracidad Valor

Almacenamiento en Integridad y
Por lotes Estructurado Estadsticas
Terabytes autenticidad
Tiempo No Origen y
Registros Eventos
cercano estructurado reputacin
Tiempo
Transacciones Multi-factor Disponibilidad Correlaciones
cercano

Tablas y archivos Procesos Probabilstica Responsabilidad Hiptesis

Fuente: UNIVERSITY OF AMSTERDAM. Defining the Big Data Architecture Framework [en
lnea]. msterdam: Yuri Demchenko [citado 22 septiembre, 2013].

Segn Barranco con el paso del tiempo, las empresas han fomentado la
creacin de nuevas estrategias para la toma de decisiones, dando un
importante lugar al anlisis predictivo, ya que con esto se han podido
determinar diversos tipos de patrones entre la sociedad, generando como
consecuencia gran cantidad de beneficios consistentes en la innovacin,
investigacin y desarrollo de nuevas soluciones.
La generacin de estos datos en los ltimos aos ha venido creciendo de
manera inmensurable y se proyecta a seguirlo haciendo, por tal motivo es que
Big data se convertir en uno de los principales aspectos a tener en cuenta
dentro de los mbitos comercial, cientfico y social, todo debido al gran impacto
econmico e innovador que este ha representado.
Lo anterior se puede ver reflejado en una recopilacin de estadsticas nombrada
A comprehensive list of Big data statistics, donde se exponen algunos
puntos del porqu la importancia de Big data, algunos de ellos son:
Actualmente en el mundo digital existen 2.7 zetabytes de datos.

El gobierno estadounidense invierte cerca de 200 millones de dlares en


investigacin sobre Big data.

La red social Facebook almacena, registra y analiza diariamente 30 petabytes de


datos, 94% de los usuarios de Hadoop realiza anlisis de grandes volmenes de
informacin que antes no se poda analizar.
Descifrar el genoma humano tard cerca de 10 aos, actualmente ese proceso
se puede realizar en una semana.

5.3 Evolucin de Big Data.


Big Data ha demostrado tener un crecimiento exponencial en los ltimos aos.
Su historia se remonta al nacimiento de las primeras herramientas informticas
que llegaron en 1940. En esta misma dcada comenzaron a aparecer programas
que eran capaces de predecir posibles escenarios futuros. Por ejemplo, el
equipo del Proyecto Manhattan (1944) que realizaba simulaciones por
ordenador para predecir el comportamiento de una reaccin nuclear en
cadena.
Segn Artaza15, no fue hasta la dcada de los 70 en la que se populariz el
anlisis de datos. En 1978 se crea Black-Scholes, un modelo matemtico que
permita predecir el precio de acciones futuras. Con la llegada de Google en
1998 y el desarrollo de algoritmos para mejorar las bsquedas en la web, se
produce el estallido de Big Data.
Con la entrada del nuevo siglo, este concepto se acua y recoge todo el
significado que se le otorga en la actualidad. Segn los analistas, hoy en da se
generan 2,5 trillones de bytes relaciones con el Big Data. Adems, cada vez son
ms demandados aquellos perfiles profesionales que sean capaces de gestionar
herramientas de anlisis.

5.4 Arquitectura de Big Data.


La gestin y procesamiento de Big Data es un problema abierto y vigente que
puede ser manejado con el diseo de una arquitectura de 5 niveles, la cual est
basada en el anlisis de la informacin y en el proceso que realizan los datos
para el desarrollo normal de las transacciones. A continuacin se pueden ver los
niveles que contienen un ambiente Big Data y la forma en que se relacionan e
interactan entre ellos:
5.5 Arquitectura de un ambiente de big data
5.3.1 Ingreso de datos.
El Ingreso de datos es el procedimiento de obtener e importar
informacin para su posterior uso o almacenamiento en una base de
datos. Consiste en coleccionar datos de muchas fuentes con el objetivo
de realizar un anlisis basado en modelos de programacin.

5.3.2 Gestin de datos.


La administracin de datos es el desarrollo y ejecucin de arquitecturas,
polticas, prcticas y procedimientos con el fin de gestionar las
necesidades del ciclo de vida de informacin de una empresa de una
manera eficaz. Es un enfoque para administrar el flujo de datos de un
sistema a travs de su ciclo de vida, desde su creacin hasta el momento
en que sean eliminados. La administracin de Big data es la forma en que
se organizan y gestionan grandes cantidades de datos, tanto de
informacin estructurada como no estructurada para desarrollar
estrategias con el fin de ayudar con los conjuntos de datos que crecen
rpidamente, donde se ven involucrados terabytes y hasta peta bytes de
informacin con variedad de tipos.

5.3.3 Tiempo real de procesamiento.


Segn Halim, es un proceso que automatiza e incorpora el flujo de datos
en la toma de decisiones, este aprovecha el movimiento de los datos
para acceder a la informacin esttica y as lograr responder preguntas a
travs de anlisis dinmicos. Los sistemas de procesamiento de flujo se
han construido con un modelo centrado que funciona con datos
estructurados tradicionales, as como en aplicaciones no estructuradas,
como vdeo e imgenes.
El procesamiento de flujos es adecuado para aplicaciones que tiene tres
caractersticas: calcular la intensidad (alta proporcin de operaciones de
E/S), permitir paralelismo de datos y por ltimo la capacidad de aplicar
los datos que se introducen de forma continua.

5.3.4 Anlisis de datos.


Es el proceso de examinar grandes cantidades de datos para descubrir
patrones ocultos, correlaciones desconocidas y otra informacin til.
Esta informacin puede proporcionar ventajas competitivas y resultar en
beneficios para el negocio, como el marketing para generar mayores
ingresos.

5.6 Bases de datos NoSQL.

Con la aparicin del trmino NoSQL en los 90s y su primer uso en el 2009 por
Eric Vans, se pretende dar una solucin a las problemticas planteadas
anteriormente, dando una posibilidad de abordar la forma de gestionar la
informacin de una manera distinta a como se vena realizando.

Para dar una definicin adecuada de las bases de datos NoSQL se pude tener
en cuenta las siguientes caractersticas:
Distribuido. Sistemas de bases de datos NoSQL son a menudo
distribuidos donde varias mquinas cooperan en grupos para ofrecer a
los clientes datos. Cada pieza de los datos se replica normalmente
durante varias mquinas para la redundancia y alta disponibilidad.

Escalabilidad horizontal. A menudo se pueden aadir nodos de forma


dinmica, sin ningn tiempo de inactividad, lo que los efectos lineales de
almacenamiento logran capacidades de procesamiento general.

Construido para grandes volmenes. Muchos sistemas NoSQL fueron


construidos para ser capaz de almacenar y procesar enormes cantidades
de datos de forma rpida.

Modelos de datos no relacionales. Los modelos de datos varan, pero


en general, no son relacionales. Por lo general, permiten estructuras ms
complejas y no son tan rgidas que el modelo relacional.

No hay definiciones de esquema. La estructura de los datos


generalmente no se define a travs de esquemas explcitos que la base
de datos maneja. En su lugar, los clientes almacenan datos como deseen,
sin tener que cumplir con algunas estructuras predefinidas.
Dentro de las bases de datos NoSQL se pueden encontrar 4 categoras de
acuerdo con la taxonoma propuesta por Scofield y Popescu25:
5.4.1 Almacenes Key-Value. Estas son las bases de datos ms simples
en cuanto su uso (la implementacin puede ser muy complicada), ya que
simplemente almacena valores identificados por una clave.
Normalmente, el valor guardado se almacena como un arreglo de bytes
(BLOB) y es todo. De esta forma el tipo de contenido no es importante
para la base de datos, solo la clave y el valor que tiene asociado.

5.4.2 Bases de datos columnares. Estas bases de datos guardan la


informacin en columnas en lugar de renglones, con esto se logra una
mayor velocidad en realizar la consulta. Esta solucin es conveniente en
ambientes donde se presenten muchas lecturas como en data
warehouses y sistemas de Business Intelligence.

5.4.3 Bases de datos orientadas a documentos. Segn Camacho28,


son como un almacn Key-Value, a diferencia que la informacin no se
guarda en binario, sino como un formato que la base de datos pueda
leer, como XML, permitiendo realizar consultas avanzadas sobre los datos
almacenados.

5.4.4 Bases de datos orientados a grafos. Estas bases de datos manejan la


informacin en forma de grafo, dando una mayor importancia a la relacin que
tiene los datos. Con esto se logra que las consultas puedan ser logradas de
formas ms ptimas que en un modelo relacional.
A continuacin se presenta un cuadro comparativo sobre el desempeo de las
taxonomas descritas anteriormente.
Dentro de la arquitectura de un ambiente Big Data se pueden utilizar diferentes
herramientas, cada una de estas cumple un papel importante para la
implementacin. A continuacin se realiza una descripcin de cada una de las
tecnologas que estn incluidas en la arquitectura.

5.7 Hadoop.
Es un framework que permite el procesamiento distribuido de grandes
conjuntos de datos a travs de grupos de ordenadores que utilizan
modelos de programacin simple. Est diseado para detectar y
controlar los errores en la capa de aplicacin.
Apache Hadoop tiene dos componentes centrales, el almacenamiento
de archivos llamado Hadoop Distributed File System (HDFS), y la
infraestructura de programacin llamada MapReduce.

5.8 Arquitectura HADOOP

5.9 MapReduce.
El modelo de programacin MapReduce se basa en dos funciones llamadas
Map y Reduce. La entrada a dicho modelo es un conjunto de pares clave/valor y
la salida es otro conjunto de pares clave/valor.

Funcin Map. A partir del conjunto de pares clave/valor de entrada se genera


un conjunto de datos intermedios. La funcin Map asocia claves idnticas al
mismo grupo de datos intermedios. Cada grupo de datos intermedios estar
formado por una clave y un conjunto de valores por lo tanto, estos datos
intermedios van a ser a su vez la entrada de la funcin de Reduce.

Funcin Reduce. La fase de Reduce se encargar de manipular y combinar los


datos provenientes de la fase anterior para producir a su vez un resultado
formado por otro conjunto de claves/valores.

Una fase intermedia es la denominada Shuffle la cual obtiene las tuplas del
proceso Map y determina que nodo procesar estos datos dirigiendo la salida a
una tarea Reduce en especfico.
La siguiente figura da un ejemplo del flujo de datos en un proceso sencillo de
MapReduce.
5.10 Proceso MapReduce

5.11 HDFS.
Es el sistema de ficheros distribuido utilizado por Hadoop. Por lo tanto est
especialmente diseado para cumplir con las necesidades propias de Hadoop.
Las dos ideas principales de HDFS es por un lado que sea un sistema de ficheros
que facilite una alta escalabilidad tolerante a fallos. Por otro lado Hadoop
necesita que los problemas que se estn intentando solucionar involucren un
gran nmero de datos. HDFS debe garantizar un alto rendimiento de datos para
que Hadoop sea capaz de procesar.
A continuacin se puede observar la arquitectura que presenta HDFS con sus
respectivos componentes
5.12 Chukwa.
Es un sistema de recopilacin de datos de cdigo abierto para el seguimiento
de grandes sistemas distribuidos. Se construye en la parte superior del sistema
de archivos distribuido Hadoop (HDFS) y Map/Reduce. Chukwa tambin incluye
un conjunto de herramientas flexibles para la visualizacin, seguimiento y
anlisis de resultados de los datos recogidos.
La siguiente figura muestra la interaccin de Chukwa con las otras tecnologas y
la funcin que tiene dentro de los procesos de datos.

5.13 Sqoop.
Es una herramienta diseada para transferir datos entre Hadoop y bases de
datos relacionales. Sqoop importa los datos de un sistema de gestin de bases
de datos relacionales (RDBMS) como MySQL u Oracle al sistema de archivos
distribuido Hadoop (HDFS), donde transforma los datos y luego los exporta de
nuevo a un RDBMS.

Sqoop automatiza la mayor parte de este proceso, basndose en la base de


datos para describir el esquema de importacin de los datos. Sqoop utiliza
MapReduce para importar y exportar los datos, lo que proporciona el
funcionamiento en paralelo, as como tolerancia a fallos.
5.14 Flume.
Es un servicio distribuido, confiable y disponible para recolectar, agregar y
mover grandes cantidades de datos de registro eficientemente. Cuenta con una
arquitectura simple y flexible basada en transmisin de flujos de datos. Es
robusto y tolerante a fallos con los mecanismos de fiabilidad, conmutacin por
error y los mecanismos de recuperacin. Se utiliza un modelo de datos
extensible simple que permite una aplicacin analtica en lnea, el cual se puede
ver en la siguiente figura.

5.15 Avro.
Es un sistema de serializacin de datos; contiene lo siguiente:
Estructuras de datos.
Formato de datos binario.
Un archivo contenedor para almacenar datos persistentes.
Llamada a procedimiento remoto (RPC).
Fcil integracin con lenguajes dinmicos. La generacin de cdigo no
est obligada a leer y escribir archivos de datos ni a utilizar o
implementar protocolos RPC.

Cuando los datos de Avro se almacenan en un archivo, su esquema se


almacena con l, para que los archivos se puedan procesar posteriormente con
cualquier programa. Si el programa de lectura de los datos espera un esquema
diferente esto puede ser fcilmente resuelto, ya que ambos esquemas estn
presentes.
5.16 Hive.
Es la infraestructura de almacenamiento de datos construida sobre Apache
Hadoop para proporcionar el resumen de datos, consultas ad-hoc y anlisis de
grandes conjuntos de datos. Proporciona un mecanismo para proyectar en la
estructura de los datos en Hadoop y consultar los datos utilizando un lenguaje
similar a SQL llamado HiveQL (HQL). Hive facilita la integracin entre Hadoop y
herramientas para la inteligencia de negocios y la visualizacin. Hive permite al
usuario explorar y estructurar los datos, analizarlos y luego convertirla en
conocimiento del negocio.
Estas son algunas de las caractersticas de Hive:

Cientos de usuarios pueden consultar simultneamente los datos


utilizando un lenguaje familiar para los usuarios de SQL.

Los tiempos de respuesta son tpicamente mucho ms rpido que otros


tipos de consultas sobre el mismo tipo de conjuntos de datos.

Controladores JDBC y ODBC, aplicaciones para extraer datos. Hive


permite a los usuarios leer los datos en formatos arbitrarios, usando
SerDes y entrada / Formatos de salida.

5.17 Pig.
Es una plataforma para el anlisis de grandes conjuntos de informacin que
consiste en un lenguaje de alto nivel para la expresin de los programas de
anlisis de datos, junto con la infraestructura necesaria para la evaluacin de
estos programas. La propiedad ms importante es que su estructura es
susceptible de paralelismo, que a su vez les permite manejar grandes conjuntos
de datos.
En la actualidad, la capa de infraestructura de Pig se compone de un
compilador que produce secuencias de programas de Mapa-Reduce, para el
que ya existen implementaciones paralelas a gran escala (por ejemplo, el
Hadoop subproyectos).
Pig posee las siguientes caractersticas:
Facilidad de programacin. Es trivial para lograr la ejecucin
paralela de tareas de anlisis simples. Las tareas complejas
compuestas de mltiples transformaciones de datos relacionados
entre s, estn codificados explcitamente como secuencias de
flujo de datos, lo que hace que sean fciles de escribir, entender y
mantener.
Oportunidades de optimizacin. La forma en que se codifican las
tareas permite que el sistema pueda optimizar su ejecucin de
forma automtica, lo que permite al usuario centrarse en la
semntica en lugar de la eficiencia.

5.18 Arquitectura
La arquitectura elegida para la solucin es la ARQUITECTURA
LAMBDA
Conclusiones
La Biblioteca Central de la UNMSM no conoce cmo mejorar los
servicios prestados a docentes y estudiantes, por tanto se plantea una
solucin BIG DATA, que permita el apoyo en la toma decisiones a travs
de cuadros.
El alcance menor propuesto es el apoyo en la toma de decisin de
adquisicin de material bibliogrfico a travs de cuadros estadsticos de
prstamos por categoras y carreras e implementacin de un servicio de
scripting para conocer los libros ms buscados por los estudiantes del
Per.

You might also like