摘要:
一个项目碰到性能问题,要我去优化。Oracle数据库,项目日志记录一个查询语句运行4个小时。因为对Oracle DB管理调优不熟,一开始从逻辑层面优化SQL语句,对照执行计划觉得应当差不多了,测试运行时间比较长(等了1分钟多没有运行完,就Cancel掉)。 进一步的分析发现: 1. PL/SQL Developer的Explain Plan Window中执行计划显示不准确。 可能是S... 阅读全文
摘要:
前言 不管是博客园还是CSDN,看到很多朋友对数据库的理解、认识还是没有突破一个瓶颈,而这个瓶颈往往只是一层窗纸,越过了你将看到一个新世界。 04、05年做项目的时候,用SQL Server 2000,核心表(大部分使用频繁的关键功能每次都要用到)达到了800万数据量,很早以前查过一些相关表,有的达到了3000多万,磁盘使用的光纤盘, 100G空间,每周必须备份转移数据,否则100G空... 阅读全文
摘要:
Hints for Optimization Approaches and Goals ALL_ROWS The ALL_ROWS hint explicitly chooses the cost-based approach ... 阅读全文
摘要:
工作机器(开发ASP.Net程序,.Net Framework 1.1)在域里面,SQL 2000服务器不在域中,突然出现SQL企业管理器和查询分析器都可以连接到SQL 2000服务器,而.Net程序则连不上,报错“SQL Server服务器不存在或拒绝访问”。 以前好像也这样用过,并没有出问题,看来可能跟域的控制策略有关系,这段时间公司域策略调整比较频繁,没有登陆域的机器和域里面机器... 阅读全文
摘要:
解决问题时走了一些弯路,但是过程中有些东西可能对以后有点借鉴性,因此记录下来。 客户反映,几天以来系统有一个保存操作在早上10之前一直无法进行,过了10点就OK。 客户的环境为.Net开发的Web应用,用的SQL Server 2000数据库,表中数据量都是几十万、几百万左右,因此一开始重点怀疑10点之前有某些操作锁住了某些表(我们系统确实有些操作,一个工厂需要跑1、2 十分... 阅读全文
摘要:
Pages & Extents(页和扩展盘区) SQL Server 2000最基本的数据存储单元是data page,1个8K的存储空间。在分配存储空间时,SQL Server 2000并不是每次分配1个page,基本的存储空间分配单元是8个page的连续空间,称为extent。 关于SQL Server 2000的page、extents和index结构,参考:MSDN - ... 阅读全文
摘要:
Degree of Parallelism(并行度) 一个查询使用并行来处理时,SQL Server为该查询分配多个线程,每个线程使用一个CPU进行操作。Degree of Parallelism就是SQL Server为并行查询分配的线程数量,也表明这个并行查询将使用多少个CPU进行并行处理。 Exchange Oprators(交换操作) 查询语句的执行计划中,通... 阅读全文
摘要:
SQL Server 6.5使用Windows的调度处理管理多线程,和其它Windows应用程序一样,它使用的Windows标准API,没有用到任何隐藏API,这使得 SQL Server的工作线程同其它多线程Windows程序完全一样,没有任何特殊的优先级,同等的被Windows调度。在SQL Server 7.0之后,需要具有处理几千并发用户的能力,而Windows的线程调度方法,使得SQL... 阅读全文
摘要:
大部分情况下,SQL的优化调整,就是做一系列让optimizer做出更好选择/决定的事情。充分理解SQL语句的编译、优化、执行过程,才能更有效的开发良好性能的SQL Query。 对于一个效率较差的Query,我们应当了解SQL Server会用怎样的步骤来执行,为什么用这样一个步骤,然后我们就可以影响、改变SQL Server的这个选择,以提高性能。 Some concept... 阅读全文
摘要:
Server Architecture Figure "Server Architecture" illustrates the main components of the relational engine portion of SQL Server. The illustrated components can be organized into three groupings of... 阅读全文
摘要:
Client Architecture "What is the native interface of SQL Server?". Many developers were resistant to interfaces like ODBC because they thought that DB-Library, the client API developed by Sybase,... 阅读全文
摘要:
Ken Henderson Microsoft Corporation January 2004 本专栏摘选自《The Guru's Guide to SQL Server Architecture and Internals》 Introduction 在这篇专栏里,我们将从开发者的角度来探讨SQL Server内存管理内幕。就是说,我们将讨论SQL S... 阅读全文