C军

不玩博客了!

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 50 下一页

2013年11月8日

摘要: 1、创建统计语法:CREATE STATISTICS statistics_name ON { table_or_indexed_view_name } ( column [ ,...n ] ) [ WHERE ] [ WITH [ [ FULLSCAN | SAMPLE number { PERCENT | ROWS } | STATS_STREAM = stats_stream ] [ , ] ] [ NORECOMPUTE ] ] ; ::= [AND ] ::= | ... 阅读全文
posted @ 2013-11-08 11:08 逆心 阅读(1444) 评论(0) 推荐(0) 编辑

2013年11月7日

摘要: location.href这个东西常常用于跳转,location既是window对象的属性,又是document对象的属性。JavaScript hash 属性 -- 返回URL中#符号后面的内容JavaScript host 属性 -- 返回域名JavaScript hostname 属性 -... 阅读全文
posted @ 2013-11-07 17:24 逆心 阅读(2163) 评论(0) 推荐(1) 编辑

2013年11月6日

摘要: SQL Server允许用户手工地控制单独数据库中的统计维护。SQL Server的4个主要的控制紫铜统计的维护的配置如下:在无索引的列上新建统计(自动创建统计);更新现有统计(自动更新统计);用于收集统计的采样度;现有统计的异步更新(自动异步更新统计); 可以在数据库级别(所有表上的所有索引和统计)或基于单个索引或统计情况下来控制上述配置。自动创建统计设置仅适用于非索引列,因为SQL Server在索引创建时始终为一个索引键创建统计。自动更新统计设置的异步版本适用于索引和WHERE子句中没有索引的列。一、自动维护 默认情况下,SQL Server自动处理统计。自动创建统计和自动更新统... 阅读全文
posted @ 2013-11-06 15:05 逆心 阅读(618) 评论(0) 推荐(0) 编辑

摘要: 非索引列上的统计 有时候,可能在连接或过滤条件中的列上没有索引。即使对这种非索引列,如果查询优化器知道这些列的数据分布(统计),它也很可能做出最佳的选择。 除了索引上的统计,SQL Server可以在没有索引的列上建立统计。即使不是索引列,当你开启了SQL Server自动创建统计功能,SQL Server就自动在执行WHERE、JOIN等查询列上创建统计。数据分布的信息或者特定值出现在非索引列上的可能性,都能够帮助查询优化器确定最优的处理策略。即使查询优化器不能真正使用索引来定位这些列,这也仍然对其有利。如果SQL Server确信这些信息对创建更好的计划有利(这通常发生于这些列被用于一.. 阅读全文
posted @ 2013-11-06 14:12 逆心 阅读(643) 评论(0) 推荐(0) 编辑

摘要: 一、索引在查询优化中的角色 SQL Server的查询优化器是基于开销的优化器、它通过确认选择性、数据的唯一性以及过滤数据(通过WHERE或JOIN子句)所使用的列来决定最佳的数据访问机制。统计与索引一同存在,但是它们也作为断言的一部分存在于没有索引的列上。 作为谓词引用的列中数据分布的最新信息帮助优化器确定所使用的查询策略。在SQL Server中,这个信息以统计的形式维护,这对于基于开销的优化器创建一个有效的查询执行计划是很重要的。通过统计,优化器能做出返回结果集或中间结果集所花费时间的精确估计,从而确定最高效的操作。只要确定数据库已经进行了默认的统计设置,优化器就能尽其所能地动态确定.. 阅读全文
posted @ 2013-11-06 14:09 逆心 阅读(1026) 评论(0) 推荐(0) 编辑

2013年11月5日

摘要: 在有大量事务的数据库中,表和索引随着时间的推移而碎片化。因此,为了增进性能,应该定期检查表和索引的碎片,并对具有大量碎片的进行整理。 1、确定当前数据库中所有需要分析碎片的表。 2、确定所有表和索引的碎片。 3、考虑一下因素以确定需要进行碎片整理的表和索引。 高的碎片水平-avg_fragmentation_in_percent大于20%; 不是非常小的表或索引-也就是page_count大于8的; 4、整理具有大量碎片的表和索引; 这里给出一个样板SQL存储过程,它执行以下操作; 遍历系统上的所有数据库并确认符合碎片条件的每个数据库中表上的索引,并将它们保存到一个临时表中... 阅读全文
posted @ 2013-11-05 23:25 逆心 阅读(2996) 评论(2) 推荐(0) 编辑

2013年11月4日

摘要: SQL Server提供了一个被称为数据库引擎调整顾问的工具。这个工具帮助为一个给定的工作负载确认一组最优的索引,而不需要对数据库结构或SQL Server内部结构的深入了解。它还能为一小部分有问题的查询建议调整选项。除了好处该工具也有坏处。应该正确地使用。一、数据库引擎调整顾问机制 可以直接选择SQL Server 2008=》性能工具=》数据库引擎调整顾问来使用它。 从Management Studio运行一个查询(选中所需查询,选择查询=》在数据库引擎调整顾问中分析查询),或者从Management Studio=》选择=》数据库引擎调整顾问中运行它。一旦该工具被打开并且连接到一... 阅读全文
posted @ 2013-11-04 14:36 逆心 阅读(1241) 评论(0) 推荐(0) 编辑

摘要: 一、分析查询执行计划 执行计划的阅读顺序为,从右到左,从上到下。 由执行计划表示的查询执行的一些特征如下:如果查询由多个查询的批组成,每个查询的执行计划按照执行的顺序显示。批中的每个执行计划将有一个相对的估算开销,整个批的总开销为100%。执行计划中的每个图标代表一个操作符。它们每个都有一个相对的估算开销,执行计划中的所有节点的总开销是100%。执行计划中的一个起始操作符通常表示一个数据库对象(表或索引)的数据检索机制。数据检索通常是一个表操作或一个索引操作。索引上的数据检索将是索引扫描或索引超找。索引上的数据检索的命名管理师[表名].[索引名]。数据从右到左两个操作符之间流动,由一个连接.. 阅读全文
posted @ 2013-11-04 14:24 逆心 阅读(1716) 评论(0) 推荐(0) 编辑

摘要: SQL Server有3种连接类型:Hash连接;合并连接;嵌套循环连接; 在许多影响小的行集的简单查询中,嵌套循环连接远远优于hash和合并连接。用于查询的连接类型由优化器动态决定。 下面我来先来建立两张简单的表。Province(十条数据)=》PersonTenThousand(1万数据),省份和人的关系,一对多,外键相连;一、Hash连接 为了理解哈希连接,在这个连接中PersonTenThousand在连接列PId上没有任何索引,先来看看如下查询: 可以看到,优化器在两个表之间使用了Hash连接。这种情况经常出现于下表(大表)较大,并且下表(大表)的连接列上没有索引。 ... 阅读全文
posted @ 2013-11-04 10:35 逆心 阅读(2737) 评论(0) 推荐(0) 编辑

2013年11月3日

摘要: 尽管查询的执行计划提供了详细的处理策略的单独步骤涉及的估计相对开销,但是它没有提供查询实际的CPU使用、磁盘读写或持续时间等开销。 还有其他比运行Profiler更直接手机性能数据的方法一、客户统计 客户统计将计算机作为服务器的一个客户端,从这个角度出发去捕捉执行信息。这意味着任何记录事件包括通过网络传送数据的时间,而不仅仅是SQL Server本身所花费的时间。 要使用客户统计,只需要单击=》查询=》包含客户统计。 现在,每当运行一个查询,就会收集一个限定的数据集,包括执行事件,影响的行数、到服务器的往返次数等。进一步,查询的每次执行在客户统计选项卡上被分别显示,有一列将多次的执... 阅读全文
posted @ 2013-11-03 22:59 逆心 阅读(3689) 评论(0) 推荐(0) 编辑

上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 50 下一页