Por qué los servicios NoSQL "nacidos en la nube" no siempre triunfarán

NoSQL no es todo igual

Couchbase ha sido reconocida como líder en NoSQL por Forrester Research en su reciente informe 'The Forrester Wave™: Big Data NoSQL, primer trimestre de 2019.' Forrester identificó las 15 empresas más significativas de la categoría y, a continuación, las evaluó y comparó con arreglo a 26 criterios. Varios proveedores, entre ellos Couchbase, se desmarcaron del resto por sus capacidades y estrategia en materia de bases de datos, lo que pone de manifiesto diferencias significativas entre las ofertas de los proveedores de NoSQL.

Esto es coherente con DB-Engines donde Couchbase es actualmente el almacén de documentos #3, por detrás de MongoDB y, sorprendentemente, de Amazon Dy.namoDB, ya que se trata principalmente de un almacén de valores clave (DocumentDB es su almacén de documentos). Sin embargo, a diferencia de Forrester, que pasa por un riguroso proceso para evaluar 26 criterios de compra relevantes en la actualidad, la participación de los proveedores en DB-Engines es en gran medida inconsistente y sólo proporciona una medida de popularidad (es decir, búsqueda y tendencias). Pero lo que no puede pasar desapercibido de la metodología de DB-Engines y sus percepciones recopiladas sobre el mercado de bases de datos es el rápido aumento de la popularidad de Microsoft Azure CosmosDB y, en menor medida, DynamoDB en comparación con los incondicionales de NoSQL como Couchbase o MongoDB. Lo que está ocurriendo claramente es un creciente interés y adopción de la nube.

Migración a la nubesin dependencia del proveedor

Hoy en día, la mayoría de las empresas buscan una estrategia híbrida o multicloud para ejecutar cargas de trabajo en el mejor entorno de ejecución o para cumplir los requisitos de seguridad, gobernanza y conformidad en todo el mundo. Las ofertas de base de datos como servicio de los proveedores en la nube, como DynamoDB y CosmosDB, se limitan a una única nube y no satisfacen estos requisitos de los clientes, además de obligarles a vincularse con sus proveedores en la nube.

La estrategia en la nube de Couchbase, por otro lado, se basa en la flexibilidad de despliegue y elección, al tiempo que ofrece a los clientes un control y propiedad completos de sus datos. Couchbase se construyó utilizando una arquitectura nativa de la nube como una base de datos distribuida escalable que se puede implementar en cualquier lugar a través de una infraestructura física, virtual o en contenedores. Las ofertas en la nube de Couchbase aprovechan estas ventajas arquitectónicas para centrarse en permitir a los clientes abordar sus requisitos híbridos y multi-nube con una plataforma de datos consistente que se puede implementar en las instalaciones, en el borde y en la nube.

Los clientes pueden elegir desplegar Couchbase de tres maneras diferentes: como una oferta "hágalo usted mismo" tanto en las instalaciones como en la nube, como un servicio autogestionado como parte de su infraestructura Kubernetes en las nubes privadas o en la nube aprovechando el Operador Autónomo Couchbase, o como un servicio totalmente gestionado en plataformas en la nube. Las ofertas en la nube de Couchbase siempre se despliegan dentro de la cuenta en la nube de un cliente, lo que garantiza que el cliente tenga un control total sobre la seguridad y la propiedad de los datos.

La disyuntiva crítica: la dependencia de un proveedor frente a la mejor funcionalidad de una base de datos.

Proveedor de la nube DBaaS Las ofertas son, sin duda, una opción cómoda para conseguir una gestión rápida de los datos de las aplicaciones basadas en la nube pública, pero tenga en cuenta todas las limitaciones a las que acabará enfrentándose a medida que amplíe sus despliegues. Mientras tanto, los costes se dispararán rápidamente a medida que aumente la capacidad. Rick Houlihan, sin embargo, ofrece una perspectiva contraria con respecto a los costes en su LinkedIn artículo. Resta importancia a las numerosas diferencias funcionales entre las ofertas NoSQL (en contraste con la rigurosa evaluación de Forrester de los criterios técnicos reales de compra), y su tesis afirma que todo se reduce simplemente al coste. Las bases de clientes de Couchbase y MongoDB sugieren que este no es necesariamente el caso, con capacidades diferenciadas y, en el caso de Couchbase, las mejores de su clase, que impulsan la adopción generalizada de NoSQL en la actualidad.

Seleccionar la base de datos que crecerá con su aplicación es fundamental, sobre todo teniendo en cuenta que el rendimiento máximo de la aplicación estará limitado por el rendimiento subyacente de la base de datos. Los clientes ya no se conforman con comprar más hardware para resolver los problemas de rendimiento de las aplicaciones y eficiencia operativa. Como resultado, muchos clientes ya han rediseñado sus aplicaciones para aprovechar NoSQL, pero evitar las características de los sistemas relacionales, como el esquema normalizado y ACID, no es una opción.

Dado que el alcance y los requisitos de las aplicaciones cambian y evolucionan con el tiempo, es fundamental contar con una plataforma que permita un desarrollo ágil. De hecho, asumir que NoSQL es la más adecuada para consultas sencillas que faciliten la conservación de la CPU, de modo que el rendimiento sea impulsado por un modelado de datos desnormalizado adecuado, es quizás sólo una perspectiva adoptada por aquellos que están limitados por su base de datos NoSQL que no admite consultas y análisis ricos y complejos. Una base en estándares abiertos, SQL para JSON, permite a los clientes migrar rápida y fácilmente de relacional a NoSQL, entendiendo que forzar la desnormalización de la base de datos para adaptarse a NoSQL es contra-intuitivo. En su lugar, Couchbase permite un esquema NoSQL optimizado animando a los clientes a rediseñar el modelo de datos para reflejar el patrón de acceso de su aplicación, y utiliza Join donde todavía es imperativo evitar la redundancia de datos y mantener la integridad de los datos.

La compatibilidad de N1QL de Couchbase con las uniones ANSI es una solución realmente elegante dentro de una plataforma NoSQL de primera categoría que se ha diseñado para ofrecer rendimiento a escala, lo que ayuda a los clientes a ocupar menos servidores en los centros de datos (por ejemplo, Rakuten Viber migró de MongoDB a Couchbase y ha reducido a la mitad el número de servidores de AWS). Aunque algunos productos NoSQL ofrecen características que suenan similares, su implementación y sus limitaciones inherentes se hacen evidentes una vez que se intenta utilizarlos realmente. Por ejemplo, el marco de agregación de MongoDB requiere que los documentos residan en el mismo fragmento para soportar uniones con búsquedas entre documentos, lo que afecta gravemente a la flexibilidad y el rendimiento de la base de datos.

Conclusión

Mientras que la nube pública DBaaS pueden parecer muy sencillas y fáciles de usar, ninguna proporciona adecuadamente la amplitud de capacidades que se ofrecen desde el primer momento. Por ejemplo, depende del cliente aprovisionar clústeres de DynamoDB Accelerator (DAX) o utilizar ElastiCache para reducir la latencia, vincular DynamoDB a RedShift para análisis o vincularlo a Lambda para gestionar picos de rendimiento, todo ello sin una vista/API consolidada".

Siendo realistas, una solución, especialmente documento o clave-valor, no sirve para todo. Hay espacio en el espacio NoSQL para múltiples soluciones y plataformas que soporten la elección, como Couchbase. Rendimiento, fiabilidad y escalabilidad son los principios fundamentales detrás de NoSQL y donde Couchbase sobresale, a la vez que hace que el acceso a datos de documentos JSON y KV sea rápido y sencillo. Y lo que es más importante, los líderes tecnológicos, arquitectos y desarrolladores de aplicaciones por igual quieren herramientas conocidas, como SQL, para no tener que contratar o aprender paradigmas completamente nuevos o API propietarias para el acceso a los datos.

En última instancia, lo que desea es rendimiento con mayor flexibilidad para el desarrollador y facilidad de uso, todo ello sin dependencia del proveedor. Por desgracia, AWS solo cumple algunos de estos requisitos, y los clientes seguirán eligiendo varias soluciones para sus aplicaciones.  Couchbase se utiliza habitualmente para capas de almacenamiento en caché, fuentes de verdad y sistemas de registro en casos de uso de gran escala y flexibilidad, incluidas aplicaciones móviles offline-first. Ha sido seleccionado para impulsar las aplicaciones más críticas para el negocio de las empresas y se ha desplegado con éxito en entornos físicos, virtualizados, de contenedores y de nube pública (aproximadamente 30% de despliegues en nubes públicas como AWS). Por su diseño, se accede a Couchbase y se gestiona a través de un conjunto coherente de API, y se escala, actualiza y diagnostica como una sola unidad, lo que convierte a Couchbase en una plataforma de base de datos completa que no solo aborda las necesidades de múltiples nubes de hoy, sino que ofrece la flexibilidad para adaptarse a las necesidades del mañana.

Comparte este artículo
Recibe actualizaciones del blog de Couchbase en tu bandeja de entrada
Este campo es obligatorio.

Autor

Publicado por Thomas Dong

Thomas Dong es vicepresidente de marketing de productos y soluciones en Couchbase. Thomas es un científico de datos e innovador de marketing con más de 20 años de liderazgo de productos como tecnólogo y estratega.

1 Comentarios

  1. Fantástico y muy informativo. Sin duda lo utilizaré para debates competitivos sobre DynamoDB, CosmosDB y similares.

Deja un comentario

¿Listo para empezar con Couchbase Capella?

Empezar a construir

Consulte nuestro portal para desarrolladores para explorar NoSQL, buscar recursos y empezar con tutoriales.

Utilizar Capella gratis

Ponte manos a la obra con Couchbase en unos pocos clics. Capella DBaaS es la forma más fácil y rápida de empezar.

Póngase en contacto

¿Quieres saber más sobre las ofertas de Couchbase? Permítanos ayudarle.