(译)走进SQL Server 2005 tempdb数据库(三)

从零构建NVENC编码器:一个游戏开发者的实战手册 本文详细介绍了如何从零构建NVENC编码器,特别针对游戏开发者提供实战指南。内容涵盖NVENC基础概念、DirectX纹理捕获、异步编码优化及高级特性配置,帮助开发者高效集成硬件编码技术到游戏引擎中,实现高性能游戏录制和直播功能。重点解析了NVIDIA专用编码芯片的优势与API使用技巧。 阅读详情

 

上篇文章(http://blog.youkuaiyun.com/CN_SQL/archive/2009/02/11/3876521.aspx)我们介绍了tempdb的空间使用类型,这次我们将介绍SQL Server 2005中tempdb的改进。

 

下面这些是SQL Server 2005 tempdb的几个重要的改进点:

 

.   tempdb日志操作优化避免了将“之后的值”纪录到日志里。当没有这种优化执行

    一个更新操作时,更新之前的值和更新之后的值都是被纪录在日志里。举例来说,

    如果某人把一个数据条目由“ABC”更新成“XYZ”,ABC就是之前的值,XYZ就是之

    后的值,而XYZ是不需要被纪录到日志里的,对于插入操作也是这样。这个优化

    对于堆和LOB数据有很大的好处。这种优化能最大限度的减少tempdb的日志大小,

    从而提高tempdb日志所在的物理磁盘的I/O传输性能。

 

.   当文件被创建或者文件大小增长时,即时文件初始化工作不使用零来填充NTFS

文件,这将最大限度的减少了tempdb自动增长时的开销。如果没有这个优化,

tempdb很可能需要很长的时间来完成操作,同时很可能导致应用程序超时。这个

优化需要操作系统是Windows XP 专业版,Windows 2003或者更高的版本,同时

需要为SQLSERVER账号分配特殊的卷权限才能实现。有关即时文件初始化的更多

内容,请参考联机帮助相关章节。

 

    .   当在tempdb中分配页和区时,分配页闩锁协议得到改善,从而减少了更新闩锁数。

        另外,分配一个表的前8页的效率得到了改善。因此,当大量用户同时访问tempdb

        数据库时,也会减少PFS,SGAM,以及GAM页的资源争夺。

 

    .   被优化后的均衡填充可以减少更新闩锁的资源争夺。均衡填充的意思是:当tempdb

        数据库有多个数据文件时,每个数据文件将以均衡的填充比例写入,从而可以保证

        操作在所有的数据文件中几乎是同一时间。这种操作在写入期间是通过消除了更新

闩锁来实现的。在SQL Server 2000里,当tempdb同时有很多用户在操作时,这

个更新闩锁将成为很大的资源争夺点。

 

    .   tempdb拥有延迟删除的功能。这个延迟删除的意思是:当一个很大的临时表被应

        用程序删除时,应用程序不需要太长的等待,有些操作可以异步的通过后台进程来

        完成删除操作,因此,它减少了应用程序的响应时间。

 

    .   WorkTable缓存得到改善。当一个执行计划被缓存时,Work table通过计划所需要

的多个操作的所有信息并不会被删除,只是截断,Work table 的前9页将会被保留。在SQL Server 2000中,这些信息将全部被删除。SQLServer2000和

SQLServer2005都使用了一个很小的全局的预分配页和区的池来使得work table

的内部创建变得更快。

 

 

 

    .   SQL Server 2005缓存临时对象。当我们在存储过程,函数,触发器中使用表值函

数,表变量,或者局部的临时表时,频繁的删除和创建是非常耗时的,这将导致

Tempdb数据库上系统目录和分配页的资源争夺。在SQL Server 2005里,这些是

被缓存了的,意思是,删除和创建这些临时对象是非常迅速的。当SQL Server删

除一个临时对象时,它并不移除这个对象的目录条目。如果一个临时对象小于8M,

一个数据页和一个IMA页将会被缓存,因此当重新创建这个临时对象时,这些页就不需要再重新分配。如果一个临时对象大于8M,系统将会使用上面提到的延迟删

除的机制。当tempdb的磁盘空间不足时,SQL Server会清空这些临时对象的缓存。

 

    .   SQL Server 2005通过CREATE TABLE 或者SELECT INTO语句来缓存临时表。在某

些情况下,临时表不会被缓存,比如当它被创建后指定了一个明确的DDL操作,或

者指定的约束。如果做为动态语句或者ad-hoc批操作的一部分,临时表也不会被缓存。下面的代码展示了通过动态语句创建一个临时表,这个临时表将不会被缓存。

 

sp_executeSQL N'create table #t(a int)'

 

   

下次,将继续走进tempdb数据库,介绍它所需要的磁盘空间存储。

TPS5430/54302调试血泪史:从‘烫手山芋’到冒烟烧板,我的5V电源到底怎么了? 本文深入剖析了TPS5430/TPS54302 DCDC电源芯片调试中的常见问题,包括异常发热、电压漂移等,并提供了从热设计到PCB布局的全面解决方案。通过实战案例,揭示了数据手册中未明确的‘潜规则’,帮助工程师避免烧板风险,提升电源系统稳定性。 阅读详情

相关推荐

ThingsBoard 仪表板状态

请先通过阅读仪表板概述和仪表板入门案例来熟悉ThingsBoard的仪表板。文章希望通过浅显的文字描述什么是仪表板状态及如何使用。 概念 状态功能使得仪表板可以分层,配合小部件的动作,实现多层仪表板之间的跳转.每个状态对应一个仪表板的图层 每个仪表板有一个默认的根状态, 根状态可以理解为默认状态, 也就是打开仪表板默认展示的仪表板图层.编辑模式下, 点击右上角的图标来管理状态.添加多个状态后左上角出现状态切换(图层切换)下拉列表可以通过选中根状态复选框切换新的默认展示的状态/图层配合小部件的动作,实现状

物联网三分钟 2308

(译)走进SQL Server 2005 tempdb数据库 (一)

引言     本文内容来源于一篇白皮书,但在原文的基础上增加了部分内容,为了表示对原文作者的尊重,并未标示为原创,特此申明。目的只是希望能与各位网友一起分享好文章,如有撰写不好的地方,请多多原谅,也感谢各位的支持!  tempdb介绍     在SQL Server2005里,tempdb系统数据库经历了许多的改变,包括一些新的用法以及内部的优化,但从SQL Ser

3237

八路抢答器____一个作品的制作思路

学习了解到一个产品制作完全由一个人去采购,设计,仿真,画PCB。不光是需求的分析还有实现功能时如何搭建电路,和给出一个简单高效的设计方法也是至关重要的。

weixin_73690807的博客 1522

【sql server】临时表和Tempdb

sql server的临时表 1、创建方法: 方法一: create table TempTableName 或 select [字段1,字段2,…,] into TempTableName from table 方法二: create table tempdb.MyTempTable(Tid int) 说明: (1)、临时表其实是放在数据库tempdb里的一个用户表; (2)、TempTableName必须带“#”,“#"可以是一个或者两个,以#(局部)或##(全局)开头的表,这种表在会话期间存在,会话结

欢迎指错||纠正||建议||水评+点赞&&评论&&关注&&转发 6278

嵌入式工程师必学(9):USB 3.0协议理解

USB3.0和USB2.0相比,在线缆上从4根线(Vbus、GND、D+、D-)变为了8根线(Vbus、GND、D+、D-、SSRX+\SSRX-\SSTX+\SSTX-),可见增加的4根线都是和超速相关的,新增加的超速有两类,分别为:超速Gen1(5.0Gbps),超速+Gen2(10Gbps),还兼容USB2.0的3类速率:low-speed(1.5Mbps),full-speed(12Mbps),andhigh-speed(480Mbps)。从设计可以看出,USB3....

码农17年的博客 1万+

“华为杯”研究生数学建模竞赛2020年-【华为杯】D题:无人机集群协同对抗(附获奖论文和MATLAB代码实现)

1.问题重述摘 要:本文针对非线性约束条件下红蓝双方无人机集群协同对抗的最优规划问题,结合贪婪队形、非线性规划、内点法、蒙特卡洛方法和全联立正交配置有限元法,构建了无人机集群协同对抗推演模型。,构建了。我们综合考虑了,和。首先分析红方在集群约束下的贪婪队形和拦截策略,然后我们基于内点法联合MATLAB和AMPL编程求解蓝方突防的非线性规划解,最后基于蒙特卡洛法对整个蓝方突防过程进行推演,得到突防概率图。通过推演,我们提出了两块的区域作为所求区域,并对蓝方的最优突防策略进行分析。

getusushu的博客 1551

(译)走进SQL Server 2005 tempdb数据库(二)

上篇文章(http://blog.youkuaiyun.com/CN_SQL/archive/2009/02/07/3867694.aspx),我们对tempdb系统数据库有了一个新的认识,现在我们来慢慢对其进行深入的了解和掌握。     首先,先介绍“tempdb的空间使用”,有下面几种类型的对象会占用tempdb的空间:     .   内部对象    .   版本存储    . 

2269

SAP S/4 FICO科目辅助余额表开发说明书(包括测试样例、程序代码仅作参考,不保证一定可以运行)

SAP S/4 FICO科目辅助余额表开发说明书(包括测试样例、程序代码仅作参考,不保证一定可以运行)

我好像病了的博客 329

sql server 临时表(上) Tempdb概述

一.概述   在sql server里临时表存储在TempDB库中,TempDB是一个系统数据库,它只有Simple恢复模式,也是最小日志记录操作。主要用于存放局部临时表,全局临时表,表变量,都是基于临时特征,每次服务器或服务重启后,都会按照Model库的配置重新创建TempDB库。在sql server 2012中TempDB表可以配置在故障转移中。在TempDB库中存放三类对象包括:用户对象, 内部对象, 行版本存储。TempDB库只有一个文件组,就是primary文件组,增加其它文件组会提示报错。.

建建的博客 4454

从0到1构建数据分析AI Agent:数据采集、洞察生成与报告自动化

在企业数字化转型的今天,数据分析师80%的时间被消耗在重复取数、数据清洗、报表排版等低价值劳动上,真正用于深度业务洞察和决策支持的时间不足20%。本文将从核心概念、技术原理、代码实现、落地实践全维度,教你从0到1搭建一套完整的数据分析AI Agent系统,实现「用户用自然语言提需求→Agent自动采集多源数据→AI自动挖掘业务洞察→自动生成符合业务要求的多格式报告」的全链路自动化,平均可将需求响应速度从天级压缩到分钟级,释放70%以上的分析师人力成本。

AI Python 编程之道的博客 472

Cadence virtuos安装教程

本文详细介绍了在Ubuntu 18.04系统上安装Cadence Virtuoso IC617及MMSIM的完整流程。主要内容包括:1)系统环境准备(安装JDK及相关依赖包);2)通过创建软链接和修改系统文件实现RedHat环境兼容;3)共享目录文件操作与分卷压缩包合并解压技巧;4)使用InstallScape工具的安装步骤详解,包括权限处理和配置选项。特别提醒需注意系统兼容性处理(如创建redhat-release文件)和分卷压缩包的特殊解压方法(cat合并)。整个安装过程涉及大量Linux命令操作,需特

wangjie36的博客 298

如何监测谁用了SQL Server的Tempdb空间?

Tempdb系统数据库是一个全局资源,供连接到 SQL Server 实例的所有用户使用。在现在的SQL Server里,其使用频率可能会超过用户的想象。如果Tempdb空间耗尽,许多操作将不能完成。<br />作为一个支持工程师,会被经常问到象“我的Tempdb为什么这么大?”“是谁把我的Tempdb空间用完的?”在SQL 2000的时候,这个问题很难回答。好在SQL 2005以后,引入了一张新的管理视图:sys.dm_db_file_space_usage。通过查询这张视图,能了解tempdb的空间使用

微软亚太区数据库技术支持组 官方博客 775

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

用SQL Server 2005构建高性能的数据仓库(一)

http://hi.baidu.com/susan_jony/blog/item/e732e0deef04645cccbf1aa2.html摘要:本文主要讨论当架构一个很大的、高性能的数据仓库,特别是对那种无法预知有多少查询量的系统时要考虑的一些东西。这个讨论包括SQL Server 2005的一些新的特性以及在使用这些特性的时候需要考虑的一些东西。它同时也包括了创建或存储一个聚合的数据集来使

Reasoncool的专栏 1574

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

tempdb数据库清理_tempdb数据库,简介和建议

tempdb数据库收缩 介绍 ( Introduction ) Many times the people focus on the user databases to improve the performance, but sometimes the problem is not the user database itself. Sometimes the problem is ...

culuo4781的博客 3470

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

深刻的教训——SQL Server关于TempDB的使用

深刻的教训,SQL Server关于TempDB的使用。

DBA@Robin 9341

监测谁用了SQL Server的Tempdb空间

转自:http://blogs.msdn.com/b/apgcdsd/archive/2011/02/11/sql-server-tempdb.aspx Tempdb 系统数据库是一个全局资源,供连接到 SQL Server 实例的所有用户使用。在现在的SQL Server里,其使用频率可能会超过用户的想象。如果Tempdb空间耗尽,许多操作将不能完成。 作为一个支持工程师,会被经常问到象

lisky119的专栏 730

SQL Server 中关于系统库Tempdb总结

Tempdb系统数据库是一个全局资源,可供连接到SQL Server实例的所有用户使用。 存储的内容项: 1、用户对象 用户对象由用户显示创建。这些对象可以位于用户会话的作用域中,也可以位于创建对象所用例程的作用域中。例程可以是存储过程、触发器或用户自定义函数。用户对象可以是一下项内容之一: 用户定义的表和索引 系统表和索引 全局临时表和索引 table变量 表值函数...

483

(译)走进SQL Server 2005 tempdb数据库(四)

  对于一个应用程序来说,评估tempdb数据库的大小是非常困难的。这篇文章介绍了评估tempdb数据库所需大小的一般方法。这些方法可能不够精准,需要相当的经验和测试才能获得满意的结果。为了安全起见,建议你总是考虑多余评估大小20%的空间大小,同时也是为了考虑应用程序将来的数据增长。    为了能明白tempdb数据文件所需要的磁盘空间大小,首先需要先弄清楚SQL Server 2005中,哪

2078

丢失tempdb无法启动SQL Server2005的故障排除

最近服务器的出了些问题,将连接存储的服务器更换了之后,为了查找原因,需要重新启动SQL server,结果系统报错 Event Type: ErrorEvent Source: MSSQLSERVEREvent Category: (2)Event ID: 5123Date: 7/27/2009Time: 5:03:46 PMUser: N/ACo

无知无畏的专栏 2119

(译)走进SQL Server 2005 tempdb数据库(五)

要使SQL SERVER平稳的运作,必须把tempdb的共享资源管理好。一个低下的查询或者一个设计差的应用程序可能会导致tempdb的资源问题,从而使得整个SQL SERVER瘫痪下来。做为一个数据库管理员,应该对下面的几种类型的资源进行有效的管理:        .      空间问题。这个包括数据和日志文件的使用空间以及未使用空间。       .      I/O瓶颈问题。 

1917

在sql server 2005 中如何移动tempdb到新的位置

最近在做数据库的时候,发现经常由于tempdb太大而造成的磁盘空间不足的问题,为了解决这个问题我们使用的一个解决办法是把tempdb移到一个新的位置.下面是具体的操作步骤;1、检查tempdb的逻辑名字和它的存在位置。可以使用下面语句:Select name, physical_nameFROM sys.master_filesWhere database_id = DB_ID(tempdb

wangerranty的专栏 493

如何收缩 SQL Server 中的 Tempdb 数据库

 Tempdb 信息收缩 Tempdb 的方法 1收缩 Tempdb 的方法 2收缩 Tempdb 的方法 3在使用 Tempdb 时执行 DBCC SHRINKDATABASE 或 DBCCSHRINKFILE 的结果参考 var sectionFilter = "type !=

枫的专栏 1万+

Tempdb数据库详细介绍

一、Tempdb简介 tempdb是SQLServer的系统数据库一直都是SQLServer的重要组成部分,用来存储临时对象。可以简单理解tempdb是SQLServer的速写板。应用程序与数据库都可以使用tempdb作为临时的数据存储区。一个实例的所有用户都共享一个Tempdb。很明显,这样的设计不是很好。当多个应用程序的数据库部署在同一台服务器上的时候,应用程...

amq48426的博客 1686

sql server 2005的tempdb太大了

sqlserver 2005装在c盘,用久了竟然30g的c盘不够了,检查发现tempdb占了11G 赶快找下怎么把tempdb弄走 [code="java"] USE master GO ALTER DATABASE tempdb modify file (name = tempdev, filename = 'F:\Sql Server TempDB\Pathtempdb....

hepl博文 392

mysql tempdb_Tempdb数据库详细介绍

一、Tempdb简介tempdb是SQLServer的系统数据库一直都是SQLServer的重要组成部分,用来存储临时对象。可以简单理解tempdb是SQLServer的速写板。应用程序与数据库都可以使用tempdb作为临时的数据存储区。一个实例的所有用户都共享一个Tempdb。很明显,这样的设计不是很好。当多个应用程序的数据库部署在同一台服务器上的时候,应用程序共享tempdb,如果开发人员不注...

weixin_34405769的博客 1212
上一篇: 如何屏蔽成功备份产生的ERRORLOG信息
下一篇: (译)走进SQL Server 2005 tempdb数据库(四)
CN_SQL
博客等级 码龄18年 78粉丝 13原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值