No hay duda de que el Big Data ha llegado para quedarse. Cada vez más compañías se suben al carro del análisis de datos y basan sus decisiones de negocio en predicciones hechas por algoritmos de aprendizaje automático.
“…Si he logrado ver más lejos, ha sido porque he subido a hombros de gigantes” – Newton
Sin embargo, hay una característica de la mayoría de las soluciones Big Data utilizadas actualmente que suele pasar desapercibida en los productos finales que utilizamos. Se trata de que usan multitud de herramientas Open Source. Este término describe a los proyectos informáticos en los que el código está disponible directamente y de forma abierta para quienes quieran verlo y usarlo. Además, estas herramientas suelen contar con licencias de uso muy permisivas que legalizan su uso comercial e incluso su redistribución.
¿Cómo surgen los proyectos Open Source?
¿Quiénes desarrollan estas librerías y frameworks que tanto nos ayudan? Por un lado, la mayoría de ideas aplicadas en el análisis de datos vienen del mundo académico, donde se incentiva, sobre otros fines, la publicación de conocimiento, ya sea como papers o en conferencias. Estas publicaciones suelen incluir solamente las bases teóricas de las mejoras obtenidas. Esto suelen ser las ideas matemáticas y los algoritmos que el equipo de investigación ha desarrollado. Posteriormente, estos nuevos algoritmos son recogidos por las librerías y frameworks abiertos más populares e incluidos con los existentes. Pero todavía queda un largo camino para que estas nuevas ideas estén en un formato adecuado para su uso comercial.
La vía académica suele ser la dominante para los algoritmos y sistemas de aprendizaje, pero en el mundo del Big Data los algoritmos son tan importantes como la infraestructura sobre la que se despliegan. Y en el ecosistema de infraestructuras para proyectos de análisis de datos encontramos muchísima variedad. Estos proyectos suelen estar apoyados por instituciones o grandes empresas que dedican recursos al desarrollo y mantenimiento de proyectos Open Source. Puede parecer extraño que empresas comerciales apoyen este tipo de iniciativas, pero los beneficios que pueden obtener de este tipo de aproximación superan los inconvenientes y riesgos en muchas ocasiones.
Un ejemplo claro de este modelo de negocio son las empresas distribuidoras del ecosistema Hadoop como Cloudera o Hortonworks. En mayor o menor medida contribuyen al desarrollo de Hadoop, teniendo como servicios: soporte a estos sistemas, instalaciones gestionadas por ellos, o incluso cursos de formación sobre estas tecnologías.
Entre el Open Source y el usuario
Normalmente las empresas que quieren obtener valor de sus datos utilizan productos específicos para su área de trabajo en vez de herramientas o librerías genéricas de análisis de datos. El ser capaces de aplicar las técnicas Big Data teniendo en cuenta las características específicas de su negocio es una ventaja competitiva que no se puede dejar pasar. Hay empresas que desarrollan productos destinados a clientes interesados en aprovechar sus datos librándoles de la necesidad de conocer el funcionamiento de todos estos sistemas a bajo nivel. Todo ello nos permite poner al alcance todo el conocimiento sobre las últimas herramientas y recientes avances en Data Science para construir productos y soluciones Big Data de la manera más ágil posible.
Un ejemplo de esta tarea es la herramienta de monitorización y análisis de redes sociales Lynguo. Esta herramienta usa una infraestructura moderna en la nube basada en algunas de los mejores frameworks de procesamiento de datos, junto con nuestros propios motores de análisis, para ofrecer monitorización y procesado en directo de mensajes en redes sociales referentes a marcas, temas, eventos, etc. Muchas de las piezas fundamentales de este producto son herramientas Open Source cuidadosamente escogidas, adaptadas y usadas para construir una aplicación que va más allá del procesado de datos genérico.
El Open Source en el que nos apoyamos
Estamos siempre atentos a los nuevos proyectos que surgen cada día, pero aquí tenemos una selección de unos pocos, pero importantes, de los que hemos usado en nuestros desarrollos junto con otros muy destacados en el mundo del análisis de datos:
Scikit-learn
Uno de los frameworks más populares de machine learning, creado gracias al proyecto Google Summer of Code y posteriormente apoyado por INRIA (Institut National de Recherche en Informatique et en Automatique). Es una suite muy completa de algoritmos de análisis de datos con un modelo de uso desde Python común.
Otras librerías similares muy usadas son Theano o TensorFlow de Google. A veces usadas con Keras por encima. Se emplean sobre todo para entrenar redes neuronales de forma más eficiente.
Docker, herramienta Open Source
Docker es una herramienta usada para aislar partes de las aplicaciones en distintos módulos reutilizables, aparte de simplificar la tarea de administración de sistemas. Empezó siendo un pequeño proyecto de la empresa dotCloud y ha acabado cobrando identidad propia, creciendo y recibiendo inversiones desde el 2013. Su misión actual es “crear herramientas para la innovación en masa”.
Muchos de los proyectos que realizamos los entregamos como sistemas dockerizados, lo cual permite a nuestros clientes integrar y escalar a sus necesidades lo entregado sin prácticamente ningún esfuerzo.
Sistema Open Source Hadoop
El sistema por excelencia para el procesado distribuido de cantidades masivas de datos. Respaldado por la Fundación Apache, la suite de frameworks, herramientas y sistemas que integra Hadoop componen un conglomerado capaz de tratar con datos a gran escala, con el Big Data de verdad. Además, con la adición de Spark (sistema de procesado sobre clusters Hadoop), que se integra con librerías mencionadas anteriormente como Scikit-learn, podemos llevar nuestro análisis de datos más profundo a empresas de gran tamaño.
Los datos, por supuesto, son muy importantes (si no lo más importante) de los sistemas de análisis de datos. Muchos de los modelos que tenemos y que ayudan a nuestros clientes no serían posibles sin la enorme cantidad de datos abiertos que tenemos a nuestra disposición. Desde textos de redes sociales hasta modelos de vectorización de palabras, pasando por listas de municipios, información meteorológica o hasta el propio Quijote.
El Big Data no sería lo mismo sin la comunidad del código libre. Si no existiera esta cultura, probablemente el análisis de datos más avanzado estaría restringido a las compañías más grandes como Google, Facebook, Apple… que serían las únicas con los recursos necesarios para llevarlo a cabo. Por suerte, gran parte del valor de los productos Big Data está en el último tramo, en conseguir que estas técnicas generen valor para tu negocio.
Y a eso nos dedicamos, así que te invitamos a subirte a nuestros hombros y aprovechar nuestro conocimiento y talento para sacar provecho a tus datos.