如图SQL服务器引擎主要有四个主要组成部分:协议,关系引擎(也称为查询处理器),存储引擎,SQLOS。

从任何客户端应用程序提交SQL服务器执行的语句,都必须和这四个要素交互。

协议层接收该请求,并将之转化成关系引擎能配合工作的内容,它也会将最终的结果如有疑问,状态讯息,或错误消息,翻译成客户端可以理解的信息 传送给客户端。 

关系引擎层接受SQL batches 并决定哪些给他们做。为查询和程序设计,进行解析,编译,优化请求和监督执行,当Batch已经执行,如果需要数据,就会向数据存储引擎发送一个请求。

  

存储引擎管理所有的数据访问,transaction-based命令和大量的操作,如备份,批量插入,某些DBCC(数据库一致性检查)的命令,都需要存储引擎的管理。

SQLOS层处理的活动通常认为是承担和操作系统进行交互的责任,例如:线程管理(调度),同步原语,死锁检测,内存管理,包括缓冲池。

行为观测引擎

SQL 允许开发者和数据库管理员了解SQL内部运行状况,这些元数据对象被称为动态管理视图(DMVs)和动态管理过程(DMFs)。你可以访问他们,他们不是真正的对象。使用和跟踪并不总是直接可用来检测资源问题或状态变化。一些DMVs和DMFs能让详细跟踪资源的历史使用状况,而且有80多个这样的对象,你可以直接查询和加入SQL选择报表。DMVs and DMFs能收集服务器状态信息,他们可能跨越多个sessions,多步transactions,多个用户的要求。这些对象可以用来诊断,内存和CPU的调整,并监控服务器上的所有会话

DMVsand DMFs 不是基于真实的表存储,但是都基于服务器的内部构架,其中一些我们会在本章内讨论。对象分为几个类型进行显示。所有的系统构架名字以dm_开头,后面跟着一个代码,代表服务器的对象的详细说明,主要的类型如下:

SQL 还有动态管理对象为其功能组成,其中包括全文搜索目录、服务审核、复制、通用语言运行时(CLR)提供动态管理。

SQL服务器引擎组件概览相关推荐

  1. SQL服务器引擎---协议

    协议(Protocols) 当一个应用程序和SQL数据库引擎交互,应用编程接口(api)暴露在协议层使用Microsoft-defined格式的沟通形式称为表格数据流(TDS)包.服务器和用户端计算机 ...

  2. 简单介绍下我使用了一年多还不知道的Sql server 2005 组件知识

    简介 Microsoft SQL Server 2005 是用于大规模联机事务处理 (OLTP).数据仓库和电子商务应用的数据库平台:也是用于数据集成.分析和报表解决方案的商业智能平台. SQL Se ...

  3. sql服务器支持版本,支持的版本和版本升级 (SQL Server 2017)

    支持的版本和版本升级 (SQL Server 2017) 12/13/2019 本文内容 适用于: SQL Server(所有支持的版本) - 仅限 Windows 可以从 SQL Server 20 ...

  4. 通往SQL Server复制的阶梯:一级- SQL服务器复制介绍

    链接:http://www.sqlservercentral.com/articles/Stairway+Series/72274/ 文章:Stairway to SQL Server Replica ...

  5. Scut游戏服务器引擎6.1.5.6发布,直接可运行,支持热更新

    1. 增加exe版(console),web版本(IIS)的游戏服宿主程序 2. 增加Model支持脚本化,实现不停服更新 3. 增加Language支持脚本化 4. 修改Sns与Pay Center ...

  6. spark 动态预加载数据_热门大数据引擎/组件概要

    热门大数据引擎/组件概要 TeraData 老牌数仓公司,已经上市十几年,数仓领导者地位(from Gartner),目前在向云端发力.主要提供一体机,MPP架构,运行稳定,之前工行用的是TD的系统, ...

  7. 2020-12-03《Presto分布式SQL查询引擎——kkb笔记复习》

    Presto分布式SQL查询引擎 一.课前准备 jdk版本要求:Java 8 Update 151 or higher (8u151+), 64-bit 安装好hadoop集群 安装好hive 二.课 ...

  8. 数据仓库(六)---分布式SQL查询引擎---presto介绍

    我们在之前的文章中已经学习了数据仓库hive,如果要对数据仓库进行交互查询,则需要交互查询的引擎用于提高查询效率.本章介绍presto. 简介 Presto是一个开源的分布式SQL查询引擎,适用于实时 ...

  9. 使用sql server+jmail组件发送邮件

    使用sql server+jmail组件发送邮件 预备知识     1.OLE自动化函数     OLE自动化使应用程序能够对另一个应用程序中实现的对象进行操作,或者将对象公开以便可以对其进行操作.自 ...

最新文章

  1. 软件工程网络15结对编程作业
  2. byte[]数组下标的最大值
  3. 面试官:Redis的事务满足原子性吗?
  4. Struts中Action三种接收参数的方式?
  5. 【双指针】Square Pasture G(P7153)
  6. 从gb2py.idx中获取一个汉字的拼音首字母
  7. mysq;多表查询 总结
  8. xmind 切换图形结构 和 常用模板
  9. 共享文件 麒麟系统_分享中标麒麟系统的安装教程
  10. Java实习面试一般问什么?选大公司还是小公司?
  11. 2022-2027年中国通信光缆市场规模现状及投资规划建议报告
  12. 【观察】智能+新时代,智慧酒店未来该何去何从?
  13. 什么时候,董明珠能成功卖给记者一部格力手机?
  14. js-xlsx vue导入excel在线预览
  15. 微习惯--简单到四个
  16. 【动态规划】多重背包问题
  17. Redmibook pro 15 锐龙版 2021评测2022款各家本子推荐
  18. 浅谈售后服务的备件管理
  19. (二)购物商城数据库设计-商品表设计
  20. 数码管显示原理:共阴极和共阳极的区别,静态显示程序。

热门文章

  1. WPF TreeView 绑定(demo 转)
  2. JavaC#语法差别
  3. MySQL基础 - 注意事项
  4. 为什么中国人穷得只剩房子
  5. 两道挺有意思的思考题
  6. springboot+aop+自定义注解,打造通用的全局异常处理和参数校验切面(通用版)...
  7. SpringBoot集成Spring Security(3)——异常处理
  8. pandas中DataFrame对象to_csv()方法中的encoding参数
  9. idea更新maven依赖包
  10. 判断是否是微信浏览器JavaScript代码