SQLSERVER底层基础理论
文章平均质量分 89
Foliole
知行合一。
展开
-
事务日志体系结构
事务日志逻辑体系结构 SQLservers事务日志按逻辑运行,就好像事务日志是一串日志记录一样。每条日志记录由一个日志序列号(LSN)标识。每条新日志记录均写入日志的逻辑结尾处,并使用一个比前面记录的LSN更高的LSN。 日志记录按创建时的串行序列存储。每条日志记录都包含其所属事务的ID。对于每个事务,与事务相关联的所有日志记录通过使用可提高事务回滚速度的向后指针挨个链接在一个链中。...翻译 2018-03-08 11:03:56 · 344 阅读 · 0 评论 -
文件和文件组体系结构
SQLServer将数据库映射为一组操作系统文件。数据和日志信息绝不会混合在同一个文件中,而且一个文件只能由一个数据库使用。 文件组是命名的文件集合,用于帮助数据布局和管理任务,例如备份和还原操作。 SQLServer数据库具有三种类型文件: 1.主数据文件(mdf,后缀名可变,主数据文件是数据库的起点,指向数据库中的其他文件。每个数据库都有一个主数据文件。); 2....翻译 2018-03-08 11:04:46 · 1339 阅读 · 0 评论 -
聚集索引与非聚集索引结构
索引是按B树结构进行组织的。索引B树中的每一页称为一个索引节点。B树的顶端节点称为根节点。索引中的底层节点称为叶节点。根节点与叶节点之间的任何索引级别称为中间级。在聚集索引中,叶节点包含基础表的基础页。根节点和中间级节点包含存有索引行的索引页。每个索引行包含一个键值和一个指针,该指针指向B树上的某一中间级页或者叶级索引中的某个数据行。每个索引中的页均被链接再双向链接列表中。 聚集索引...翻译 2018-03-08 11:05:41 · 851 阅读 · 0 评论 -
前言
意思一下说一下前言。眨眼,搞sqlserver也有七个年头了。见过各种疑难杂症,各种性能调优。随着经验的积累,日常碰到的性能瓶颈,数据开发基本上都是重复性的,很多时候一看到问题,心里就有一个定案。久而久之,如果一段时间没有处理某一方面的,很容易把数据库底层的一些概念给遗忘。很多东西你不常常用,忽然去想的话,就知道是那回事,那个具体的概念往往很难全面地讲出来,所以,这里记录一些数据库的底层机...原创 2018-03-08 11:30:40 · 155 阅读 · 0 评论 -
SQLSERVER 体系结构-页与区
页是SQL Server 中数据存储的基本单位,为数据库中的数据文件(mdf、ndf)分配的磁盘空间可以逻辑上划分为页(0-n连续编号),日志文件不包含页,而是包含一系列日志记录。磁盘I/O操作在页级执行。也就是说SQLServer读取或写入所有的数据页;页的大小为8KB区是由8个物理上连续的页构成的集合,区有助于有效管理页。在数据页上,数据行紧接着标头按顺序放置。页的末尾是行偏移表,对于页中的每...翻译 2018-03-05 09:07:13 · 2470 阅读 · 0 评论 -
SQLServer-并发控制-锁机制
并发可能导致的影响:1. 丢失更新:多个事务同时更新同一行;2. 脏读:修改过程中的数据被读取;3. 不一致的分析(不可重复读):读取的事务里面,符合读取条件的行搜索条件被更改了;4. 幻读:读取的事务里面,符合读取条件的行被删除或者插入了;3和4 的区别在于前者是更新 ,后者是插入删除。 并发控制类型:1. 悲观并发控制:用到锁来保护数据。用于锁消耗低于回滚事务的成本环境中;2. 乐观并发控制:...原创 2018-05-18 09:14:06 · 10080 阅读 · 3 评论