[AUDIO_EN_BLANCO] [MÚSICA] [AUDIO_EN_BLANCO] Vamos a adentrarnos en el mundo de Big Data, y como sabéis, en el mundo del Big Data hay más de 700 aplicaciones asociadas. Es un mundo, un mundo inexplorado a día de hoy. Como bien dije antes, una ola inmensa que si nos damos cuenta, ha pasado sin haber detectado todas las tecnologías existentes, pero vamos paso a paso. En primer lugar, vamos a ver lo fundamental. El elefante. El elefante que no deja de ser el símbolo de la base de la filosofía de Big Data. Es Hadoop. Hadoop es un framework, es un software, un software open source que me va a permitir acceder a datos de manera distribuida y a procesarlos. Vamos a ver un poco la historia en la que se creó Hadoop. En primer lugar, se inventó un software que se denominaba NATS, que era un software que permitía indexar millones de datos y permitía buscarlos. Estaba basado en plataformas LUFS. Bien. Entre tanto que se inventó el sistema NATS, Google inventó el concepto de MapReduce, que lo habíamos visto anteriormente. Ese concepto permitió empezar a trabajar con filosofías de divide y vencerás sobre plataformas con datos de manera masiva. Una de las personas que cogió la filosofía de Google, que es Doug Cutting, cogió esa filosofía y la aplicó en un nuevo sistema de ficheros que se llamaba DFS. Aplicó la filosofía MapReduce con sistema de fichero DFS para obtener datos utilizando la NATS. Empezaron a trabajar hasta que llegó el 2006, y en el 2006 Yahoo no tuvo más remedio que contratar a este hombre. Crearon un spin-off, un spin-out que se denominaba Hadoop. Entre tanto, siguieron trabajando, se planteó una iniciativa: "¿Por qué no aplicamos esta filosofía de uso en MapReduce con infraestructura Big Data, infraestructura con el ecosistema Hadoop, en un caso real?". Lo plantearon en el New York Times con cuatro teras de información que, para ser del 2007, es muchísima información. Para ello, pusieron 100 máquinas a trabajar de manera paralela en el almacenamiento y procesado de datos. Fue un éxito, un éxito total que continuaron trabajando. Y empresas como Yahoo o como Facebook plantearon el uso de Big Data con plataformas Hadoop. En el 2008, a principios del 2008, empezó Facebook you a plantearse el uso de manera interna y de manera externa de usos de Hadoop. Yahoo you planteaba casos reales de uso de 3,5 terabytes para lanzamiento de datos, pero lo importante es que, a finales de 2008, se creó Cloudera. Cloudera es la base, la distribución Hadoop más importante que existe hoy en día en el mercado, y desde el 2008 hasta ahora, lo único que hemos hecho ha sido crecer, crecer, crecer, crecer, hasta que llega un momento en el que hemos creado esas 705 aplicaciones Big Data. Bien. ¿En qué se basa la filosofía Hadoop? Existe un sistema de fichero que se llama HDFS, Hadoop Data File System. Hadoop lo que hace es coger un fichero muy grande, muy grande, muy grande de datos, y lo divide en pequeños cachos. Esos pequeños cachos se llaman chunks, y lo que hace es distribuir esos chunks entre las distintas máquinas de un sistema distribuido. Claro, no manda un cacho solo a una máquina, manda un cacho a 10 máquinas, lo que se denomina replicación. ¿Por qué? Porque si perdemos una máquina, ese dato no lo perdemos, lo tenemos replicado en otras máquinas. También lo tenemos la filosofía de almacenamiento replicado, lo que supone que si más de una máquina falla, la accesibilidad al dato nos lo da 100% seguro. Dependiendo de cuál sea el nivel de replicación, tendremos que indicar el número de máquinas de la infraestructura Big Data. Bien. Esos chunks que están divididos, en realidad, la forma de acceder a ellos es de igual manera que una filosofía MapReduce. Yo leo de manera paralela cada uno de los chunks de manera paralela, y obtengo los chunks, los uno y creo el fichero final, que es lo que nos tenemos como objetivo. En realidad, ¿cómo se crea esto? Pues, ¿dónde se encuentra cada chunk? Es trabajo de un nodo de una máquina que le vamos a llamar Name Node. Esa máquina va a tener los metadatos de dónde se encuentra cada cacho del fichero, dónde se encuentra cada fragmento del dato, y los datos en realidad no se almacenan en el Name Node, se almacenan en otros nodos que se denominan Data Node. De tal manera que la operación es la siguiente. Voy a consultar al Name Node: "Oye, ¿dónde se encuentra este dato?". El Name Node me dice: "Recórrete este, este y este nodo", que son Data Node, y acceso de manera paralela a los distintos cachos del dato, para luego agregarlos y obtener el dato que deseo. Bien. La filosofía o el diseño de la arquitectura Big Data que lo hemos visto anteriormente, yo quiero bajar un poquito más. ¿Cómo se plantea dentro de Hadoop? Pues, muy fácil. Lo primero de todo como base, un sistema de fichero distribuido HDFS. Por encima del HDFS, necesito de un orquestador, un orquestador que va a saber cómo se encuentran mis máquinas y cuál es la capacidad que tienen mis máquinas de reacción. Ese proceso lo veremos más adelante, y se llama Java. Aparte tenemos ingestadores de datos, el streaming y en Batz. Por otro lado, necesitamos al sistema que permite almacenar datos no estructurados, que no tiene por estar almacenado en un sistema de datos estructurado. Vamos a permitirlo también. Por otro lado, mecanismos para poder acceder a los datos. Podemos acceder mediante SQL, podemos acceder mediante scripting, podemos utilizar Machine Learning para ello, podemos incluso hacer un work flow de tareas para realizar una operación determinada sobre un dato, y todo esto desde una visión transparente que me va a permitir, a través de incluso un navegador web, acceder sobre los datos, y todo esto obviamente también controlado por un cuidador. El cuidador de los animales, el que va a encontrarme todas las aplicaciones de una plataforma Hadoop. Bien. Hoy en día, ¿qué distribuciones existen? Pues, existen you infinidades de distribuciones. De manera open source, de manera de pago. Como puede ser open source, podría ser Hortonworks. Como podría ser de pago, podría ser MapR. ¿Cuál es la más usada? Pues, si nos fijamos en los datos del tercer quarter del 2016, vemos que la más descargada, no la más usada, la más descargada son las plataformas estándar Hadoop, es decir, no existe una situación como la de ahora, pero en realidad solo es la más descargada, porque está contabilizando los pequeños componentes que genera Apache de manera separada. En realidad, la distribución más usada hoy en día es Cloudera. Cloudera tiene una característica, y es que casi todo es open source, salvo una serie de aplicaciones que son de pago, y el soporte que es de pago. La solución que está ofreciendo Cloudera al día de hoy como paquete con una serie de componentes o aplicaciones you preparadas, interconectadas, configuradas, etcétera, es lo que se denomina CDH, y la versión que se está utilizando a día de hoy es la 5.2. Frente a Cloudera, el siguiente competidor es Hortonworks, una solución completamente open source, no tiene forma de pago, todo es gratuito. Lo único que ofrece Hortonworks es un soporte. que normalmente es un soporte cuando tienes que hilar fino, cuando necesitas una aplicación que no está soportada con Hortonworks, pero que necesita soporte porque la necesitas para algún motivo. Bien. En ese caso, Hortonworks ofrece otro tipo de distribución o un paquetito diferente que se denomina HDP. La versión actual es la 2.6. ¿Qué característica hay entre ambos? Pues, en realidad, la base es la misma. Es ecosistema Hadoop. Lo que pasa que por encima de cara al usuario, utiliza distintas vertientes porque se enfocan en distintas soluciones. Uno le da más importancia al acceso, al dato de la manera más eficiente posible, con uso de memoria, como es el caso de Cloudera, y otro le da más importancia a las soluciones desde el punto de seguridad, porque quiere asegurar que el dato está, de por sí, seguro. que es la solución Hortonworks. Existen otras soluciones como MapR, que quizás son más completas, pero claro, desde el minuto cero son de pago, y supone un gasto bastante fuerte. O soluciones como Pivota, que están también entre medio aunque son más de pago que Cloudera, están entre medio de la open source y la solución de pago. Hasta aquí el ecosistema Hadoop, nuestro objetivo, a partir de este momento, es analizar cómo funcionan cada una de las aplicaciones que se instalan en las distintas distribuciones Cloudera, Hortonworks, MapR, o Pivota. [MÚSICA] [AUDIO_EN_BLANCO]