Contrariamente al nombre, sin servidor no significa que no haya una infraestructura tradicional detrás de un servicio. Más bien, significa que las empresas pueden activar funciones bien orquestadas que no parecen consumir tales recursos. Sin embargo, debe haber algún almacén de datos debajo de todo esto, incluso si no es inmediatamente obvio de qué se trata.
Lo que sigue es una discusión de tres opciones de almacenamiento sin servidor que se pueden usar junto con la computación sin servidor.
Servicios de base de datos en la nube
La tecnología sin servidor se asocia con mayor frecuencia con la nube pública, lo que hace que los servicios de bases de datos en la nube pública sean un objetivo de almacenamiento natural para las funciones sin servidor. Los servicios de bases de datos en la nube proporcionan un alto nivel de escalabilidad y, en la mayoría de los casos, garantizan que los datos estén protegidos mediante tolerancia a fallos distribuida.
Tomemos como ejemplo Amazon Aurora Serverless. Amazon indica que Aurora Serverless está «construido sobre almacenamiento Aurora distribuido, tolerante a fallas y autorreparable con replicación de seis vías para proteger contra la pérdida de datos».
Con las opciones compatibles con MySQL y PostgreSQL, queda claro que Aurora Serverless tiene una capa completa de almacenamiento sin servidor debajo. También puede optar por la tecnología sin servidor con Amazon DynamoDB, una base de datos NoSQL sin servidor.
En el frente de Azure, Microsoft ofrece opciones de almacenamiento que incluyen Azure Storage, así como Azure Cosmos DB.
Servicios de almacenamiento de objetos
Como una capacidad que utiliza mucho de lo que impulsa a las personas a considerar la nube, no debería sorprender que el almacenamiento de objetos, como Amazon S3 y Azure Blob, sea simple e ideal para aplicaciones a escala web. Este almacenamiento es relativamente económico, estandarizado y altamente escalable cuando se usa para almacenamiento sin servidor.
El almacenamiento de objetos, con sus metadatos asociados, es un buen enfoque cuando tiene que lidiar con muchos datos consistentes.
Caché de memoria de la aplicación
A veces, necesita un entorno de almacenamiento sin servidor que no sea tan permanente como los servicios de almacenamiento persistente. Ahí es donde entran en juego las herramientas de almacenamiento en caché de memoria de aplicaciones como Redis. Redis y las tecnologías sin servidor se crearon una para la otra. Serverless le permite ejecutar un montón de funciones sin preocuparse por la infraestructura subyacente. Redis es un almacén de valores clave en memoria que, como su nombre lo indica, evita el almacenamiento persistente tradicional en favor de un enfoque en memoria que puede abordar las necesidades de las aplicaciones de alto rendimiento, aunque puede admitir la escritura de conjuntos de datos en el disco para habilitar un mayor nivel de disponibilidad.
El almacenamiento en memoria para funciones sin servidor permite un alto rendimiento con baja latencia, lo que lo convierte en una opción ideal para aplicaciones modernas y distribuidas.