Una nueva categoría de bases de datos, concebidas para manejar problemas que se detectaron primero dentro de Facebook o Google, han atraído financiación – unos 500 millones de dólares en total – con la promesa de competir en un mercado del que Oracle ha sido durante décadas la fuerza hegemónica. Bob Wiederhold, CEO de Couchbase, afirma rotundamente que no tiene interés en ser la base de datos de compañías de la ´vieja economía` sino que su campo de juego es la economía digital, con un crecimiento cuatro veces más rápido, según dijo. Couchbase, junto con MongoDB y DataStax representan la punta de lanza de las bases de datos NoSQL, principal – aunque no única – alternativa a las relacionales.
No es la primera vez que Couchbase aparece en este blog. En 2014, el autor tuvo ocasión de visitar la sede de la empresa, entonces en el distrito financiero de San Francisco. El mes pasado se presentó una segunda oportunidad, durante una fugaz visita de Wiederhold a Madrid. El encuentro se celebró en la sede de Epic Labs, un centro de innovación de software con el que la empresa californiana tiene un acuerdo para apoyar la implantación de su base de datos en empresas españolas.
Couchbase, que junto con Mongo DB y DataStax representa la punta de lanza de las bases de datos NoSQL, aunque este no son las únicas que se baten en el intento de debilitar el papel de las bases de datos relacionales. Su lista de clientes es, como poco, sugestiva.
Empezaré por pedirle que refresque el estado del mercado de las bases de datos y, en ese contexto, cuál es el papel de NoSQL.
El total del mercado está en torno a los 40.000 millones de dólares, una cifra que será mayor o menos según a quién le pregunte. Por supuesto, los actores dominantes se llaman Oracle, IBM y Microsoft: según los datos de IDC, el año pasado el 92% correspondía a las bases de datos relacionales. Pensamos que esta proporción va a cambiar radicalmente en los próximos 15 años. Dos de los factores que van a precipitar el cambio son NoSQL en las operaciones y Hadoop en el espacio analítico. Otras tecnologías están contribuyendo a la disrupción y esto forma parte del fenómeno que llamamos economía digital. Básicamente, consiste en la rápida expansión de una oferta de productos y servicios basados en la experiencia online, con una fuerte orientación cloud.
[…] y la aparición de nuevas aplicaciones.
Claro. En primer lugar, lo estamos viendo con las aplicaciones web y móviles y con el profundo interés por IoT, que son muy dependientes de contar con una buena base de datos. Significa que la base de datos tiene que ser fácilmente escalable para soportar un gran número de usuarios simultáneos, y debe tener un rendimiento muy alto: nadie, en nuestros días, quiere quedarse sentado esperando que pase algo con su aplicación.
¿Podría definir la escalabilidad con más precisión?
Hoy, incluso las empresas medianas necesitan ser capaces de escalabilidad para soportar miles de usuarios simultaneos, algo que hace años parecía exclusivo de algunas grandes organizaciones. Estas han subido otro nivel: millones o miles de millones de usuarios simultáneos. Es algo que las bases de datos relacionales tienen muchísimas dificultades para soportar. En cuanto al rendimiento, en muchas aplicaciones es imprescindible un acceso a los datos en menos de milisegundos. Y, por tanto, también hay que moverse muy rápido en la fase de desarrollo. Esta es la razón de existir de los nuevos lenguajes de programación, capaces de soportar diferentes modelos de datos: NoSQL, JSON [Javascripto Object Notation] es un estándar opuesto al relacional . Otro asunto no menos importante es la alta disponibilidad, lo que suele denominarse always on o 24/365: los clientes no quieren saber nada de paradas de mantenimiento, y es otro problema para el que no han sido diseñadas las bases de datos relacionales.
Ha dicho cuatro factores…
1) Escalabilidad, 2) rendimiento, 3) entorno de desarrollo ágil y 4) alta disponibilidad. Son los cuatro motores del movimiento hacia NoSQL, al que se adscribe Couchbase, aunque también están MongoDB, DataStax, Cassandra… NoSQL es la mejor respuesta a las necesidades de los negocios de la economía digital: estamos en una fase temprana de ese cambio, pero se está acelerando. Algunos de los grandes nombres de la economía digital aquí en Europa están usando Couchbase: Amadeus, Tesco, Banque Postale, Sky, BetFair, Ladbrokes, por nombrar algunas compañías que han construido sus negocios apoyándose en Couchbase.
Para esos clientes, ¿cuál es la ventaja de NoSQL con respecto a las bases de datos relacionales o a SQL?
Las cuatro que he mencionado. En cuando a escalabilidad, el problema de las relacionales es que se trata de una tecnología que crece de modo centralizado si uno tiene que soportar más y más usuarios, deberá poner máquinas más y más grandes, y separar su base de datos, lo que siempre es, necesariamente, una fuente de problemas.
¿No ocurre con NoSQL?
No, porque NoSQL es una tecnología distribuída que corre en servidores estándar, ´comoditizados` […] Si se necesita soportar una carga excepcional, pongamos algo como Black Friday o Cyber Monday por ejemplo, habrá que estar preparados para el número de personas que van a acceder ese día a un sitio de comercio electrónico. Con NoSQL, es posible añadir 20 servidores y seguirá siendo una sola base de datos, única, pero si por alguna razón hubiera que añadir otro 10 servidores más, la base de datos podrá soportar fácilmente un número de usuarios más alto y a la vez. Por esto, uno de nuestros verticales más habituales es el e-commerce: Nike, Walmart, Tesco trabajan con Couchbase; es la misma razón por la qué numerosos sitios online de apuestas deportivas son clientes nuestros.
[…] el comercio electrónico tiende a ser global. ¿Tiene alguna influencia?
Esa es otra dimensión de la escalabilidad. Grandes actores de la economía digital tienen centros de datos en distintas partes del mundo, y por tanto, cada uno ha de ser espejo de otro. Una ventaja clave de NoSQL es la que llamamos XDCR (cross datacenter replication), que permite replicar los datos de cualquier centro de datos para dar soporte a la audiencia global; es un aspecto de la escalabilidad en el que nosotros somos especialmente fuertes. Por el lado del rendimiento, hay estudios que demuestran cuánto tarda un log en una determinada aplicación, y en cuánto tiempo se degrada si tarda más de lo aceptable para el usuario final. Cuando usted ´loguea` pone en movimiento una cantidad de datos y perfiles que no imagina, pero que harán de su experiencia la mejor posible; el problema del proveedor es evitar que el rendimiento se degrade; ahí tiene otra razón de existir de NoSQL.
Pero NoSQL, y por tanto Couchbase, se enfrentan a un competidor formidable, Oracle. ¿Cómo va esa batalla?
Probablemente más del 60% de nuestro negocio se genera por la sustitución de bases de datos relacionales, y puesto que Oracle es la fuerza dominante de ese mercado, nos toca frecuentemente sustituir implantaciones de Oracle. También de IBM, Microsoft, MySQL y Progress SQL. Tenga en cuenta que la economía digital no empezó hace dos o tres años, sino en 1995, cuando en la práctica no había más opciones que Oracle, IBM y Microsoft, que no estaban preparadas para el advenimiento. En 2002 entró en escena MySQL, luego Progress SQL, y la situación mejoró para las aplicaciones digitales. Han aparecido nuevas propuestas y en mi opinión la pluralidad es buena noticia.
¿En qué ha cambiado el panorama, según usted?
Si hoy hubiera que empezar desde cero, sinceramente no creo que nadie lo hiciera a partir de Oracle. Desde aproximadamente 2011, cualquiera que construye una nueva aplicación, probablemente en lo primero que piensa es NoSQL. Aunque Oracle tiene una enorme base instalada, muchos de sus clientes descubren que la tecnología relacional no soporta sus necesidades actuales […] Pasa lo mismo con el mundo de los mainframes: uno de nuestros grandes clientes, la cadena hotelera Marriott, ha optado por Couchbase para distanciarse de la tecnología mainframe subyacente, que no es adecuada a sus requerimientos en el presente.
¿Debo entender que Couchbase soporta cualquier plataforma?
No. Couchbase funciona en servidores x86, que son los dominantes del mercado en entornos Linux y Windows,… aunque por supuesto hay distintos sabores de Linux y de Windows. Es una realidad en los negocios basados en nube, y por consiguiente no tenemos interés en soportar otra cosa que los servidores x86.
Con mi pregunta anterior, le pedía una especie de balance de la batalla entre SQL y NoSQL.
Con las tecnologías disruptivas, la adopción empieza lentamente y luego crece exponencialmente. A medida que la economía digital ha ido madurando, observamos una creciente ganancia de mercado de NoSQL. Es evidente que la curva de aprendizaje lleva tiempo, que hace falta personal con experiencia, y que las empresas tienen que llegar a convencerse de que esta tecnología es adecuada para misiones críticas […]. En cuanto a Couchbase, nuestro enfoque es clarísimo: la economía digital, por lo que tenemos una presencia sustancial en el comercio electrónico y en los servicios financieros […] que están muy activos en la web y en las aplicaciones móviles.
Ladbrokes, BetFair, Unibet, Skybet,… en su lista de clientes hay unos cuantos especialistas en apuestas online. ¿Hay alguna explicación?
Es un hecho que esas empresas han ido cerrando la mayoría de sus puntos físicos y desplazando su actividad a la web. Utilizan Couchbase como un almacén de perfiles de usuarios. Volviendo al comercio electrónico, el carrito online no es otra cosa que un almacén de sesiones. Otro caso corriente es el catálogo de productos: Tesco tiene un enorme número de referencias con todo tipo de atributos, y se apoya en Couchbase. En todos los casos que le he nombrado, se trata de misiones críticas, que garantizan la plena confianza en su funcionamiento; de otro modo, no lo harían.
¿Cuál es el papel de los desarrolladores en esa estrategia?
Fundamental, existencial. Somos una compañía open source, y como todas tenemos una versión gratuita, que los desarrolladores pueden descargar para trabajar con ella y hacer uso ilimitado de nuestro software. Les ofrecemos conferencias, webinars y eventos para asegurarnos de que son conscientes de nuestra existencia y de nuestra manera de trabajar con ellos. En nuestro website pueden encontrar toda la documentación, snippets de código, ayudas para crear sus aplicaciones primerizas. Tenemos una comunidad muy activa… y cuando se enfrentan al desarrollo de aplicaciones complejas van a necesitar soporte técnico de Couchbase, que es un servicio de pago.
Tratándose de una compañía open source, es inevitable preguntar por el modelo de negocio.
Nuestro código es open source, se puede descargar para hacer con él lo que se quiera; luego está la versión comunitaria y, por último, la Enterprise Edition, que es de pago, con sus correspondientes soporte técnico y SLA [service-level agreement]. Los únicos componentes de naturaleza ´propietaria` de Couchbase forman parte de esta edición, y son los que las empresas usan para aplicaciones de misión críticas. Quiero subrayar que ningún componente para desarrolladores es ´propietario`, sólo aquellos que operan a escala del cliente. Hay operaciones muy importantes funcionando con Couchbase sobre este modelo de negocio.
¿Cuál es la fórmula de monetización?
No es nuestra intención el tratar de monetizar el gran número de usuarios que trabajan con Couchbase a pequeña escala. Si alguien quisiera usar nuestro producto sin necesidad de un alto rendimiento, y se sintiera cómodo con nuestra Community Edition, fantástico, le saldrá gratis. La oportunidad para NoSQL es de miles de millones de dólares y reside en la venta a las empresas de la economía digital, que operan a una escala muy significativa … estos clientes están dispuestos a pagar y desde luego pueden pagar.
Con esa hipótesis, la última ronda de financiación de Couchbase recaudó 30 millones de dólares. ¿Son suficientes para sostener ese modelo?
Como usted sabe, el mundo de las inversiones en startups ha cambiado mucho en los últimos tiempos. Hasta finales de 2015, las valoraciones fueron muy altas para compañías de las que se presumían oportunidades de crecimiento. Muchas de esas compañías captaron mucho dinero y quemaron mucho dinero, pero esa fiesta se ha acabado, por una serie de razones […] Estamos viviendo un parón en las salidas a bolsa, y pocas compañías tienen hoy la valoración que tuvieron hace un tiempo. La buena noticia es que Couchbase no es una de esas compañías que han dilapidado el dinero de los inversores: sabíamos que esa fase no duraría eternamente, y hemos sido prudentes en el uso de los recursos.