Cassandra llega a AWS (Amazon Web Services)

El CEO de AWS, Andy Jassy, ​​anuncia el servicio Apache Cassandra administrado por AWS
Nota original en Ingles de SEAN MICHAEL KERNER

 

Me parece trascendente compartir con nuestra comunidad la noticia de la integración de Cassandra a la increible gama de servicios de Amazon Web Services. Para todos los que trabajamos con Inteligencia Online y algoritmos en tiempo real, nos representa una gran oportunidad acceder a esta nuevo servicio en la nube.

Los proveedores en el mercado de base de datos de código abierto Cassandra NoSQL expresan sus preocupaciones sobre la entrada de AWS en el campo, ya que el gigante de la nube busca expandir su cartera de bases de datos.

«El anuncio de AWS es una validación adicional del alcance y la creciente importancia de Cassandra», dijo Jonathan Ellis, cofundador y CTO de DataStax, uno de los proveedores más grandes en el mercado de Cassandra.  Agregó que en todas las industrias las empresas han visto grandes ganancias de sus inversiones en Cassandra, una base de datos de código abierto diseñada exclusivamente para satisfacer las necesidades de implementaciones híbridas y de múltiples nubes.

Como proyecto de código abierto, hay varios proveedores que tienen servicios comerciales para Cassandra.  Con la incorporación de Cassandra, AWS ahora tiene el conjunto más completo de sistemas de administración de bases de datos (DBMS) en la nube, según Donald Feinberg, vicepresidente y analista distinguido de Gartner.  En su opinión, Cassandra era el único DBMS faltante importante en la cartera de AWS antes del anuncio en la conferencia re: Invent 2019 este mes.

«No solo agregaron Cassandra, sino que es la única implementación de Cassandra sin servidor disponible en la nube. Esto hace que administrar un clúster de Cassandra sea tan sencillo de administrar», dijo Feinberg.  «La parte más difícil de administrar Cassandra es el entorno de clúster múltiple y sin servidor se elimina ese obstáculo».

Apache Cassandra es un sistema de base de datos distribuida de código abierto que está diseñado para almacenar y administrar grandes cantidades de datos en servidores básicos. Cassandra puede servir tanto como un almacén de datos operativos en tiempo real para aplicaciones transaccionales en línea, como una base de datos de lectura intensiva para sistemas de inteligencia de negocios (BI) a gran escala.

 

Originalmente creado para Facebook, Cassandra está diseñado para tener nodos simétricos de igual a igual (Peer to Peer), en lugar de nodos principales o con nombre, para garantizar que nunca haya un solo punto de falla (SPoF). Cassandra divide automáticamente los datos en todos los nodos del clúster de la base de datos, pero el administrador tiene el poder de determinar qué datos se replicarán y cuántas copias se crearán.

Después de que Facebook abrió el código, Cassandra se convirtió en un proyecto Apache Incubator en 2008 y en un proyecto Apache de alto nivel en 2010. Al momento de escribir este artículo, las implementaciones de Cassandra incluyen Netflix, Digg, Adobe, Twitter, HP, IBM, Rackspace, Cisco y Reddit

El nombre Cassandra se inspiró en la hermosa vidente mística de la mitología griega cuyas predicciones para el futuro nunca se creyeron.

 

Debate sobre la arquitectura.

Instaclustr proporciona el servicios de Cassandra alojada y administrada como un servicio.  Ben Slater, director de producto de la compañía, calificó la entrada de AWS como una validación para Apache Cassandra y dijo que espera ver un interés y crecimiento continuo en las ofertas de su compañía como resultado.  Sin embargo, en su opinión, el servicio Apache Cassandra administrado por Amazon en realidad no se administra Cassandra, agregó.

«Es una versión patentada de AWS de una parte de la base de código de Apache Cassandra que se ejecuta como una capa de traducción sobre DynamoDB. El servicio solo es parcialmente compatible con Apache Cassandra», dijo Slater.

Sin embargo AWS no está de acuerdo: según Herain Oberoi, gerente general de marketing de AWS para bases de datos, análisis y blockchain, Amazon Managed
Cassandra Service utiliza el código Apache Cassandra.

«Modificamos Apache Cassandra para permitirnos ejecutarlo como una oferta altamente escalable, sin servidor y administrada», dijo Oberoi.
Oberoi explicó que AWS creó Amazon DynamoDB con el solo objetivo de proporcionar a los clientes un servicio de base de datos NoSQL rápido y escalable. Dijo que cuando AWS creó Amazon Managed Cassandra Service, los clientes pedían cualidades similares en un servicio de base de datos compatible con Cassandra.

«Aprendimos mucho de nuestra experiencia operando DynamoDB, y pudimos aplicar ese conocimiento para construir un servicio de base de datos compatible con Cassandra altamente escalable y sin servidor, especialmente diseñado, pero los dos son diferentes», dijo Oberoi.

 

El enfoque sin servidor (Serverless) podría ser un gran impulso

ScyllaDB, otro jugador en el mercado de servicios Cassandra, recientemente actualizó su plataforma de base de datos homónima para mejorar el rendimiento.  ScyllaDB crea su propia base de datos de código abierto, que es compatible con Apache Cassandra.

Dor Laor, CEO de ScyllaDB, destacó la capacidad «Serverless» como la parte más impresionante del servicio Apache Cassandra administrado por Amazon.

«El usuario no necesita aprovisionar ningún servidor, y es posible crear una tabla de inmediato», dijo Laor.  «Un enfoque de servicio puro y la usabilidad son las fortalezas clave de AWS, y estoy seguro de que los usuarios que luchan con la complejidad de Cassandra lo apreciarán».

Aunque la nueva base de datos de AWS será una oferta que competirá con la que ofrece ScyllaDB, Laor dijo que lo ve como algo bueno.  Dijo que espera que las capacidades de precio y rendimiento de ScyllaDB atraigan nuevos usuarios a medida que analizan las opciones disponibles en el mercado;  él prevé que el servicio de AWS eleve los problemas que enfrentan los usuarios de Cassandra, trayendo más atención y aprecio a ScyllaDB.

Laor dijo que también anticipa muchos desafíos técnicos para el nuevo servicio de base de datos de AWS, incluida la compatibilidad con las implementaciones existentes de Cassandra.

«Obviamente, el objetivo del servicio es convertir a los usuarios de Cassandra en usuarios de Cassandra administrada por AWS, sin embargo, el servicio carece de varias características clave, desde múltiples regiones hasta vistas materializadas, contadores, limitaciones en el tamaño del objeto, etc.», dijo Laor.  «Por supuesto, todo esto se puede resolver con el tiempo».

AWS reconoce que actualmente no tiene todas las funciones de Cassandra.  Oberoi de AWS advirtió que el servicio Amazon Managed Cassandra está en versión preliminar y agregará características con el tiempo.  Dicho esto, señaló que la mayoría de los clientes ya pueden usar y probar los servicios durante la vista previa, con pocas o ninguna modificación en su código de aplicación Cassandra existente.

«En el transcurso de la vista previa y en GA, continuaremos agregando funciones al Servicio Cassandra administrado por Amazon que ayudan a los clientes a ejecutar las cargas de trabajo de Cassandra en producción, como la replicación entre regiones», dijo Oberoi.  «Creamos el servicio Amazon Managed Cassandra para proporcionar a los clientes un rendimiento de un solo dígito y milisegundos a cualquier escala, y como resultado tomamos la decisión de no agregar soporte para las características experimentales de Cassandra o las características específicas de Cassandra que los clientes nos han dicho que no escalen,  no funcionan bien o tienen problemas de estabilidad, como funciones de agregadores, contadores y vistas materializadas «.