Ansible Galaxy, official hub for sharing Ansible content.

Ansible Galaxy es el repositorio oficial de Ansible para que podamos compartir nuestras recetas con su Comunidad. Para los que no estéis familiarizados con Ansible, decir que es una herramienta de IT-Automation que nos permite realizar acciones masivas basadas en un archivo de configuración o definición llamado playbook (YAML). Un playbook está compuesto por distintas instrucciones que serán las que concretamente queremos ejecutar sobre nuestra plataforma de servidores. También, Ansible está dividido en unidades de trabajo o módulos, cada módulo es autosuficiente y puede ser escrito distintos lenguajes de scripting, como: Python, Perl, Ruby, etc… Una de las propiedades clave de los módulos es la idempotencia, que nos asegurará que ninguna de las operaciones se realizará una vez el sistema haya alcanzado el estado deseado. [Leer más]

Oozie vs Airflow, Open Source Data Pipeline

Anteriormente ya hemos hablado sobre sistemas de ingestión de datos, como es Apache NiFi o, también, de transformación de la información, como Apache Flink. Pero hoy venimos con sistemas de Data Pipeline o, también conocidos como Workflows. Hablaremos sobre Oozie y Airflow. Oozie Oozie es un sistema para la gestión de flujos de trabajo de código abierto escrito en Java para sistemas Hadoop. Oozie se centra, mayormente, en la flexibilidad y en la creación de flujos de trabajo complejos, permitiéndonos tener trabajos activos por tiempo, por eventos o tener disponibilidad de datos según las situaciones en que la disponibilidad de los mismos pueda ser impredecible. [Leer más]

Introduction to CQRS (segregando la tipología de uso y del dato)

En anteriores post hemos hablado sobre Data streaming como también de escalar bases de datos. Pero hoy vengo a darte una introducción, clara y concisa, sobre CQRS y su aplicación; utilizando un tanto los posts mencionados anteriormente. CQRS es un método para optimizar escrituras en bases de datos (write) y leerlas (read). Hoy en día, algunas más que otras, las empresas están ya acostumbradas a trabajar con grandes volúmenes de datos y, por lo tanto, con grandes bases de datos. [Leer más]

API with Express, Mongoose & MongoDB

Cuando queremos tener una arquitectura desacoplada o, cuando necesitamos tener un acceso programático a nuestro producto y/o servicio, lo más normal y común es tener un servicio de API. Concretamente una API RESTful para, por ejemplo, poder ofrecer servicios como: GET para consultar y leer, POST para crear, PUT para editar y DELETE para eliminar. Bien, uno de los lenguajes más famosos y, recomendable, para poder construir nuestra API RESTful es NodeJS y más concretamente su Framework Express que nos proporciona muchas herramientas útiles para poder organizar nuestra aplicación. [Leer más]

Replicando datos en tiempo real (Log Shipping vs Mirror Data)

Hemos hablado bastante sobre “Stream Processing”, “Data Stream”, “Distributed Real-Time Stream Processing”, “Data Sharding”, etc… pero, por lo general, siempre contamos con que tendremos una fuente de datos lo suficientemente preparada como para poder coger los datos y convertirlos en procesos o streams. Pero, seamos sinceros, raramente pasa. Es por eso que tenemos soluciones interesantes cuando, por ejemplo, tenemos una base de datos SGBD (puede ser Oracle o SQLServer) y queremos realizar una réplica de la base de datos origen hacia un destino. [Leer más]

Democratización de datos, Data Self-Service con Druid + Imply.io

Tanto las herramientas de Bi (Business Intelligence), más tradicionales, como las más novedosas y nacidas a partir de la “irrupción” del BigData como son por ejemplo: Tableau, PowerBI, entre muchas otras… han transformado fundamentalmente la forma en que operamos los datos las organizaciones. Los directivos de todas las industrias ahora están utilizando la tecnología de análisis Big Data para una amplia gama de procesos, objetivos y necesidades de gestión. Y las aplicaciones potenciales de las herramientas de BI modernas son prácticamente infinitas, ya que han irradiado en casi todos los aspectos de la gestión operativa y la supervisión estratégica como, se han podido beneficiar de conocimientos más potentes y rápidos. [Leer más]

Kafka data structures, Zookeeper Offsets

Desde la versión 0.9 (current: 1.1.0), Kafka proporciona la capacidad de almacenar y distinguir los cambios sucedidos en los respectivos “topic” (offsets) directamente en Kafka en lugar de depender del Zookeeper. Los datos en Zookeeper, aunque son similares a un típico sistema de directorios, pueden tener datos asociados a los nodos. Estos datos pueden variar desde datos de configuración, detalles de estado, marcas de tiempo, etc… que ayudan a Zookeeper a hacer lo que mejor sabe hacer. [Leer más]

Scale-out + Data Shard (Databases Architecture)

Imaginemos la siguiente situación: somos una empresa y hemos crecido de forma orgánica, pero, se ha acumulado toda nuestra información en una “Monster Database”. ¿Qué tenemos delante nuestro? Claramente tenemos un gran problema, ya que seguramente ésta tendrá un coste (€) alto sumado a que tenemos una base de datos y un gran punto de fallo, sin entrar en detalles de escalabilidad, etc… Podríamos afrontar el problema haciendo un triple salto, aunque seguramente el resultado no sería, pada nada, el esperado (con suerte… quizás si). [Leer más]

¿Cómo puede ayudar CockroachDB al cumplimiento de la GDPR?

Hace pocos días que entró en vigor la GDPR y como se sabía, un % muy elevado de empresas y organizaciones todavía no están adaptadas y no parece que lo vayan a estar a corto plazo. Ya anteriormente hemos planteado unos cuantos post al respecto, podéis encontrarlos aquí. El objetivo de este post es explicar un par de casos reales (necesidades) y como podemos darles solución. Para ello, utilizaremos la base de datos CockroachDB que, a mi entender, nos será perfecta para poder salvar muchos puntos complicados. [Leer más]

Building Web APIs with Flask RESTful and API Kong Gateway

Ya anteriormente hemos hablado de API Kong en varias ocasiones, por ejemplo: Reference Architectures Kubernetes o Microservicios usando API Gateway Kong. Hoy vendremos a presentar un caso Real donde de manera muy fácil y rápida podremos tener una API construída con Python Flask en pocos minutos con un key-auth mediante API Kong Gateway. Veamos brevemente el índice de pasos a seguir: Construiremos dos Docker: uno con el software de API Kong y otro con un PostgreSQL para hacerle de base de datos. [Leer más]