Las nubes híbridas distribuidas requieren una gestión de datos moderna
Un teléfono gris con un dial sobre un escritorio. Esta imagen se formó de repente en mi mente mientras estaba sentado en un grupo de discusión hace unas semanas. El tema de debate era la gestión de datos.
Trataba de los avances que se están produciendo actualmente en el uso de los datos. Lo que me sorprendió fue que la mayoría de los participantes en el debate se centraban claramente en el uso interno de los datos. Aunque la idea de utilizar los datos para los negocios con partes interesadas externas es obvia.
En la ronda también surgió el enfoque adecuado: los datos deben ser fáciles de consumir. Por ejemplo, el departamento de logística debe obtener información de los datos de movimiento de paquetes o camiones y reaccionar con rapidez.
Un participante del grupo sugirió que un empleado podría informar al cliente de los retrasos. En ese momento, en mi mente, este empleado cogió el teléfono gris. Podía oír literalmente cómo giraba el dial.
Pero no se trata sólo de poner los datos a disposición de un grupo de empleados difícil de escalar, y confiar en que hagan lo correcto con ellos. Consumir datos con la mayor facilidad posible también significa informar a clientes, minoristas y socios directamente a través de servicios web y servicios móviles.
Una infraestructura en la nube se presta a este tipo de aplicaciones, pero supone un reto cuando se trata de la gestión de datos: Tanto los sistemas internos en el centro de datos local como las aplicaciones web en la nube acceden a los mismos datos, que por tanto deben mantenerse sincronizados.
Quienes quieran utilizar para ello una base de datos relacional clásica no podrán hacer frente a este reto. Para la web o la aplicación móvil, la empresa tendría que añadir otra base de datos en la nube. Sin embargo, esto crea un silo de datos que tiene que compararse permanentemente con los datos locales casi en tiempo real. De lo contrario, el resultado es información errónea.
La base de datos de código abierto Apache Cassandra es la más adecuada para ello. La propia Cassandra utiliza una arquitectura distribuida, por lo que la base de datos no relacional basada en Java admite de forma óptima aplicaciones distribuidas y sistemas híbridos.
Un usuario crea un clúster de bases de datos que conecta diferentes nubes y centros de datos internos. De este modo, los mismos datos están disponibles tanto para los sistemas internos como para cualquier app en varias nubes.
Además, con Cassandra, las empresas pueden añadir o eliminar centros de datos lógicos en otra nube o en sus centros de datos internos al clúster en cualquier momento, durante su funcionamiento. Cassandra sincroniza automáticamente los datos entre las plataformas internas y en la nube, prácticamente en tiempo real.
Por ello, muchos asocian Cassandra con un enorme rendimiento y escalabilidad. Sin embargo, estos criterios no son relevantes para todas las aplicaciones. En cambio, la alta disponibilidad es necesaria para todas las aplicaciones. Porque incluso cuando se cambia a una nueva versión de la aplicación, a menudo hay que insertar una columna en una tabla.
Con una base de datos relacional, no se puede acceder a esta tabla para añadir la columna necesaria. Con Cassandra, en cambio, esto es posible sin tiempo de inactividad.
En la práctica, se están desarrollando nubes híbridas distribuidas. Estas requieren una gestión de datos fácilmente consumible. Las grandes corporaciones digitales se enfrentaron primero a este reto.
Mientras tanto, Cassandra y su versión comercial, DataStax Enterprise, han sido implementadas por muchas empresas tecnológicas de primer nivel, como Apple, Netflix, Twitter o FedEx. Estas empresas optimizan sus procesos de negocio, la participación de las partes interesadas y la experiencia del cliente mediante aplicaciones Right Now.
El uso de la versión para empresas también les garantiza asistencia, formación y servicios para facilitar la administración, el funcionamiento sencillo o la supervisión de las bases de datos.