Para tomar una decisión es necesario definir las ventajas y fortalezas de cada una de las opciones así como sus debilidades.
Para los que llevamos años en el mundo del desarrollo de aplicaciones nos es más familiar SQL Azure por ser una base de datos relacional que extiende las capacidades de SQL Server a la nube. Entre los beneficios podemos encontrar escalabilidad, alta disponibilidad, infraestructura administrada y, sobre todo, un enorme abanico de herramientas
Azure Table Storage se fundamenta en un concepto más moderno que SQL Azure, NoSQL que es NO-relacional con lo que no dispondremos de relaciones “fuertes” entre nuestros datos lo que aporta una ventaja a la hora de almacenar grandes cantidades de datos.
La mayor diferencia, como se puede observar, se trata de la fortaleza en la relación y estructuras de datos donde, en el caso de SQL Azure nos permitirá trabajar con modelos relacionales de una forma natural, con transacciones, procedimientos almacenados, triggers, etc. En el caso de Azure Table Storage no disponemos de estas relaciones y capacidades pero al mismo tiempo, al no tenerlas, se abre una amplia gama de beneficios como el hecho de poder almacenar diferentes entidades (generalmente relacionadas entre sí de forma lógica) en una misma tabla, como por ejemplo (persona, empleado y cliente) y acceder a los datos de una forma mucho más rápida y simple.
Aunque, como siempre en el ámbito de la informática, podríamos usar cualquiera de las opciones, dependiendo de la funcionalidad y del objetivo de nuestras aplicaciones habrá una de ellas que será más beneficiosa. Una forma simple de tomar la decisión es seguir un criterio basado en lo siguiente:
En el caso de que nuestra aplicación necesitara de los beneficios de ambas opciones, siempre podríamos optar por la posibilidad de almacenar algunos datos en SQL Azure y otros en Azure Table Storage sin mayor problema que el de tener que disponer de dos cadenas de conexión y dos conectores diferentes para poder interactuar con la información.
Algunas cuestiones a tener en cuenta son los tipos de datos, que en Azure Table Storage se limitan a 8 básicos, con lo que tendríamos que tener bien definidos nuestros modelos o, de lo contrario, podríamos estar perdiendo información. Los tipos aceptados son los siguientes:
Si bien, Azure Table Storage es capaz de almacenar hasta 200TB de información por tabla, frente a los 150GB por base de datos de SQL Azure, también hemos de tener en cuenta que el primero sólo es capaz de trabajar con filas de no más de 1MB frente a los 2GB de capacidad por fila del segundo. Esto nos indica una cosa bien clara, y es que en Azure Table Storage no vamos a poder almacenar ficheros en la base de datos tal y como sí se podía hacer en SQL Azure por lo que debemos apoyarnos fielmente en Azure Blob Storage, otro de los pilares del almacenamiento en Microsoft Azure.
Podría parecer extraño pero, Azure Table Storage sólo permite obtener 1000 filas por consulta y, aunque nos provee de métodos para continuar con la extracción de datos, no deja de ser un “problema” que debemos tener en cuenta a la hora de elegir esta opción. En cambio, SQL Azure tal y como SQL Server, no dispone de límite más que el que nos imponga la tecnología que estemos usando.
Si necesitáis más información al respecto, podéis contactar con nosotros o acceder a los sitios oficiales de ambas opciones, SQL Azure y Azure Table Storage
Este sitio web utiliza cookies para que tengas la mejor experiencia de usuario. Si continuas navegando, estás dando tu consentimiento para aceptar las cookies y también nuestra política de cookies (esperemos que no te empaches con tanta cookie 😊)