SQL Azure 概览与总结
SQL Azure 数据库是微软提供的云端数据库服务,其体系结构参考如下图:
本文将对SQL Azure的特性、安全性、管理工具等进行一个简单的总结,以便大家快速的了解SQL Azure数据库。
1.SQL Azure 主要特性
1)易管理性: SQL Azure 提供高稳定性的企业数据中心,而无需日常管理费用。
2)低耦合数据供应:可以快速的创建数据存储需求的数据库,并且能够迅速的适应不断变化的需求。
3)高稳定性:提供自动故障转移、恢复、备份等服务,而无需手动管理。
4)可扩展性:可根据你的需求创建对应大小的数据库。
5)全球可扩展性: SQL Azure 运行在全球各地的数据中心,你无需额外的开支即可部署全球性的数据服务,并且指定最靠近市场的数据中心部署你的服务。
6)多租户支持:SQL Azure支持独立软件提供商隔离不同的客户数据并且分别处理SQL Azure账单。
7)程序员友好性:程序员无需学习新的技术知识即可轻松的基于SQL Azure创建云计算的相关应用程序。
8)熟悉的客户端开发模型:提供对ODBC,JDBC等的支持。
9)关系型数据模型。
10)数据同步服务与离线场景支持:可以通过Microsoft Sync Framework在SQL Azure数据库、本地SQL Server,手机等等之间进行数据同步。
2.SQL Azure的安全性
SQL Azure 可以通过防火墙配置仅允许特定的IP、IP段的用户访问。不同于SQL Server 2008 R2,SQL Azure数据库角色新增了 dbmanager 以及 loginmanager ,分别用来进行数据库的管理和服务器登陆用户管理。对于数据库级别和服务器登陆用户的数据库任何操作,需要连接到master数据库。master数据库是默认的数据库。SQL Azure仅仅支持SQL账户登陆。对数据库的各个对象的权限控制,可以通过与登陆用户对应的user,数据库角色role,数据库schema等来进行不同粒度的控制,这与SQL Server 类似。
3.SQL Azure与SQL Server的区别
1)新增dbmanager 以及 loginmanager数据库角色
2)默认数据库为master,无法设定默认数据库
3)不支持use语句,对不同数据库的操作需连接到不同的数据库,创建数据库服务器登陆帐户与数据库需要连接到master数据库
4)每一个表必须包含聚集索引
5)Heap Table(堆表)不支持,即不支持无索引的表
6)HierachyID数据类型的CLR类型支持,其余不支持
7)创建加密的视图和存储过程不支持
8)View的创建在Batch中必须居首
9)CLR的函数不支持
10)全文索引不支持
11)XML列创建索引不支持
12)Filestram数据类型不支持
13)稀疏列不支持
4.SQL Azure的管理工具
SQL Azure支持几种管理工具:
1)Windows Azure Management Portal进行管理,如创建数据库服务器,创建、更改、删除数据库,对数据库的数据对象进行管理,如创建、删除、修改表以及查询数据等。
2)SQL Server Management Studio (SSMS) 2008 R2
3)SQL Server Management Studio (SSMS) 2008 R2 Express
4)Visual Studio 2010
可以直接通过VS2010的Server Explorer连接到SQL Azure数据库并进行相应的管理。
5)Microsoft® Project Code-Named “Houston”
访问地址https://www.sqlazurelabs.com/。目前该工具处理CTP阶段,可以用于oData数据服务注册管理,SQL Azure数据库同步,数据导入导出等。
6)SQLCMD
可以通过SQLCMD连接到SQL Azure数据库并且进行相应的管理。参考http://msdn.microsoft.com/library/ee336280
5.数据导入导出,迁移升级工具
1)SQL Azure Migration Wizard v3.7.7
2)SQL Server Integration Services (SSIS)
3)SQL Azure Data Sync Services(2011年9月1日起已不再支持)
4)Sync Framework for SQL Azure
5)Microsoft SQL Server Migration Assistant for Access 5.0
6)Microsoft SQL Server Migration Assistant for MySQL v5.0
6.SQL Azure支持的服务
1)oData 服务: https://www.sqlazurelabs.com/ConfigOData.aspx
2)SQL Azure Reporting:
SQL Azure 上的 Reporting Services (目前状态为 CTP),可以让企业与开发人员直接利用 SQL Azure 数据库来产制 Business Intelligence 的解决方案,SQL Azure Reporting Services 可支持 SQL Server Reporting Services 的大部份功能,并且沿用 Business Intelligence Development Studio 作为报表开发的工具。
3)SQL Azure Data Sync:
可以通过Microsoft Sync Framework实现云端(cloud)与本地段(on-premise)相互之间的数据同步。
7.参考资料与相关链接
1)Windows Azure Management Portal
2)Overview of Microsoft SQL Azure Database
3)Getting Started with SQL Azure Development