按内存划分:

1.DATABASE CACHE

用于存放数据页面的缓冲区,8KB每页

2.各项组件

A)数据库连接(CONNECTION)

B)通用数据,如果事务上下文,表和索引的元数据

C)执行计划(QUERY PLAN),语句和存储过程的执行计划

D)查询优化器(Optimizer)

E)Utilities,如BCP,Log Manager,Backup tools,parallel queries and so on

3.线程内存

Each thread use 0.5MB memory to store data structure and relative infomation

4.The third application apply memeory

like link server, sql mail, user defined CLR,Extended stored procedure,dirver ect

Divided by Apply method:

1.Reserved and committed memory, reserved first and then committed.

2.Stolen memory,commited without reserving memory.

SQL SERVER never use AWE for stolen memery

Divided by Page size:

1.Single page memory,the applied memory is equal or less then 8KB

2.Multiple page memory(MemToLeave), the applied memery is bigger than 8KB

the most part of memery in MemToLeave is not charged by SQL SERVER

SQL SERVER使用Memory Clerk来管理SQL SERVER内存的分配和回收,因此可以使用sys.dm_os_memory_clerks 来查看内存使用情况,注意sys.dm_os_memory_clerks反应的内存不包括第三方代码使用的内存。

SELECT M.type,

sum(M.virtual_memory_reserved_kb) AS VirtualMemoryReservedKB,

SUM(M.virtual_memory_committed_kb) AS VirtualMemortCommitedKB,

SUM(M.shared_memory_committed_kb) AS SharedMemroyCommittedKB,

SUM(M.shared_memory_reserved_kb) AS SharedMemroyReservedKB,

SUM(M.multi_pages_kb) AS MultiPagesKB,

SUM(M.single_pages_kb) AS SinglePagesKB,

SUM(M.multi_pages_kb)+SUM(M.single_pages_kb) AS TotalPagesKB

FROM sys.dm_os_memory_clerks M

GROUP BY M.type

ORDER BY TotalPagesKB DESC

查看表中数据在缓冲池中的信息

SELECT name AS TabelName,

index_id AS IndexId,

COUNT(*)AS CachedPageCount,

CAST(COUNT(*)*8.0/1024 AS INT) AS CachedMemoryMB

FROM sys.dm_os_buffer_descriptors AS bd

INNER JOIN

(

SELECT OBJECT_NAME(OBJECT_ID) AS name

,index_id ,allocation_unit_id

FROM sys.allocation_units AS au

INNER JOIN sys.partitions AS p

ON au.container_id = p.hobt_id

AND (au.type = 1 OR au.type = 3)

UNION ALL

SELECT OBJECT_NAME(OBJECT_ID) AS name

,index_id, allocation_unit_id

FROM sys.allocation_units AS au

INNER JOIN sys.partitions AS p

ON au.container_id = p.partition_id

AND au.type = 2

) AS obj

ON bd.allocation_unit_id = obj.allocation_unit_id

WHERE database_id = DB_ID()

GROUP BY name, index_id

ORDER BY CachedMemoryMB DESC;

Buffer Pool--内存总结2的更多相关文章

  1. 14.6.3.3 Making the Buffer Pool Scan Resistant

    14.6.3.3 Making the Buffer Pool Scan Resistant 相比使用一个严格的LRU算法,InnoDB 使用一个技术来最小化数据总量 带入到buffer pool 而 ...

  2. 谁占用了我的Buffer Pool

    原文:谁占用了我的Buffer Pool 转自:http://blogs.msdn.com/b/apgcdsd/archive/2011/01/11/buffer-pool.aspx 我在做SQL S ...

  3. MySQL · 引擎特性 · InnoDB Buffer Pool

    前言 用户对数据库的最基本要求就是能高效的读取和存储数据,但是读写数据都涉及到与低速的设备交互,为了弥补两者之间的速度差异,所有数据库都有缓存池,用来管理相应的数据页,提高数据库的效率,当然也因为引入 ...

  4. 谁占用了我的Buffer Pool?--【转】

    转自:http://blogs.msdn.com/b/apgcdsd/archive/2011/01/11/buffer-pool.aspx 我在做SQL Server 7.0技术支持的时候有客户问我 ...

  5. 查看Buffer Pool使用情况--[转]

    ----源自:微软官方博客论坛 我的SQL Server buffer pool很大,有办法知道是哪些对象吃掉我的buffer Pool内存么?比方说,能否知道是哪个数据库,哪个表,哪个index占用 ...

  6. InnoDB缓存---InnoDB Buffer Pool

    InnoDB Buffer Pool 定义 对于InnoDB存储引擎,不管用户数据还是系统数据都是以页的形式存储在表空间进行管理的,其实都是存储在磁盘上的. 当InnoDB处理客户端请求,需要读取某页 ...

  7. 【大白话系统】MySQL 学习总结 之 缓冲池(Buffer Pool) 如何支撑高并发和动态调整

    如果大家对我的 [大白话系列]MySQL 学习总结系列 感兴趣的话,可以点击关注一波. 一.上节回顾 在上节< 缓冲池(Buffer Pool) 的设计原理和管理机制>中,介绍了缓冲池整体 ...

  8. 【MySQL】InnoDB 内存管理机制 --- Buffer Pool

    InnoDB Buffer Pool 是一块连续的内存,用来存储访问过的数据页面 innodb_buffer_pool_size 参数用来定义 innodb 的 buffer pool 的大小 是 M ...

  9. SQL Server 2014新特性探秘(2)-SSD Buffer Pool Extension

    简介     SQL Server 2014中另一个非常好的功能是,可以将SSD虚拟成内存的一部分,来供SQL Server数据页缓冲区使用.通过使用SSD来扩展Buffer-Pool,可以使得大量随 ...

  10. 理解innodb buffer pool

    今天组里有个同事说可以查看innodb buffer pool每个表和索引占的大小,为此我搜了下,还真有方法,记录下. innodb buffer pool有几个目的: 缓存数据--众所周知,这个占了 ...

随机推荐

  1. ease,seae-in,ease-in-out,ease-out区别

    值 描述 linear 规定以相同速度开始至结束的过渡效果(等于 cubic-bezier(0,0,1,1)).(匀速) ease 规定慢速开始,然后变快,然后慢速结束的过渡效果(cubic-bezi ...

  2. Educational Codeforces Round 37-E.Connected Components?题解

    一.题目 二.题目链接 http://codeforces.com/contest/920/problem/E 三.题意 给定一个$N$和$M$.$N$表示有$N$个点,$M$表示,在一个$N$个点组 ...

  3. tensorflow-windows下安装,python3.6

    安装: pip install tensorflow ps:我第一次安装了,但是导入却失败了. 进入\python3\Lib\site-packages\删除了tensorflow,再次pip ins ...

  4. Django学习---信号

    Django学习之信号 如果我想对所有在数据库创建数据的时候记录一条日志. 比如我们在django中往数据库中增加一条数据,希望生成一条操作日志,或者在数据保存和数据保存之后都保存一条操作日志,那我们 ...

  5. React爬坑秘籍(一)——提升渲染性能

    React爬坑秘籍(一)--提升渲染性能 ##前言 来到腾讯实习后,有幸八月份开始了腾讯办公助手PC端的开发.因为办公助手主推的是移动端,所以导师也是大胆的让我们实习生来技术选型并开发,他来做code ...

  6. 创建django的8大步骤xxx.setAttribute('name', 'user'); 添加属性和值 xxx.attr('name') 查看属性的值 $(xxx).addClass 添加样式 $().after() 添加在标签后面

    第一步.创建django 方法一:django-admin startproject 方法二: 直接在python上创建 第二步:创建工程名cmdb python manage.py startapp ...

  7. Android 包信息工具类

    /** AndroidInfoUtils:安卓游戏包信息工具类**/ 1 public class AndroidInfoUtils { @SuppressWarnings("uncheck ...

  8. ubuntu server 安装nextcloud12

    1.更新系统安装必要的依赖包 [user]$ sudo apt-get update && sudo apt-get -y upgrade [user]$ sudo apt-get i ...

  9. SimpleReflection

    [SimpleReflection] 取法线的x.y作为reflection-map的uv. Shader "Custom/SimpleReflection" { Properti ...

  10. 127. Word Ladder (Tree, Queue; WFS)

    Given two words (beginWord and endWord), and a dictionary's word list, find the length of shortest t ...