Introducción a las bases de datos como servicio (DBaaS). RedisLabs.
Entendiendo las bases de datos como una aplicación más cualquiera, y extendiendo el concepto de SaaS (software como servicio), se puede entender las DBaaS como una nueva manera de acceder al uso de una base de datos, respondiendo a los principios del cloud computing:
- Vamos a tener disponible nuestro servicio, en nuestro caso, una base de datos, de forma automática y bajo demanda, es decir sin que ningún operador de la empresa que ofrece el servicio tenga que realizar ninguna operación para que el cliente obtenga el servicio.
- La base de datos debe ser accesible desde internet.
- Se puede ofrecer el servicio usando el modelo de recurso compartido, donde varios usuarios pueden estar compartiendo recursos, por lo tanto es necesario garantizar el aislamiento y la seguridad entre usuarios.
- Elasticidad, que es la propiedad que me permite aumentar o disminuir la capacidad de mi recurso, mi base de datos, de forma automática y en cualquier momento.
- El pago por uso.
Evidentemente a ser la base de datos un software, es necesario combinar los DBaaS con un PaaS o un IaaS para conseguir una infraestructura totalmente operativa. Los DBaaS ofrecen tanto bases de datos relacionales (MySql, PostgreSQL,..), como base de datos no relacionales o noSQL cómo Redis, CouchDB o MongoDB. Como ejemplo de empresas que ofrecen estos servicios tenemos Amazon, que ofrece Amazon DynamoDB o ClearDB que ofrece un servicio MySQL.
RedisLabs: Redis como DBaaS
Como vimos en el artículo anterior, Redis es una base de datos no relacional, que guarda la información en conjuntos clave-valor. La empresa RedisLabs nos ofrece Redis como DBaaS. Nos podemos dar de alta en la página y podemos obtener de forma gratuita a una instancia con una base de datos Redis con una limitación de 25 Mb de memoria y 10 conexiones simultaneas. Para empezar a trabajar con esta infraestructura es suficiente, si necesitamos más recursos podemos obtenerlos por una cuota mensual. Tras darte de alta en la página, puedes dar de alta una nueva base de datos con el plan gratuito, y puedes obtener el servicio de una nueva base de datos, como observamos en la siguiente imagen:
En el parámetro Endpoint
obtenemos la dirección de la instancia y el puerto al que nos tenemos que conectar. Además hemos configurado una contraseña para el acceso a nuestra base de datos, la puedes ver en el parámetro Redis Password
Usando por lo tanto un cliente de redis, podemos realizar la conexión a la base de datos y empezar a trabajar con ella:
# redis-cli -h pub-redis-99999.us-east-1-3.3.ec2.garantiadata.com -p 12345
pub-redis-99999.us-east-1-3.3.ec2.garantiadata.com:12345> AUTH la_contraseña
OK
pub-redis-99999.us-east-1-3.3.ec2.garantiadata.com:12345> SET usuario pepe
OK
pub-redis-99999.us-east-1-3.3.ec2.garantiadata.com:12345> GET usuario
"pepe"
Como siempre esto es sólo una introducción sobre DBaaS, si quieres seguir formándote sobre el tema, te recomiendo leer el artículo Dbaas, Database as a Service, una introducción usando Redis de J.J. Merelo.
Leave a Comment
Your email address will not be published. Required fields are marked *