SaaS necesita un nuevo sistema de datos. Esa es la idea impulsora detrás Nilo, una startup que tiene como objetivo crear este sistema de datos con Postgres sin servidor en su núcleo. Cofundada por Sriram Subramanianexjefe de ingeniería en la nube de Confluent, y Gwen Shapirael ex líder de ingeniería del equipo de Kafka en Confluent, Nile, está creando esta nueva solución de datos con soporte integrado para múltiples inquilinos como sus primitivos principales.
La compañía anunció hoy que ha recaudado una ronda de financiación inicial de 11,6 millones de dólares liderada por Eric Vishria de Benchmark, quien también fue el inversor principal original de Confluent.
“Mientras mi equipo creó el producto multiinquilino para Confluent, no me di cuenta de que esto es algo que cada SaaS en el mundo es multiinquilino, todos necesitan manejar datos multiinquilino, y tenemos que seguir construyendo estas cosas desde cero porque no existe ningún sistema que lo haga”, me dijo Shapira.
Subramanian señaló que prácticamente todas las bases de datos del mercado actual se crearon como herramientas de propósito general. «Cuando haces eso, terminas teniendo que construir algo que sea el mínimo común denominador en todos los diferentes casos de uso», explicó. “Basándonos en nuestra experiencia al hacer de Confluent una empresa SaaS durante seis años, encontramos muchos desafíos a la hora de aprovechar la base de datos de la manera que queríamos, y no solo la base de datos en sí, sino también resolver todos los problemas de datos a su alrededor que eran esencialmente lidiar con la integración con la base de datos. Esto podría ser autenticación, facturación, etc.
Como era de esperar, ese es exactamente el problema que Nile intenta resolver. La idea aquí es que cada empresa SaaS tiene una capa de datos en su núcleo y, dado que estamos hablando de empresas SaaS, todas tienen que resolver el problema del multiinquilino de una forma u otra, sin importar si están en el espacio B2B o B2C. .
Por lo general, eso implicaba sobreaprovisionar servidores para poder reaccionar ante picos (y aceptar el costo adicional de hacerlo) o mover clientes específicos a sus propias bases de datos y clústeres para garantizar el aislamiento (por razones tanto de seguridad como de rendimiento).
“Tenemos muchas historias de incidentes de empresas conocidas con las que hablamos en las que este inquilino afectó a otro incidente, o actualizaron (o no actualizaron) y eso afectó negativamente a algunos de los otros clientes. Necesitaban retroceder, pero solo para algunos de los clientes, y terminó siendo un incidente que duró semanas mientras intentaban realizar cambios quirúrgicos manualmente para los clientes correctos. Es un problema que parecía endémico”, dijo Shapira.
Tradicionalmente, argumentó el equipo, la resolución de problemas relacionados con la gestión de datos y bases de datos siempre era un problema de aplicación más que un problema de base de datos. Nile está cambiando esto al hacer del multi-inquilino una característica central de su solución Postgres y al separar la capa de datos de la capa de computación. Eso significa que los usuarios pueden conectar una base de datos de inquilinos virtual a un servicio informático compartido o adjuntarle un nodo informático dedicado, por ejemplo. Los desarrolladores solo necesitan definir con qué base de datos necesita comunicarse la aplicación y Nile luego proporciona el aislamiento en la sesión y, próximamente, el nivel de conexión.
¿Por qué Postgres? Según Subramanian, hacia allí se dirige el mercado. Prácticamente todas las empresas con las que habló el equipo apostaban por Postgres. «Es bastante obvio que se convertirá en el Linux de las bases de datos», afirmó. El hecho de que sea de código abierto y fácilmente extensible también permite a Nile hacer lo que hace.
“Hablamos con cientos de empresas de SaaS y cuando les preguntas: ¿Cómo se hacen las colas? ¿Cómo gestionas los trabajos? ¿Cómo se hacen análisis? ¿Cómo se hacen los datos no estructurados? ¿Cómo se hace big data? ¿Cómo haces esto? ¿Cómo haces eso? Y cada vez es: oh, lo hacemos en Postgres. ¿Puede Postgres hacer eso? Oh, sí, absolutamente”, explicó Shapira. “¿Eso funciona tan bien como las alternativas? A veces sí. A veces no. Pero las empresas SaaS, el 90% de las veces, parecen estar muy contentas de hacer absolutamente todo con Postgres”.
Además de acelerar el desarrollo, dado que los desarrolladores no tendrán que construir sus propios sistemas para administrar múltiples inquilinos y la capa de autenticación necesaria para eso, el equipo de Nile también sostiene que su servicio puede reducir los costos al centralizar las bases de datos en una sola ubicación ( incluso cuando los inquilinos pueden estar en diferentes lugares) y facilitando el escalado mediante fragmentación horizontal.
Además de todo esto, Nile también ofrece funciones para la gestión de usuarios, paneles de control de clientes, incrustaciones de vectores para casos de uso de IA (basados en pgvector) y más. La empresa ofrece un plan gratuito limitado (actualmente detrás de una lista de espera), con planes pagos aún en proceso.