El sitio web de Jesús García García-Doncel.

Categoría: Arquitectura de Datos

La categoría Arquitectura de Datos, contempla cinco grandes apartados.

  1. Sistemas de acceso a Datos: acceso a los datos secuencial, aleatorio e indexado.
  2. Bases de Datos relacionales: Arquitectura de las BBDDs relacionales y el lenguaje SQL.
  3. Bases de Datos NO relacionales: Principales tipos de BBDDs NO relacionales.
  4. Big Data: Arquitecturas Big Data. Hadoop: HDFS y MapReduce.
  5. Arquitecturas de almacenamiento de datos: Almacenamiento, Back up y virtualización.

Hadoop

Hadoop es un ecosistema, es decir, un conjunto de componentes que implementan las distintas funciones necesarias para trabajar en entornos Big Data. Esta pensado para trabajar con Clusters de ordenadores de bajo coste. Y es un proyecto de la fundación Apache, por lo que cuenta con una licencia de software libre, lo que significa que cualquiera puede usarlo sin tener que pagar por ello.

Hay dos componentes fundamentales en el ecosistema Hadoop:

  • El sistema de ficheros distribuidos HDFS (Hadoop Distributed File System): Basado en la Big Table de Google que fue el primer sistema de ficheros distribuidos para trabajar con Big Data. Es el sistema de ficheros para trabajar con los ordenadores del clusters, realizando todas las funciones clásicas de un sistema de ficheros: guardar datos, localizar y acceder a ellos.
  • El sistema de procesamiento MapReduce: Es el sistema para procesar los datos en el Cluster, que también está tomado de Google, quien lo desarrollo para procesar la información de las distintas páginas web que recogía para las búsquedas.

La clave del éxito de Hadoop es que divide el almacenamiento de los datos y el trabajo de procesamiento entre los distintos ordenadores del cluster, realizando varias operaciones en paralelo, pudiendo así manejar muchos datos en menor tiempo.

Arquitectura Big Data

En posts anteriores he hablado de la aparición del Big Data y de las famosas Vs. De repente, se hizo necesario ser capaz de manejar muchísimos más datos con una afluencia muchísimo mayor. Las arquitecturas tradicionales no podían lidiar con esta nueva situación, y se desarrollaron las arquitecturas Big Data. Estas últimas enfocadas a trabajar con los datos en las nuevas condiciones.

Antes de la aparición del Big Data, con un buen servidor y un RAID de discos era suficiente para procesar y almacenar todos los datos que manejábamos. Esta arquitectura era además escalable y las necesidades de ampliación eran asumibles. Sin embargo, con la llegada del Big Data, y la gran cantidad y variedad de datos que tenemos que manejar y almacenar, las arquitecturas tradicionales basadas en un servidor resultan insuficientes. Se hace inviable procesar toda esta información en un único ordenador, y se desarrollan arquitectura Big Data basadas en Clusters de ordeanadores (un conjunto de ordenadores trabajando de manera coordinada para resolver una misma tarea).

Por tanto, en una arquitectura Big Data, vamos a trabajar con múltiples ordenadores y tendremos nuestras capacidades de computación distribuidas. Para aprovechar eficientemente estas capacidades, recurrimos a algoritmos de procesamiento paralelo que distribuyen la carga de procesamiento entre los distintos ordenadores del Cluster. Esto también nos ayudará a procesar los datos más rápidamente, que es otro de los requerimientos de una arquitectura Big Data, como por ejemplo con las queries de un buscador web.

Funciona con WordPress & Tema de Anders Norén