Recientemente he estado considerando la opción de Cloud SQL para SQL Server ofrecida por Google Cloud Platform (GCP). Esta es la plataforma de servicios en la nube ofrecida por el gigante Google. En terminos de servicios cloud, parece que aún no está al nivel de Amazon Web Services (AWS) o Microsoft Azure. Sin embargo, el crecimiento de GCP en los último años dos años ha sido significativo.
Qué es Cloud SQL
Antes de continuar, resulta interesante tener en mente en qué consiste el servicio de Cloud SQL de GCP.
Se trata de un servicio de base de datos relacional completamente gestionado. Tareas típicas de administración como la realización copias de seguridad, la configuració de la replicación, encriptación, actualización de versiones y aumento de la capacidad quedan completamente automatizadas.
Nota: En este artículo, he decido centrarme en las cuatro grandes empresas de Cloud a nivel mundial, según Gartner.
GCP tiene su servicio llamado Cloud SQL, mientras que el resto de grandes proveedores tienen su producto equivalente: AWS tiene RDS, MS tiene Azure Database y AlibabaCloud tiene ApsaraDB.
Versiones soportadas
Una de las cosas que inicialmente me llamó la atención fue que GCP solo ofrece la version 2017 de SQL Server, lo cual es un gran contratiempo para empresas que intentan sacar ventajas a su competencia por medio del uso de las nuevas características de la versón más reciente, en cualquier producto. Sin embargo, para hacer esta crítica más justa hace falta ver lo que ofrecen los demás.
Extendiendo la comparatativa a los demás proveedores y a otros motores de bases de datos relacionales populares, tenemos:
De aquí destaco algunos hechos para cada proveedor:
- AWS: Amplio en versiones soportadas, pero sólo ofrece la versión 11 de PostgreSQL, aquí explican el porqué.
- Azure: Amplio en versiones soportadas. La única opción que ofrece SQL 2019.
- GCP: Buenas opciones en PostgreSQL, limitado en el resto. El único que no ofrece MySQL 8, y nada de MariaDB.
- AlibabaCloud: Amplitud de versiones soportadas para las cuatro tecnologías de bases de datos cubiertas en este análisis.
Sorprende que un proveedor como Google no ofrezca MySQL 8, dos años después de su fecha de lanzamiento (19 de Abril de 2018). De hecho, es la petición más votada por la comunidad de GCP para Cloud SQL, puedes verlo aquí.
Otras ausencias
Volviendo al punto de partida, el análisis de la opción de Cloud SQL para SQL Server, he encontrado otras características que no están soportadas:
- Change Data Capture (CDC), no aparece en el listado de características no disponibles, y sin embargo no está soportado. Hilo abierto. Esta carencia también ocurre para PostgreSQL. No pasa con el resto de proveedores:
- SQL Server CDC soportado en AWS.
- SQL Server CDC soportado en Azure.
- SQL Server CDC soportado en AlibabaCloud.
- SQL Server Collation, no se puede indicar a la hora de crear la instancia. Esto afecta entre otras cosas, a cómo se manejan las cadenas de caracteres. Si nuestra DB no coincide a nivel de collation con la de la instancia, hay riesgo de sufrir un impacto negativo en el rendimiento. Hilo abierto.
- Instance level Collation, soportado en AWS.
- Instance level Collation, soportado en Azure.
Estas son ausencias que personalmente he echado en falta. Hay muchas más características en SQL Server que pueden ser revisadas entre los 4 grandes proveedores mencioandos, pero eso seguramente daría para varios artículos más extensos.
Conclusiones
GCP nos ofrece un producto Cloud SQL adecuado para proyectos de base de datos que encajen dentro de sus limitaciones. Sin embargo, hay otros proveedores en el mercado con más opciones. Además, Google debería prestar más atención a su comunidad de usuarios de Cloud SQL, respondiendo sus peticiones.
Por otro lado, no le quitaremos ojo a AlibabaCloud en los tiempos venideros. Van a dar que hablar.
¡Hasta el próximo artículo!