7.2.7 讨论
Microsoft SQL Azure将传统的关系型数据库SQL Server搬到云环境中,比较符合用户过去的使用习惯。当然,云SQL Server与单机SQL Server还是有一些区别:
●不支持的操作:Microsoft Azure作为一个针对企业级应用的平台,尽管尝试支持尽量多的SQL特性,仍然有一些特性无法支持。比如USE操作:SQL Server可以通过USE切换数据库,不过在SQL Azure不支持,这是因为不同的逻辑数据库可能位于不同的物理机器。
●观念转变:对于开发人员,需要用分布式系统的思维开发程序,比如一个连接除了成功、失败还有第三种不确定状态:云端没有返回操作结果,操作是否成功我们无从得知;对于DBA,数据库的日常维护,比如升级、数据备份等工作都移交给了微软,可能会有更多的精力关注业务系统架构。
相比Azure Table Storage,SQL Azure在扩展性上有一些劣势,例如,单个SQL Azure实例大小限制。Azure Table Storage单个用户表格的数据可以分布到多个存储节点,数据总量几乎没有限制;而单个SQL Azure实例最大限制为50GB,如果用户的数据量大于最大值,需要用户在应用层对数据库进行水平或者垂直拆分,使用起来比较麻烦。