T-SQL基础教程:SQL Server的ABC特色

来源:互联网 发布:中国古代知乎 编辑:程序博客网 时间:2024/06/16 02:28


作者:Itzik Ben-Gan

图书:http://item.jd.com/11362891.html

多年来,SQL Server只有一个特色——盒子,或是称为(企业)内部部署。最近,微软决定提供多种特色,让客户能够选择最适合他们的需要。在这篇文章期间,微软提供了SQL Server的三个主要特色,内部称为ABC特色:A是应用(Appliance),B是盒子(Box),C是云(Cloud)。

1.应用

 “应用”特色背后的理念是提供包括硬件、软件和服务在内的完整解决方案,应用是在客户端本地托管的。在有多种应用可用的今天,其中之一就是并行数据仓库(Parallel Data WarehousePDW)。Microsoft合作伙伴与戴尔和惠普等硬件厂商提供应用支持,由微软和硬件厂商的专家为客户处理性能、安全性和可用性方面。

这本书的重点是T-SQL,所以你可能想知道那种语言用于与数据库引擎进行交互,这取决于具体的应用。例如,PDW不使用相同的引擎作为客户端引擎,而是使用专用的引擎。专用PDW引擎使用其自己特色的SQL,称为分布式SQLDSQL。微软的长期目标是使语言支持不同特色的产品,但尚未实现。这本书的重点是被某些应用、(企业)内部部署和云特色所支持的T-SQL

2.盒子

SQL Server的“盒子”特色,正式的称谓是(企业)内部部署的SQL Server,这是传统的部署方式,通常安装在客户场所内。客户负责所有的事情——硬件、安装软件、处理更新、高可用性和灾难恢复(HADR)、安全,以及其他事项。

客户可以在同一个服务器上安装产品的多个实例(更多信息在下一节中),可以编写查询与多个数据库交互。也可能在数据库之间切换连接,除非其中一个是包含数据库。

查询语言使用的是T-SQL。如果你希望的话,你可以在一个内部部署的SQL Server工具上运行本书中的所有代码示例和练习。有关获取和安装SQL Server评估版,以及创建示例数据库的详细信息,请参阅附录中的相关信息。

3.云

微软支持两种SQL Server云特色:私有云和公共云。云这个术语用于私有情况应当是有点混乱,因为它在本地托管,但私有特色使用了虚拟化技术。引擎是一个“盒子”引擎(因此使用相同的T-SQL查询),但因虚拟化技术的限制,私有云的性能是有限的,例如CPU和内存的支持数量。

公共云特色称为Windows Azure SQL Database(以前名为SQL Azure),它是在微软数据中心托管,硬件、维护、HADR和更新全部由微软负责,但是客户仍旧负责索引和查询优化。

注意:后续的“Windows Azure SQL Database 引用将使用简化形式“SQL Database”。

使用SQL Database,客户可以在云服务器(当然是一个概念性的服务器)上有多个数据库,但一次只能连接到一个数据库,客户不能在数据库之间切换,也不能编写多数据库查询。

SQL Database引擎是一种专用引擎,不过微软使用了与(企业)内部部署版本相同的代码基,因此在SQL Database中实现的T-SQL功能基本上与那些本地化中实现的功能相同。在本书中学习的大部分T-SQL均能够应用于SQLServer的(企业)内部部署和云特色,但是也有一些例外,例如,一些基于(企业)内部部署的SQL Server T-SQL功能尚未在SQL Database中执行或实现。SQL Database联机手册在Transact-SQL参考部分详细描述了这些功能,地址http://msdn.microsoft.com/en-us/library/windowsazure/ ee336281.aspx。你还应注意的是,SQL Database的新版本更新和部署进度比(企业)内部部署的SQL Server快很多,因此,一些T-SQL功能有可能在它们出现在(企业)内部部署的SQL Server版本之前已经在SQL Database中实现了。

如上所述,本书中讨论的大多数T-SQL已经或是即将在SQL Database中可用。附录部分包括了本书示例数据库的安装,以及如何在SQLDatabase中安装示例数据库,以防未安装即开始访问它们。

0 0