Está en la página 1de 44

BIG DATA

El fenmeno del Big Data tambin es llamado datos a gran escala. En los
textos cientficos en espaol con frecuencia se usa directamente el trmino
en ingls Big Data, Big data: La revolucin de los datos masivos

Hadoop

El sistema ms utilizado en esta industria para ofrecer capacidades


analticas avanzadas es Hadoop, un software de cdigo abierto, cuyo
desarrollo
coordina
la
Apache
Foundation,
que
facilita
el
almacenamiento de informacin y permite hacer consultas complejas
sobre las bases de datos existentes, resolvindolas con rapidez.

Cmo funciona Hadoop

La plataforma de cdigo abierto dispone de un sistema para almacenar informacin en el que sta se replica
en varias mquinas, distribuyndose de tal manera que si una mquina se cae no se pierdan los datos.
Si es necesario aadir ms informacin se aaden ms servidores sin que haya problemas de compatibilidad
o reorganizacin de los datos.

Al igual que ocurre con Linux, cualquiera puede tomar Hadoop, empaquetarlo y ofrecerlo como una
distribucin de la plataforma. Son varias las compaas que comercializan este tipo de solucin y uno de sus
principales atractivos es el algoritmo de procesamiento y bsquedas: MapReduce. Esta herramienta permite
hacer consultas a una base de datos inmensa y obtener respuestas rpidas. Es capaz de enviar una
orden a cada mquina para que busque en su disco duro, recolectar todas las contestaciones y ordenarlas
para resolver la consulta.

MapReduce puede resolver con xito cargas de trabajo de gran complejidad, como el procesamiento del
lenguaje humano o el aprendizaje de las mquinas. Pero no es el nico algoritmo que se puede utilizar.
Recientemente ha aparecido la versin 2.0 de Hadoop, que permite construir otros algoritmos y utilizar otros
lenguajes, lo que es un estmulo para los desarrolladores.

Existen plataformas que compiten con Hadoop en el escenario de big data, aunque el elefante amarillo
de momento ha tomado la delantera a todas ellas. El proyecto Spark, tambin de cdigo abierto, avanza a
marchas forzadas con el apoyo de Yahoo, quien estuvo involucrado en el desarrollo de su rival. Las soluciones
de HPCC Systems y Pervasive Software son otras de las propuestas que flotan en el mercado.

Hortonworks

Fundada en 2011 por 24 ingenieros del equipo original de Hadoop en Yahoo!.

En Nasdaq figura como HDP.

Su modelo de negocios son suscripciones de soporte de software de cdigo abierto,


entrenamiento y servicios de consultora.

En el Q2 de 2015 se suscribieron 119 clientes, en los 12 Q anteriores se suscribieron


556, lo que denota el crecimiento en la plataforma de data.

El soporte sobre el software es 7x24, web global y soporte telefnico.

Hoy hay ms de 1.350 ingenieros adjuntos, reseller estratgicos e integradores de


sistemas y tecnologas.

Cuentan con 745 empleados (a mitad de 2015) y tienen operaciones globales en 17


pases.

Tienen relaciones de ingeniera con empresas como Red Hat, EMC, Teradata, SAP,
Microsoft, SAS, HP, entre otras.

Qu es Hortonworks: Open
Enterprise Hadoop?

Continuacin

Apache Hadoop es un framework de cdigo libre para almacenamiento distribuido y


procesamiento de grandes conjuntos de datos en hardware estndar. Hadoop permite a las
organizaciones una rpida vista a profundidad desde masivos montos de data estructurada y
no estructurada. Numerosos proyectos de Apache Software Foundation engrosaron los
servicios requeridos por las empresas que requeran desplegar, integrar y trabajar con
Hadoop:

Data Management: almacena y procesa vastas cantidades de data en una capa de


almacenamiento que puede crecer linealmente.

Data Access: interacta con su data desde una amplia variedad de formas en lotes hasta en
tiempo real.

Data Governance & Integration: carga rpida y fcilmente los datos y administra segn la
poltica establecida.

Seguridad: direcciona requerimientos de autenticacin, autorizacin, cuentas y proteccin de


data.

Operaciones: provisiona, administra, monitorea y opera el cluster de Hadoop en escala.

Cloudera vs Hortonworks
La distribucin de Cloudera (CDH) fue la
primera en aparecer en el mercado,
combinando Big Data y Hadoop. CDH no solo
incluye el ncleo de Hadoop (HDFS,
MapReduce) sino que tambin integra
diversos proyectos de Apache (HBase,
Mahout, Pig, Hive, etc.). CDH es 100% opensource, y cuenta con una interfaz grfica
propietaria, Cloudera Manager, para la
administracin y gestin de los nodos del
clster Hadoop. La descarga es totalmente
gratuita. No obstante, tambin cuenta con
una versin empresarial, que incluye una
interfaz
ms
sofisticada.
Cloudera
recientemente ha estrechado vnculos tanto
con IBM como con Oracle. En la siguiente
ilustracin, se muestra la arquitectura de la
distribucin CDH:

Continuacion

Otra alternativa al Big Data y Hadoop es


Hortonworks.
A
diferencia
de
Cloudera,
Hortonworks es una de las distribuciones ms
recientes de Hadoop (HDP). Al igual que CDH,
HDP es totalmente open-source, incluye las
herramientas que forman el ncleo de Hadoop, y
por supuesto tambin incorpora diferentes
proyectos open-source de Apache. Para ms
detalles, la siguiente ilustracin muestra la
arquitectura de HDP:

Una de las diferencias ms notables respecto a


Cloudera es la integracin de Apache Ambari
como herramienta de gestin y administracin
del clster. A diferencia del Cloudera Manager,
Apache Ambari no es propietario. Sin embargo,
el nivel de madurez de la herramienta de gestin
de Cloudera es superior a la de Hortonworks.
Como partners ms cercanos, cuenta con
Microsoft e Informatica.

Datawharehouse
Un Datawarehouse es una base de datos corporativa que se caracteriza por integrar y depurar
informacin de una o ms fuentes distintas, para luego procesarla permitiendo su anlisis desde
infinidad de pespectivas y con grandes velocidades de respuesta. La creacin de un datawarehouse
representa en la mayora de las ocasiones el primer paso, desde el punto de vista tcnico, para
implantar una solucin completa y fiable de Business Intelligence.

InfiniDB

InfiniDB es un SGDB desarrollado por Calpont Corporation. Est


orientado a columnas (multidimensional) y ha sido diseado
principalmente para estos escenarios:

Data warehouse, data mart, business intelligence (BI) y bases de datos


analticas

Secciones de lectura intensiva de una aplicacin para efectuar las


acciones de lectura/bsqueda/consulta mediante una base de datos
analtica, mientras que las partes transaccionales acceden mediante
una base de datos relacional.

Caracteristicas

En general, InfiniDB funciona bien en entornos con volumen de datos media-alto en los que se requiere un corto tiempo de respuesta.

Incluye las siguientes caractersticas:

Arquitectura orientada a columnas: frente al formato habitual de filas, InfiniDB est diseada en columnas por lo que resulta ms adecuada para aplicaciones de lectura
intensa.

Diseo multi-hilo: puede as hacer uso del hardware actual que incorpora CPUs multi-core. Ms CPUs y/o cores permiten a InfiniDB incrementar las prestaciones sin tener
que modificar la aplicacin.

Particionado automtico, tanto vertical como horizontal: adems de estar orientada a columnas, InfiniDB tambin usa cierta forma de particionado horizontal por rango
que no requiere asignacin ni diseo de esquema. Usando ambos particionados, InfiniDB puede reducir la entrada y salida tanto en el sentido de filas como de columnas.

Alta concurrencia: los lmites en cuanto a concurrencia de InfiniDB slo estn restringidos por la capacidad del servidor; no hay lmites tericos.

Carga de datos de alta velocidad: con el fin de cargar datos rpidamente, una utilidad con ese fin est disponible.

Soporte DML: adicionalmente a la carga de datos rpida, InfiniDB soporta plenamente las operaciones DML (INSERT, UPDATE, DELETE).

Soporte transaccional: proporciona transaciones con caractersticas ACID as como deteccin de bloqueos (deadlocks).

Recuperacin frente a cadas: tiene capacidad de recuperacin.

diseo MVCC: soporta multiversion concurrency control o lectura de instantneas por lo que las sentencias nunca bloquean una tabla.

No se necesita indexado: al usar de forma transparente el particionado vertical y horizontal (lgico) no se necesita indexacin.

Bajo manteniemiento: adems de eliminar la necesidad de indexar las tablas, InfiniDB no necesita objetos como vistas materializadas ni tablas sumario para ganar
velocidad.

Soporta ALTER TABLE (ADD, DROP).

Portabilidad de platforma: funciona en todas las distribuciones con ms difusin de Linux y de Windows.

Compresin de datos lgica: usa compresin de datos transparente para el almacenamiento.

Diagnstico de prestaciones: para ajustar las prestaciones, InfiniDB proporciona anlisis SQL y herramientas para diagnosticar SQL defectuoso.

Frontal MySQL: se puede configurar como mecanismo de almacenamiento de MySQL, y utilizar su interfaz de usuario. Esto permite a cualquiera familiar con MySQL
conseguir productividad inmediata.

Funciona sobre HW convencional: no se requiren mquinas especiales para ejecutar InfiniDB.

Sin cargo por licencia: InfiniDB Community es grtis para todo uso.

Compatible con herramientas BI: usa conectores MySQL estndar y soporta todas las herrameintas BI compatibles con MySQL.

Oracle

Oracle Database es un sistema de gestin de base de datos de tipo


objeto-relacional (ORDBMS, por el acrnimo en ingls de ObjectRelational Data Base Management System), desarrollado por
Oracle Corporation.

Se considera a Oracle Database como uno de los sistemas de bases de


datos ms completos, destacando: soporte de transacciones,
estabilidad, escalabilidad, y soporte multiplataforma

Caracteristicas

Oracle Database 11g (Nuevas caractersticas)

Con bases de datos que triplican su tamao cada dos aos, los departamentos de IT se enfrentan tanto a los desafos nuevos como a los ya conocidos: Cmo mantener
los niveles adecuados de servicio al usuario en caso de que se produzcan fallas en el sitio, en el almacenamiento o en el servidor? Cmo evitar la violacin de datos y
garantizar el cumplimiento regulatorio? Cmo almacenar, administrar y proteger todo tipo de informacin, e incluso integrarla fcilmente en las operaciones
comerciales rutinarias? Cmo escalar los amplios sistemas transaccionales y de depsito de datos mientras se asegura el cumplimiento, la confiabilidad y la capacidad
de administracin? Y cmo actualizar el software y el hardware mientras se minimizan los riesgos de cambio? Oracle lo ayuda a abordar estos desafos con una amplia
variedad de nuevas caractersticas y mejoras en Oracle Database 11g. Al extender la capacidad exclusiva de Oracle para brindar los beneficios de grid computing,
Oracle Database 11g le permite mejorar los niveles de servicio al cliente, reducir el tiempo de baja, y hacer un uso ms efectivo de los recursos de IT mientras aumenta
el desempeo, la escalabilidad y la seguridad de sus aplicaciones 24/7.

Las caractersticas relacionadas con la capacidad de administracin en Oracle Database 11g estn diseadas para ayudar a las empresas a administrar fcilmente los
grids de infraestructura y cumplir exitosamente con las expectativas del nivel de servicio al usuario. Las nuevas caractersticas y mejoras en la capacidad de
administracin de Oracle Database11g ayudan a aumentar la productividad de los DBA y reducir los costos de administracin, mientras aumenta el desempeo, la
escalabilidad y la seguridad de sus aplicaciones comerciales durante las 24 horas.

Protege los sistemas de todas las causas comunes relacionadas con el tiempo de baja planificado y no planificado, con inclusin de las fallas en el sitio, en el
almacenamiento y en el servidor, as como de una de las causas ms importantes, el error humano.

Permite a su empresa aumentar fcilmente los amplios sistemas transaccionales y de depsito de datos, y brinda rpido acceso 24/7 a los datos utilizando
almacenamiento modular de bajo costo. Las nuevas e innovadoras caractersticas de desempeo de Oracle Database11g ayudan a los administradores a administrar
eficientemente la carga de informacin en todo el ciclo de vida de las bases de datos al optimizar los recursos de almacenamiento de acuerdo con la demanda, adems
brinda una plataforma segura y escalable para el acceso confiable y rpido a todo tipo de informacin utilizndolas interfaces estndar del sector. Permite una slida
administracin del contenido para tipos avanzados de datos )como XML, spatial, multimedia, medical imaging, y tecnologas semnticas)lo cual representa un rea de
gran crecimiento para muchas empresas.

Incluye muchas nuevas mejoras y caractersticas para integrar mejor los datos de toda la empresa, reduciendo as los costos de administracin de contenido y
aumentando la productividad de los empleados. Con 30 aos de prcticas seguras, Oracle Database11g lo ayuda a proteger su informacin y garantizar el cumplimiento
regulatorio con una gran cantidad de slidas capacidades de seguridad, mejora las capacidades de data warehousing y business intelligence de Oracle para optimizar la
capacidad de administracin, logrando que las tecnologas avanzadas como el procesamiento analtico y la extraccin de datos online sean fcilmente accesibles para
los usuarios.

Proporciona una sola plataforma integrada que ofrece alto desempeo y escalabilidad, y brinda soporte de todas las tecnologas principales actualmente utilizadas por
los desarrolladores de aplicaciones.

Incorpora nuevas capacidades para los entornos de desarrollo de aplicaciones ms importantes, permitiendo acortar el tiempo de llegada al mercado y mejorar el
desempeo de las aplicaciones.

Oracle ha solucionado problemas relacionados con la administracin de la informacin en sectores gubernamentales y empresas internacionales durante ms de tres
dcadas, logrando que nuestra base de datos se transforme en el software ms conocido del mundo respecto de la recopilacin, administracin y proteccin de la
informacin.

Minera de Datos
La minera de datos o exploracin de datos (es la etapa de anlisis de
"Knowledge Discovery in Databases" o KDD) es un campo de la estadstica y las
ciencias de la computacin referido al proceso que intenta descubrir patrones en
grandes volmenes de conjuntos de datos.

WEKA

Weka (Waikato Environment for Knowledge Analysis, en espaol


entorno para anlisis del conocimiento de la Universidad de Waikato)
es una plataforma de software para el aprendizaje automtico y la
minera de datos escrito en Java y desarrollado en la Universidad de
Waikato.

Caracteristicas
Esta es una herramienta muy verstil que soporta muchas tareas estndar de la minera de datos
en especial tareas de procesamiento de datos, regresin, clasificacin, clusterin entre otras,
as mismo permite la visualizacin y la seleccin de los datos.
Todas las tcnicas en WEKA estn basadas en la suncin de datos que estn
disponibles en un fichero plano o una relacin, en donde cada registro de datos
esta descrito por un nmero fijo de atributos nominales o numricos.
Permite el acceso a otras instancias de bases de datos por medio de SQL, gracias al
JDBC, adems puede procesar un resultado generado a base de una consulta hecha a una base de datos.

RapidMiner

RapidMiner (anteriormente, YALE, Yet Another Learning Environment)


es un programa informtico para el anlisis y minera de datos. Permite
el desarrollo de procesos de anlisis de datos mediante el
encadenamiento de operadores a travs de un entorno grfico. Se usa
en investigacin educacin, capacitacin, creacin rpida de prototipos
y en aplicaciones empresariales.

Caractersticas

Desarrollado en Java.

Multiplataforma.

Representacin interna de los procesos de anlisis de datos en ficheros XML.

Permite el desarrollo de programas a travs de un lenguaje de script.

Puede usarse de diversas maneras:

A travs de un GUI.

En lnea de comandos.

En batch (lotes).

Desde otros programas a travs de llamadas a sus bibliotecas.

Extensible.

Incluye grficos y herramientas de visualizacin de datos.

Dispone de un mdulo de integracin con R.

Bases de datos NoSQL


En informtica, NoSQL (a veces llamado "no slo SQL") es una amplia clase de sistemas de gestin de bases de datos
que difieren del modelo clsico del sistema de gestin de bases de datos relacionales (RDBMS) en aspectos importantes, el
ms destacado es que no usan SQL como el principal lenguaje de consultas. Los datos almacenados no requieren
estructuras fijas como tablas, normalmente no soportan operaciones JOIN, ni garantizan completamente ACID (atomicidad,
consistencia, aislamiento y durabilidad), y habitualmente escalan bien horizontalmente. Los sistemas NoSQL se denominan
a veces "no slo SQL" para subrayar el hecho de que tambin pueden soportar lenguajes de consulta de tipo SQL.

MongoDB

MongoDB (de la palabra en ingls humongous que significa enorme) es un sistema de


base de datos NoSQL orientado a documentos, desarrollado bajo el concepto de
cdigo abierto.

MongoDB forma parte de la nueva familia de sistemas de base de datos NoSQL. En lugar
de guardar los datos en tablas como se hace en las base de datos relacionales, MongoDB
guarda estructuras de datos en documentos similares a JSON con un esquema dinmico
(MongoDB utiliza una especificacin llamada BSON), haciendo que la integracin de los
datos en ciertas aplicaciones sea ms fcil y rpida.

El desarrollo de MongoDB empez en octubre de 2007 por la compaa de software


10gen.1 Ahora MongoDB es una base de datos lista para su uso en produccin y con
muchas caractersticas (features). Esta base de datos se utiliza mucho en la industria 2 ,
contando con implantaciones en empresas como MTV Network, 3 Craiglist4 o Foursquare5 .

El cdigo binario est disponible para los sistemas operativos Windows, Linux, OS X y
Solaris.

Caracteristicas

Lo siguiente es una breve descripcin de las caractersticas principales de MongoDB:

Consultas Ad hoc

MongoDB soporta la bsqueda por campos, consultas de rangos y expresiones regulares. Las consultas pueden devolver un campo especfico del documento pero tambin puede ser una funcin JavaScript definida por el
usuario.

Indexacin

Cualquier campo en un documento de MongoDB puede ser indexado, al igual que es posible hacer ndices secundarios. El concepto de ndices en MongoDB es similar a los encontrados en base de datos relacionales.

Replicacin

MongoDB soporta el tipo de replicacin primario-secundario. Cada grupo de primario y sus secundarios se denomina replica set 14 . El primario puede ejecutar comandos de lectura y escritura. Los secundarios replican los
datos del primario y slo se pueden usar para lectura o para copia de seguridad, pero no se pueden realizar escrituras. Los secundarios tiene la habilidad de poder elegir un nuevo primario en caso de que el primario actual
deje de responder.

Balanceo de carga

MongoDB se puede escalar de forma horizontal usando el concepto de shard.15 El desarrollador elige una clave de sharding, la cual determina cmo sern distribuidos los datos de una coleccin. Los datos son divididos
en rangos (basado en la clave de sharding) y distribuidos a travs de mltiples shard. Cada shard puede ser una replica set. MongoDB tiene la capacidad de ejecutarse en mltiple servidores, balanceando la carga y/o
replicando los datos para poder mantener el sistema funcionando en caso que exista un fallo de hardware. La configuracin automtica es fcil de implementar bajo MongoDB y se pueden agregar nuevas servidores a
MongoDB con el sistema de base de datos funcionando.

Almacenamiento de archivos

MongoDB puede ser utilizado como un sistema de archivos, tomando la ventaja de la capacidad que tiene MongoDB para el balanceo de carga y la replicacin de datos utilizando mltiples servidores para el
almacenamiento de archivos. Esta funcin se llama GridFS16 y es mas bien una implementacin en los drivers, no en el servidor17 , por lo que est incluida en los drivers oficiales que la compaa de MongoDB desarrolla.
Estos drivers exponen funciones y mtodos para la manipulacin de archivos y contenido a los desarrolladores. En un sistema con mltiple servidores, los archivos pueden ser distribuidos y replicados entre los mismos y
de una forma transparente, de esta forma se crea un sistema eficiente que maneja fallos y balanceo de carga.

Agregacin

MongoDB proporciona un framework de agregacin que permite realizar operaciones similares a las que se obtienen con el comando SQL "GROUP BY". El framework de agregacin est construido como un pipeline en el
que los datos van pasando a travs de diferentes etapas en los cuales estos datos son modificados, agregados, filtrados y formateados hasta obtener el resultado deseado. Todo este procesado es capaz de utilizar ndices
si existieran y se produce en memoria. Asimismo, MongoDB proporciona una funcin MapReduce que puede ser utilizada para el procesamiento por lotes de datos y operaciones de agregacin.

Ejecucin de JavaScript del lado del servidor

MongoDB tiene la capacidad de realizar consultas utilizando JavaScript, haciendo que estas sean enviadas directamente a la base de datos para ser ejecutadas.

Cassandra

Apache Cassandra es una base de datos NoSQL distribuida y basada


en un modelo de almacenamiento de clave-valor, de cdigo abierto
que est escrita en Java. Permite grandes volmenes de datos en forma
distribuida. Por ejemplo, lo usa Twitter para su plataforma. Su objetivo
principal es la escalabilidad lineal y la disponibilidad. La arquitectura
distribuida de Cassandra est basada en una serie de nodos iguales que
se comunican con un protocolo P2P con lo que la redundancia es
mxima. Est desarrollada por Apache Software Foundation.

Cassandra ofrece soporte robusto para mltiples centros de datos1 , con


la replicacin asincrnica sin necesidad de un servidor maestro, que
permiten operaciones de baja latencia para todos los clientes.

Caracteristicas
Descentralizado
Todos los nodos del clster tiene el mismo rol. No hay un nico punto de fallo.
Los datos se distribuyen a travs del clster (por lo que cada nodo contiene datos diferentes).
No existe un nodo maestro por lo que cada nodo puede dar servicio a cualquier solicitud.
Soporta replicacin y replicacin de mltiples data center
Las estrategias de replicacin son configurables 22 . Cassandra est diseado como un sistema
distribuido, para el despliegue de un gran nmero de nodos a travs de mltiples centros de datos.
La arquitectura distribuida de Cassandra est diseado para desplegarse sobre mltiples data center,
tener redundancia y recuperarse ante desastres.
Escalabilidad
El rendimiento de leer y escribir aumenta linealmente a medida que se aaden nuevos nodos.
Se pueden agregar nuevos nodos sin necesidad de interrumpir la ejecucin de la aplicacin.
Tolerancia a fallos
Los datos se replican automticamente a mltiples nodos para recuperarse frente a fallos.
Cassandra soporta replicacin a travs de mltiples datacenter. Se puede reemplazar nodos que
presenten fallos sin tiempo de inactividad o interrupcin de la aplicacin.
Consistencia
Se ofrece la eleccin de el nivel de consistencia para las lecturas y escrituras.
Un ejemplo posible de consulta utilizando consistencia es el siguiente:
SELECT * FROM users WHERE state='TX' USING CONSISTENCY QUORUM

Redis

Redis es un motor de base de datos en memoria, basado en el


almacenamiento en tablas de hashes (clave/valor) pero que
opcionalmente puede ser usada como una
base de datos durable o persistente. Est escrito en ANSI C por
Salvatore Sanfilippo quien fue patrocinado por VMware1 2 y, a partir de
2013, por Pivotal Software.3 Est liberado bajo licencia BSD por lo que es
considerado software de cdigo abierto.

Modelo de datos

El modelo de datos de Redis se basa en la estructura de datos del tipo diccionario o


tabla de hashes que relaciona una llave a un contenido almacenado en un ndice.
La principal diferencia entre Redis y otros sistemas similares es que los valores no
estn limitados a ser de tipo string, otros tipos de datos estn soportados:

Listas (Lists) de strings

Sets de strings (colecciones de elementos desordenados no repetidos)

hashes donde la llave y el valor son del tipo string

El tipo de valor determina las operaciones (los comandos) que son disponibles.
Redis soporta operaciones atmicas de alto nivel del lado del servidor, como
inserciones, unions, y diferencias entre sets y listas ordenadas. Desde la versin
2.6, liberada a finales de octubre de 2012, se introduce una funcionalidad clave, la
posibilidad de ejecutar Scripts en el servidor Redis, escritos en lenguaje Lua.

Lenguajes de
programacin
El lenguaje R est orientado a estadsticas y es muy popular entre los mineros de datos. Es la
versin open source del lenguaje S, y nada difcil de aprender, asegura Laurence Bradford,
experta en carreras de tecnologa. Si quieres aprender a desarrollar programas estadsticos, R
es un lenguaje muy til, adems de permitirte manipular y organizar datos en grficas.

CUDA

CUDA son las siglas de Compute Unified Device


Architecture (Arquitectura Unificada de
Dispositivos de Cmputo) que hace referencia
tanto a un compilador como a un conjunto de
herramientas de desarrollo creadas por nVidia
que permiten a los programadores usar una
variacin del lenguaje de programacin C para
codificar algoritmos en GPU de nVidia.

Por medio de wrappers se puede usar Python,


Fortran y Java en vez de C/C++ y en el futuro
tambin se aadir FORTRAN, OpenGL y Direct3D.

Funciona en todas las GPU nVidia de la serie G8X


en adelante, incluyendo GeForce, Quadro, ION y
la lnea Tesla.1 nVidia afirma que los programas
desarrollados para la serie GeForce 8 tambin
funcionarn sin modificaciones en todas las
futuras tarjetas nVidia, gracias a la compatibilidad
binaria.

Ventajas

CUDA presenta ciertas ventajas sobre otros tipos de computacin sobre


GPU utilizando APIs grficas.

Lecturas dispersas: se puede consultar cualquier posicin de memoria.

Memoria compartida: CUDA pone a disposicin del programador un rea


de memoria de 16KB (o 48KB en la serie Fermi) que se compartir entre
threads. Dado su tamao y rapidez puede ser utilizada como cach.

Lecturas ms rpidas de y hacia la GPU.

Soporte para enteros y operadores a nivel de bit.

Limitaciones

No se puede utilizar recursividad, punteros a funciones, variables


estticas dentro de funciones o funciones con nmero de parmetros
variable

No est soportado el renderizado de texturas

En precisin simple no soporta nmeros desnormalizados o NaNs

Puede existir un Cuello de botella entre la CPU y la GPU por los anchos
de banda de los buses y sus latencias.

Los threads o Hilo de ejecucin, por razones de eficiencia, deben


lanzarse en grupos de al menos 32, con miles de hilos en total.

OpenGL

OpenGL (Open Graphics Library) es una especificacin estndar que


define una API multilenguaje y multiplataforma para escribir
aplicaciones que produzcan grficos 2D y 3D. La interfaz consiste en
ms de 250 funciones diferentes que pueden usarse para dibujar
escenas tridimensionales complejas a partir de primitivas geomtricas
simples, tales como puntos, lneas y tringulos. Fue desarrollada
originalmente por Silicon Graphics Inc. (SGI) en 19922 y se usa
ampliamente en CAD, realidad virtual, representacin cientfica,
visualizacin de informacin y simulacin de vuelo. Tambin se usa en
desarrollo de videojuegos, donde compite con Direct3D en plataformas
Microsoft Windows.

Especificaciones

Fundamentalmente OpenGL es una especificacin, es decir, un documento que describe un conjunto de funciones y el
comportamiento exacto que deben tener. Partiendo de ella, los fabricantes de hardware crean implementaciones, que son
bibliotecas de funciones que se ajustan a los requisitos de la especificacin, utilizando aceleracin hardware cuando es
posible. Dichas implementaciones deben superar unos tests de conformidad para que sus fabricantes puedan calificar su
implementacin como conforme a OpenGL y para poder usar el logotipo oficial de OpenGL.

Hay implementaciones eficientes de OpenGL para Mac OS, Microsoft Windows, GNU/Linux, varias plataformas Unix y
PlayStation 3. Existen tambin varias implementaciones en software que permiten ejecutar aplicaciones que dependen de
OpenGL sin soporte de aceleracin hardware. Es destacable la biblioteca de software libre / cdigo abierto Mesa 3D, una API
de grficos sin aceleracin hardware y completamente compatible con OpenGL. Sin embargo, para evitar los costes de la
licencia requerida para ser denominada formalmente como una implementacin de OpenGL, afirma ser simplemente una
API muy similar.

La especificacin OpenGL era revisada por el OpenGL Architecture Review Board (ARB), fundado en 1992. El ARB estaba
formado por un conjunto de empresas interesadas en la creacin de una API consistente y ampliamente disponible. Microsoft
, uno de los miembros fundadores, abandon el proyecto en 2003.

El 21 de septiembre de 2006 se anunci que el control de OpenGL pasara del ARB al Grupo Khronos.3 Con ello se intentaba
mejorar el marketing de OpenGL y eliminar las barreras entre el desarrollo de OpenGL y OpenGL ES.4 ARB se convirti
dentro de Khronos en el OpenGL ARB Working Group.5 El subgrupo de Khronos que gestiona la especificacin de OpenGL
se denomina OpenGL ARB Working Group.6 Para una relacin de los miembros que componen el OpenGL ARB Working
Group, vase el apartado Miembros del Grupo Khronos. El gran nmero de empresas con variados intereses que han pasado
tanto por el antiguo ARB como por el grupo actual han hecho de OpenGL una API de propsito general con un amplio rango
de posibilidades.

Generadores de anlisis
estadsticos
Si tiene que desarrollar anlisis estadsticos o tcnicos complejos, puede ahorrar pasos y tiempo si
utiliza las Herramientas para anlisis. Deber proporcionar los datos y parmetros para cada anlisis,
y la herramienta utilizar las funciones de macros estadsticas o tcnicas correspondientes para
realizar los clculos y mostrar los resultados en una tabla de resultados. Algunas herramientas
generan grficos adems de tablas de resultados.

SPSS

SPSS es un programa estadstico informtico muy usado en las ciencias exactas,


sociales y aplicadas, adems de las empresas de investigacin de mercado.
Originalmente SPSS fue creado como el acrnimo de Statistical Package for the
Social Sciences aunque tambin se ha referido como "Statistical Product and
Service Solutions" (Pardo, A., & Ruiz, M.A., 2002, p. 3). Sin embargo, en la
actualidad la parte SPSS del nombre completo del software (IBM SPSS) no es
acrnimo de nada.1

Es uno de los programas estadsticos ms conocidos teniendo en cuenta su


capacidad para trabajar con grandes bases de datos y un sencillo interface para la
mayora de los anlisis. En la versin 12 de SPSS se podan realizar anlisis con 2
millones de registros y 250.000 variables. El programa consiste en un mdulo
base y mdulos anexos que se han ido actualizando constantemente con nuevos
procedimientos estadsticos. Cada uno de estos mdulos se compra por separado.

Por ejemplo SPSS puede ser utilizado para evaluar cuestiones educativas.

R es un lenguaje y entorno de programacion, creado en 1993 por


Ross Ihaka y Robert Gentleman del Departamento de Estadstica de la
Universidad de Auckland, cuya caracterstica principal es que forma un
entorno de analisis estadistico para la manipulacion de datos, su calculo
y la creacin de grficos. En su aspecto R puede considerarse como otra
implementacin del lenguaje de programacin S , con la particularidad
de que es un software GNU, General

Public Licenc (conjunto de programas desarrollados por la Free Software


Foundation), es decir, de uso libre.

Talend Open Studio

Talend Open Studio es una herramienta Open Source de integracin y


gestin de datos, as como integracin de aplicaciones empresariales:
en palabras simples una herramienta ETL.

Talend est basado en Java, requiere especficamente JDK 6 y por tanto


puede ser ejecutado en Windows y Linux sin mayor dificultad, solo basta
con descomprimir su instalador.

Niveles de Talend

Talend basa su diseo en 3 niveles:

Business Models (Modelos de Negocios): es


nivel diseado para modelar de manera
terica la aplicacin, para lo cual se
realizan diagramas de flujo bsicos con
actores de los procesos.

Job Designs (Diseo de Trabajos): el nivel


mas interesante, en el cual se disea el
trabajo en s, el cdigo que ser ejecutado.

Contexts (Contextos): el es nivel que


contiene los contextos, los cuales pueden
ser definidos como variables globales de
ejecucin del programa, como la carpeta
donde se ejecutar la aplicacin final o
variables iniciales de entrada.

Skytree server

Skytree , Inc es una compaa startup con sede en San Jos de California ,
que desarrolla software de aprendizaje de mquina para el uso
empresarial .
Skytree sali del anonimato en febrero de 2012. anunciando skytree
Server,
un sistema de aprendizaje automtico para descubrir patrones y hacer
predicciones
de datos complejas y masivas.

Caractersticas

Skytree tiene mtodos de aprendizaje automtico que incluyen: los bosques de toma al azar, estimacin kernel densidad, K-means,
descomposicin de valor singular, gradiente de impulsar, rbol de decisin, de correlacin de 2 puntos, la bsqueda por rango, Kvecinos ms cercanos algoritmo, regresin lineal, mquinas de vectores soporte y regresin logstica. [6]
skytree software de servidor opera en Linux en un nico equipo servidor o clster de varios nodos, y est destinado para su uso por
los modeladores para el desarrollo de modelos de aprendizaje automtico, y las implementaciones de produccin (en tiempo real o
el uso de lotes). Est diseado para conectar con la infraestructura de TI existente. Puede ser configurado para aceptar flujos de
datos y los resultados de clculo de mltiples fuentes. La analtica resultantes se devuelven a travs de los mismos canales.
fuentes de datos estndar incluyen tanto los datos estructurados y no estructurados a partir de: [6]
Las bases de datos relacionales (RDBMS)
Sistemas de Hadoop (HDFS)
Las bases de datos de archivos planos (por ejemplo, CSV)
software skytree Asesor encuentra un modelo de ajuste apropiado a los datos dados, y explica sus hallazgos al usuario en el
lenguaje ordinario. [7] Incluye mtodos que se encuentran en los paquetes de estadsticas como el anlisis de regresin, anlisis de
varianza y anlisis de conglomerados. Proporciona una interfaz grfica de usuario que hace hincapi en las tareas (como clster,
clasificar o comparar) sobre algoritmos e incluye breves explicaciones de los mtodos estadsticos de base. [8]
Asesor lee formatos de archivo, incluyendo archivos con las siguientes extensiones: TXT, CSV, DAT, GML, XML, red, PDF, ODT, DOX.
Tambin puede leer los archivos de base de datos de MySQL, base de datos Oracle, Microsoft SQL Server, IBM DB2, y Teradata. El
software funciona en Mac OS, Windows y Linux

Preprocesamiento de
datos
Para la deteccin de valores anmalos existen variastcnicas como el
algoritmo de agrupacin jerrquica(CURE-Clustering Using
Representatives) y el algoritmo DBSCAN, basados en clustering.

Expresso

Limpieza de datos

Para la deteccin de valores anmalos existen variastcnicas como el algoritmo de


agrupacin jerrquica(CURE-Clustering Using Representatives) y el algoritmo DBSCAN,
basados en clustering.

Las opciones para el manejo de datos faltantes son:


Ignorar la tupla, generalmente esto se hace cuandofalta la etiqueta de la clase.
Llenar los valores faltantes manualmente.
Llenar los valores faltantes automticamente, conconstantes globales, la media del atributo,
elvalor ms probable (basado en la inferencia comoel rbol de decisin).

Para el manejo de datos con ruido, uno de los mtodos que existen es el Binning, que permite
reducir la numerosidad, donde primero se ordenan los datos y serealiza la particin en bins
del mismo tamao o de la media o de los extremos.

Uno de los algoritmos de clustering ms utilizados es elalgoritmo K-Medias, que se puede usar
para elrelleno de datos faltantes. Este es un mtodo de agrupamiento por vecindad en el que
se parte de un nmero determinado de prototipos y de un conjunto de ejemplos por agrupar.

CURL

CURL]) es un proyecto de software de ordenador que proporciona una


herramienta de biblioteca y de lnea de comandos para la transferencia
de datos utilizando diferentes protocolos. El proyecto CURL produce dos
productos, libcurl y el rizo. Fue lanzado por primera vez en 1997. El
nombre se puso originalmente para .

Continuacion

na herramienta de lnea de comandos para obtener o enviar archivos utilizando la sintaxis de URL.
Desde cURL utiliza libcurl, es compatible con una amplia gama de protocolos comunes de Internet, en la actualidad incluyendo HTTP,
HTTPS, FTP, FTPS, SCP, SFTP, TFTP, LDAP, DAP, DICT, TELNET, ARCHIVO, IMAP, POP3, SMTP y RTSP (la ltima Slo cuatro de las
versiones ms recientes de 7.20.0 9 febrero de 2010).
cURL es compatible con HTTPS y lleva a cabo la verificacin del certificado SSL por defecto cuando no se especifica un protocolo
seguro como HTTPS. Cuando cURL se conecta a un servidor remoto a travs de HTTPS, ser primero obtener el certificado de servidor
remoto y comprobar en contra de su almacn de certificados CA a la validez del servidor remoto para asegurar el servidor remoto es
el que dice ser. Algunos paquetes de cURL han incluido con el archivo de certificado CA tienda. Hay pocas opciones para especificar
certificado de CA como --cacert y --capath. --cacert opcin se puede utilizar para especificar la ubicacin del archivo de certificado CA
tienda. En la plataforma Windows, si no se especifica un archivo de certificado CA, rizo buscar un nombre de archivo de certificado
CA "curl-ca-bundle.crt" en el siguiente orden:
Directorio donde se encuentra el programa de rizo.
directorio de trabajo actual.
directorio de sistema de Windows.
directorio de Windows.
Directorios especificados en las variables de entorno% PATH%. [6]
cURL devolver un mensaje de error si el servidor remoto est utilizando un certificado autofirmado, o si el certificado del servidor
remoto no est firmado por una CA que aparece en el archivo de certificado CA. -k o la opcin --insecure se puede utilizar para omitir
la comprobacin del certificado. Alternativamente, si se confa en el servidor remoto, el certificado de CA servidor remoto se puede
aadir al archivo de certificado CA tienda.

Spark MLP

En el mundo de Big Data, prcticamente cada mes aparece una nueva


tecnologa que viene enriqueciendo el ecosistema de Hadoop, aunque
tambin puede llevar a la confusin al trabajador que empieza con estas
nuevas tecnologas: son tantos tipos de software que es imposible
recordarlos todos. En los ltimos meses, sin embargo, Spark no slo no
ha cado en el olvido, sino que ha cogido cada vez ms fuerza para llegar
a convertirse en una tecnologa estrella del Big Data.

En Pragsis ya llevbamos cierto tiempo probando este nuevo


componente de Hadoop, pero durante la pasada semana tuve la
oportunidad de asistir al curso de 3 das de Cloudera (curso que Pragsis
incluir pronto en su oferta de formaciones) y conocer en profundidad
esta empresa, experiencia que hizo mejorar ms an mi opinin acerca
de Spark.

Continuacion

Spark marcar un cambio en el mundo


de
Big
Data
Spark ofrece mltiples ventajas con respecto
a MapReduce-Hadoop:

Big
Data
in-memory
Se trata de la cara ms visible de Spark.
Olvidad
SAP-Hana
y
otras
soluciones
propietarias, por no decir caras. Spark
permite
realizar
trabajos
paralelizados
totalmente en memoria, lo cual reduce mucho
los tiempos de procesamiento. Sobre todo si
se trata de unos procesos iterativos como
los que se usan en el Machine Learning. En la
imagen que se muestra a continuacin,
vemos el benchmark que encontraris en
https://spark.apache.org/ y que muestra el
rendimiento de Spark respecto a HadoopMapReduce.

También podría gustarte