Compartir a través de


Acceso a datos en SQL Azure

La gran ventaja de utilizar SQL Azure frente a otros sistemas de almacenamiento en la nube es que todos los conocimientos sobre bases de datos relacionales y el lenguaje de consulta SQL siguen siendo válidos. No es necesario adaptarse a nuevos paradigmas de almacenamiento, como pasa con otros sistemas de almacenamiento en la nube no basados en bases de datos relacionales ni SQL.

SQL Azure, construido sobre SQL Server, permite incluso migrar backends de datos a la nube si tener que tocar ni una sola línea de código de las aplicaciones en un gran número de escenarios.

SQL Azure expone a través del protocolo TDS (Tabular Data Stream) las base de datos existentes en la nube. El protocolo TDS es el mismo protocolo que emplea SQL Server, por lo que una aplicación cliente puede conectarse a SQL Azure de la misma manera en que se conecta a un SQL Server.

A la hora de conectar desde nuestras aplicaciones clientes, podemos elegir varios tipos de conexión:

  • ADO.NET, incluido Entity Framework.

  • Acceso ODBC nativo.

  • Soporte para PHP.

En cuanto a la ubicación de la aplicación cliente, no existen restricciones a la hora de conectarse a SQL Azure. Cualquier aplicación puede conectarse a una base de datos de SQL Azure siempre y cuando tenga los permisos adecuados y las reglas del firewall de SQL Azure se encuentren debidamente configuradas.

Aunque la forma de conectarse sea idéntica a la forma de conectarse a un SQL Server, no debe olvidarse la latencia de la red. Desde el punto de vista de rendimiento debemos siempre considerar que la base de datos de SQL Azure se encuentra en un Data Center remoto y que el nivel de eficiencia no puede ser el mismo que podría llegar a conseguirse empleando un SQL Server dentro de la misma red.

Por este motivo, desde el punto de vista de diseño de la arquitectura de una aplicación, debe valorarse cuál podría ser la mejor ubicación de la aplicación cliente para poder ofrecer el rendimiento esperado. En muchas ocasiones, el escenario que mejor rendimiento permite es ubicar la aplicación cliente dentro de Windows Azure, en el Data Center más cercano posible.


Figura 1.- Conexión a SQL Azure