SQL Azure是什么?
SQL Azure是微软基于Microsoft SQL Server Denali,也就是SQL Server 2012构建的云端关系型数据库服务。SQL Azure是SQL Server的一个大子集,能够实现SQL Server的绝大部分功能,并且将它们作为云端的服务来扩展。SQL Azure Database提供内置的高精准、可用性、功效与其他功能。
一般情况下,如果企业内部需要新建一个数据库服务,需要经历采购硬件、网络布线、安装操作系统、安装驱动程序、安装数据库软件等过程,整个过程显得漫长而繁琐,并且后期需要IT人员来维护数据库服务器。
但哪些订阅SQL Azure服务的用户,可以方便快速使用SQL Azure服务而不需要采购任何硬件和安装软件。对于用户来说,SQL Azure就像是一个在Internet上已经创建好的SQL Server服务器,由微软托管和运维,并且部署在微软的6大数据中心。用户只要简单的选择离自己物理位置最近的数据中心,就能立刻快速的享受到SQL Azure的服务。
SQL Azure能提供:
- 传统SQL Server的功能,如表、视图、函数、存储过程和触发器等。
- 数据同步:提供数据同步和聚合功能
- 管理:为SQL Azure提供自动配置、计量、计费、负载均衡、容错和安全功能。
- 数据访问:定义访问SQL Azure的不同编程方法,目前SQL Azure支持TDS,包括ADO.NET,实体框架,ADO.NET Data Service,ODBC,JDBC和LINQ客户端。
SQL Azure Database与SQL Server Database有什么不同?
SQL Azure Database提供由微软托管的在云端的高可用性,可扩展性,多租户数据库服务。SQL Azure Database可以实现自主管理,供应与更简便的多数据库部署。开发者不必安装或管理任何软件。对于企业使用者来说,因为没有安装硬件和部署软件的过程,所以也降低了获得Database的时间与成本。
对于开发者来说,可以利用已有的T-SQL开发知识与熟悉的关系数据模式来使用SQL Azure进行开发和管理。SQL Azure Database可以让我们通过使用已有的开发工具,比如Visual Studio, SQL Server Management Studio来进行开发。同时SQL Azure Database还支持Ado.net, ODBC等连接方式,并且支持Entity Framework。
SQL Azure Database有哪些新特性?
SQL Azure Database会自动进行三重备份,也就是说SQL Azure Database会自动将其自身复制到同一个数据中心不同物理主机之上,产生一个主备份和2个副备份。这样就提高了SQL Azure的可靠性、可用性、企业级别的安全特性,增加了数据库的安全性。如下图所示:
Data Sync (数据同步)
有些特殊的情况下,可能需要让局域网内的SQL Server数据和云端的Windows Azure数据库保持数据一致,SQL Azure的Data Sync功能能方便的让您本地的SQL Server 2008/SQL Server 2008 R2数据库服务器与云端的SQL Azure数据库进行同步。它提供单向和双向数据同步,从而让数据可以轻松地在 SQL Azure 数据库和内部部署 SQL Server 数据库之间以及在同一数据中心或不同数据中心中的多个 SQL Azure 数据库之间进行共享。
使用SQL Azure Database的好处是什么?
1.降低了总体拥有成本(TCO)
因为SQL Azure Database是云端的关系型数据库,您无需安装硬件、操作系统和数据库软件等过程,所以不需要IT人员来管理数据库,也不会产生License等费用;并且SQL Azure Database的费用是按创建个数和数据库大小来进行收费的,您在不需要的情况下也可以删除数据库,这样就不会产生任何费用。
2.提高了可用性
因为SQL Azure Database支持三重备份,您无需部署集群(Cluster)和心跳网卡等过程。
3.多租户
对于独立软件研发商(ISV)来说,他们可以在构建一套Web Site的情况下,使用SQL Azure。把用户的数据和配置放在相同(不同)的数据库(数据表)中进行隔离,那就可以让多个用户(租户)使用同一套系统,而且该租户只能看到自己的数据,不能看到其他租户的数据(也可以通过加密的方式,即使其他租户看到该数据也无法解析)。
在使用SQL Azure Databse后开发模式有哪些改变?
之前,SQL Azure Database 支持具有弹性的,基于实体的数据模式。在收集了大量有价值的反馈之后,很明显我们的云端需要一个完全关系型数据模式。SQL Azure 呈现了从ACE编程模式到具有许多熟悉的类SQL Server的编程模式概念的关系型数据模式的转变。开发者可以使用现有的Transact-SQL 代码去访问云端的数据。他们也会创建或修改使用Transact-SQL代码应用程序,来与完全关系型云数据库服务交互。 另外,他们也可以通过使用现有的数据访问框架,如:ADO.NET数据服务,来提供REST或者SAOP服务。
SQL Azure Database如何收费?
SQL Azure Database基于创建和每天消耗数据库数量的平均值,按月收费。
参考资料:http://blogs.msdn.com/b/azchina/archive/2010/03/01/sqlazurefaq.aspx