Hoy en día, la variedad de herramientas Big Data a utilizar es muy extensa. Esto hace que acercarse a este mundo pueda resultar, cuanto menos, intimidante. Decidir qué soluciones utilizar a la hora de definir nuestra arquitectura requiere mucho cuidado y planificación. Pero, entonces, ¿cuáles son las herramientas en las que deberíamos centrar nuestra atención? Sería muy difícil responder a esta pregunta de forma general así que hemos consultado con Ramón Pin Mancebo, director del Programa Superior en Data Engineering de ICEMD y Data Engineer en Orange, para establecer un listado con las 7 herramientas más relevantes que deberíamos conocer para que nuestro aterrizaje en este mundo sea lo más sencillo posible.
Apache Hadoop
Es el principio de todo y el punto en el que se apoyan otras plataformas. El sistema de almacenamiento distribuido de ficheros HDFS y el gestor de recursos YARN son sus componentes principales. Incluye también una implementación del sistema de procesamiento MapReduce que hace uso de YARN para la distribución de las tareas. Es una herramienta cuyo conocimiento es indispensable para todo aquel que quiera adentrarse en este mundo. Esta herramienta se usa en Yahoo! o Amazon.
Apache Spark
Es una herramienta de procesamiento distribuido de datos en batch y tiempo real con una API unificada para ambos modelos. Desde su llegada al ecosistema en 2014 Spark ha ganado cada día más y más adeptos. Todo recién llegado debería profundizar en su uso. Su único inconveniente es que para explotarlo al máximo requiere que aprendamos además el uso del lenguaje de programación Scala. Apache Spark se utiliza en Cisco, Verizon y Visa.
Apache Flink
Es el principal rival de Spark y pasito a pasito está haciendo mella en su base de usuarios. Como herramienta Big Data, Flink ofrece las mismas características de Spark pero con una implementación muy diferente. Algunas de las mejoras que Flink trae al mundo del procesamiento en tiempo real hacen que sea una herramienta a conocer. Esta herramienta se usa en Zalando.
Presto
Esta herramienta Big Data no forma parte del ecosistema Apache pero es otra de esas cuyo conocimiento es necesario para todo entusiasta. Presto es un motor de consultas SQL que permite relacionar información presente en múltiples sistemas de almacenamiento diferentes de forma unificada sin necesidad de mover los datos a una única plataforma. Se utiliza en Airbnb, Netflix y Facebook.
Apache HBase
HBase es un viejo conocido dentro de este tipo de software. Se trata de un sistema de almacenamiento de datos distribuido y escalable basado en ficheros HDFS. Su modelo de datos es orientado a familias de columnas y su principal ventaja es que permite la actualización y el acceso aleatorio a los datos. Está presente en las principales distribuciones de Hadoop por lo que saber modelar datos haciendo uso de esta herramienta es otra de esos skills necesarios para todo conocedor. Es utilizada en Facebook, Airbnb, y Spotify.
Apache Cassandra
Cassandra es, en cierta forma, el principal rival de HBase dentro del mundo de las herramientas Big Data. No solo porque es también uno de esos proyectos primordiales si no además porque utiliza un modelo de datos muy similar. A diferencia de HBase no hace uso de ningún componente del ecosistema Hadoop ni está incluida en ninguna de las distribuciones de éste. A cambio de estas desventajas Cassandra es de las pocas soluciones desarrolladas para dar soporte a despliegues multi-datacenter por lo que es también un ‘debe’ en nuestra lista de conocimientos. Se utiliza en CERN, Cisco y Walmart.
Apache Kudu
Kudu es la herramienta perfecta para complementar al HDFS. Se trata de un sistema de almacenamiento de datos en formato columnar que permite realizar consultas analíticas sobre estos de forma más fácil y con un gran rendimiento. Kudu es un recién llegado al ecosistema pero la forma en que complementa a otros de los componentes lo hará cada vez más omnipresente en las arquitecturas Big Data. Apache Kudo se emplea en Cloudera.
Si quieres profundizar en estas herramientas o seguir aprendiendo sobre Big Data, en ICEMD cuentan con el Máster en Big Data Management, que ofrece una visión completa y exhaustiva para gestionar proyectos de datos, puedes informarte aquí.