摘要: 内存中OLTP集成到SQL Server中的同时,也具备不同于传统关系型数据库系统特别是SQL Server的一些独特功能。本节的目的是向读者提供一些这样的注意事项。本节并不提供有关迁移的综合指导,许多关于具体需求,支持功能和外围应用的深入讨论已超出了本文的范围。 阅读全文
posted @ 2015-02-05 17:02 hukn 阅读(1081) 评论(0) 推荐(0) 编辑
摘要: 以下章节讨论了一些常见的经历了瓶颈的应用程序实施和前面所述的场景。所有这些场景都从实施内存中OLTP中受益良多。 以下汇总表提供了每个场景的模式特点,挑战和内存中OLTP带来的主要收益。这将帮助你了解符合你的需求的特定的实施。请注意,某些场景下并不互相排斥,并且一些实施的细节可适用于多种场景。 阅读全文
posted @ 2015-01-10 14:36 hukn 阅读(1114) 评论(0) 推荐(1) 编辑
摘要: 内存中OLTP是集成到SQL Server2014中并针对现代硬件趋势进行设计的一个高性能的内存优化引擎。内存中OLTP允许用户在将数据保留在传统的基于磁盘的表结构中的同时,将数据迁移到常驻内存的表中。对于那些对性能要求很高的工作负荷,用户还可以将Transact-SQL代码迁移到本地编译的存储过程。这种方式能够提供额外的性能提升。本文旨在帮助读者了解内存中OLTP可提供显著受益的一些常见的架构模式。本文还讨论了将应用程序迁移到内存中OLTP的注意事项。 阅读全文
posted @ 2014-12-31 12:55 hukn 阅读(1391) 评论(0) 推荐(0) 编辑
摘要: 内存中OLTP将本机编译的概念引入到了SQL Server 2014中。SQL Server可以在本机编译访问内存优化表的存储过程,而且实际上,也本地编译了内存优化表本身。本机编译比起传统的解释型Transact-SQL可以提供更快的数据访问和更高效的查询执行。 阅读全文
posted @ 2014-11-17 13:28 hukn 阅读(1561) 评论(0) 推荐(1) 编辑
摘要: 正如之前所介绍的 ,所有对 内存优化表数据的访问都是使用完全的乐观并发控制实现的,但也允许使用其他多个事务隔离级别进行访问。然而,在什么样的情况下允许什么样的隔离级别,看起来似乎有点混乱和不直观。需要考虑的隔离级别是那些涉及到交叉容器事务的隔离级别,这意味着任何引用内存优化表的解释型查询是来自于一个显式还是隐式的事务,或者是否处于自动提交模式下执行。在交叉容器事务中可以用于内存优化表的隔离级别取决于事务已经为SQL Server事务定义了什么隔离级别。大部分的限制都与一个事实有关,也就是即使是在同一个Transact-SQL事务中访问基于磁盘的表和内存优化表,基于磁盘的表上的操作与内存优化表上的操作各自都有它们自己的事务序列号。你可以把这种行为看作是一个较大的事务中具有两个子事务:一个子事务用于基于磁盘的表,一个子事务用于内存优化表。 阅读全文
posted @ 2014-11-16 16:48 hukn 阅读(1191) 评论(0) 推荐(0) 编辑
摘要: 内存中OLTP的内存优化表与表上的索引采用了与基于磁盘的表非常不同的方式进行存储。内存优化表并不像基于磁盘的表那样存储在数据页或者从盘区中分配的空间中,这是由于内存优化表是为按字节寻址的内存而不是按块寻址的磁盘所优化的设计原则决定的。 阅读全文
posted @ 2014-10-27 09:12 hukn 阅读(2234) 评论(2) 推荐(1) 编辑
摘要: 内存中OLTP(项目名为“Hekaton”)是一个新的完全集成到SQL Server中的数据库引擎组件。它专为访问内存常驻数据的OLTP工作负荷而进行优化。内存中OLTP有助于OLTP工作负荷实现显著的性能改进,并减少了处理时间。可以通过将表声明成“内存中优化”来启用内存中OLTP的功能。内存优化表完全支持事务,并且可以使用Transact-SQL进行访问。 Transact-SQL存储过程可以被编译成机器代码从而进一步提升内存优化表的性能。引擎针对高并发进行设计,并使阻塞最小化。 阅读全文
posted @ 2014-10-12 21:44 hukn 阅读(5926) 评论(1) 推荐(2) 编辑
摘要: 最近在网上看到不少文章介绍使用SQL Server 2012的新特性:OFFSET/FETCH NEXT 实现分页。多数文章都是引用或者翻译的这一篇《SQL Server 2012 - Server side paging demo using OFFSET/FETCH NEXT》,原文地址。邀月对此也做了性能测,《SQL Server 2012服务端使用OFFSET/FETCH NEXT实现分页》,不过老外或者邀月的代码都并没有真正显示出OFFSET/FETCH NEXT的性能比起原有的ROW_NUMBER()方式好多少。我试了下,发现主要是在取COUNT(*)上,如果OFFSET/FETC 阅读全文
posted @ 2012-11-29 17:09 hukn 阅读(16544) 评论(2) 推荐(4) 编辑
摘要: 看到有人贴出这样的问题:http://www.cnblogs.com/zc_0101/archive/2011/12/09/2282307.html感觉SQL Server在比较Date和Datetime这两种类型的时候,是将Date类型强制转换成了'2011-11-04 00:00:00.000'的Datetime进行比较,因此Date类型的'2011-11-04'和Date类型的'2011-11-04 23:59:59'一样大,但是Date类型的'2011-11-04'比Datetime类型的'2011-11-04 2 阅读全文
posted @ 2011-12-09 17:45 hukn 阅读(4769) 评论(0) 推荐(0) 编辑
摘要: SQL Server 2008 在配置订阅的时候是可以看到支持订阅服务器为Oracle或者DB2的,但是复制到MySQL没有直接的界面操作。经过测试,通过MySQL的ODBC驱动,是可以实现将SQL Server 2008复制到MySQL,从而实现主库是SQL Server,只读库为MySQL的架构。首先,需要正常配置分发和发布数据库,不赘述。其次可参考之前的这篇:http://www.cnblogs.com/hukn/archive/2011/07/27/SQL_Server_ODBC_LinkServer_MySQL.html ,安装MySQL的ODBC驱动,并在ODBC数据源管理器中新建 阅读全文
posted @ 2011-07-28 16:39 hukn 阅读(2480) 评论(1) 推荐(2) 编辑