zoukankan      html  css  js  c++  java
  • SQL Server 2008 性能调优 optimize for ad hoc workloads

    参数化和即席查询,都是一个二难的选择。

    一旦选择参数化 就有可能带来 一种情况就是 执行计划反复被利用。

    不会通过收集现有的统计信息,出一个比较优异的执行计划。

    即席查询也就是 ad hoc query,每次都需要重编译,花费比较大。

    这个是一个2难,需要平衡。对于这个问题 sql server 有 简单参数化,强制参数化和2008 才有的optimize for ad hoc workloads。

    optimize for ad hoc workloads 的原理大概如此:

    当你第一次执行 ad hoc 查询的时候,被编译出来的执行计划,sql server 存个一部分。
    为什么不全存呢,如果全存,adhoc 查询很频繁,那么不就给 内存带来压力了。 

    当你第二次查询的时候,就保存这个执行计划。

    当你第三次运行的时候,就可以直接从cache 内读取出来执行计划。

    EXEC sp_configure 'show advanced options',1
    RECONFIGURE
    EXEC sp_configure 'optimize for ad hoc workloads',1
    RECONFIGURE

    对sql server 运行还是又好处的,没事儿就开着吧

  • 相关阅读:
    zepto.js介绍
    box-sizing属性
    响应式网页高度自适应原理
    固定-比例-固定
    常用的js正则验证
    mysql之连接查询(多表查询)
    数据约束
    mysql表数据的增删改查
    mysql学习之数据库管理与表管理
    滑动选项卡的制作
  • 原文地址:https://www.cnblogs.com/Amaranthus/p/2355480.html
Copyright © 2011-2022 走看看