当前位置: 首页 > news >正文

网站运营工作计划/seo官网优化详细方法

网站运营工作计划,seo官网优化详细方法,手机免费h5制作软件,推广平台有哪些洛克第四、第八章笔记第4章 外部数据包装器FDW是如何执行的总结第八章 缓冲区管理器8.1 概述8.1.1 缓冲区管理器的结构8.1.2 缓冲区标签(buffer_tag)8.1.3 后端进程如何读取数据页8.1.4 页面置换算法8.1.5 刷写脏页8.2 缓冲区管理器的结构第4章 外部数据包装…

第四、第八章笔记

  • 第4章 外部数据包装器
    • FDW是如何执行的
    • 总结
  • 第八章 缓冲区管理器
    • 8.1 概述
      • 8.1.1 缓冲区管理器的结构
      • 8.1.2 缓冲区标签(buffer_tag)
      • 8.1.3 后端进程如何读取数据页
      • 8.1.4 页面置换算法
      • 8.1.5 刷写脏页
    • 8.2 缓冲区管理器的结构

第4章 外部数据包装器

2003年,SQL标准中添加了一个访问远程数据的规范,称为SQL外部数据管理(SQL/MED)。PostgreSQL在9.1版本开发出了FDW,实现了一部分SQL/MED中的特性。

在SQL/MED中,远程服务器上的表被称为外部表(Foreign Table)。 PostgreSQL的外部数据包装器(FDW) 使用与本地表类似的方式,通过SQL/MED来管理外部表。

在这里插入图片描述

安装完必要的扩展并配置妥当后,就可以访问远程服务器上的外部表了。 例如假设有两个远程服务器分别名为postgresql和mysql,它们上面分别有两张表:foreign_pg_tbl和foreign_my_tbl。 在本例中,可以在本地服务器上执行SELECT查询以访问外部表,如下所示。

localdb=# -- foreign_pg_tbl 在远程postgresql服务器上
localdb-# SELECT count(*) FROM foreign_pg_tbl;count 
-------20000localdb=# -- foreign_my_tbl 在远程mysql服务器上
localdb-# SELECT count(*) FROM foreign_my_tbl;count 
-------10000

FDW是如何执行的

在这里插入图片描述

1、分析器为输入的SQL创建一颗查询树。
2、计划器(或执行器)连接到远程服务器。
3、如果启用了use_remote_estimate选项(默认关闭),则计划器将执行EXPLAIN命令以估计每条计划路径的代价。
4、计划器按照计划树创建出纯文本SQL语句,在内部称该过程为逆解析(deparesing)。
5、执行器将纯文本SQL语句发送到远程服务器并接收结果。

总结

访问远程服务器的数据表的Sql语句与访问本地服务器数据表的Sql语句并无区别,主要区别体现在查询编译的过程中,会生成新的SQL语句传给远程服务器执行后得到数据,最后返回本地服务器进行运算。

第八章 缓冲区管理器

缓冲区管理器(Buffer Manager)管理着共享内存和持久存储之间的数据传输,对于DBMS的性能有着重要的影响。PostgreSQL的缓冲区管理器十分高效。

8.1 概述

本章介绍了PostgreSQL的缓冲区管理器。第一节概览了缓冲区管理器,后续的章节分别介绍以下内容:

  • 缓冲区管理器的结构
  • 缓冲区管理器的锁
  • 缓冲区管理器是如何工作的
  • 环形缓冲区
  • 脏页刷写

在这里插入图片描述

8.1.1 缓冲区管理器的结构

​ PostgreSQL缓冲区管理器由缓冲表,缓冲区描述符和缓冲池组成,这几个组件将在接下来的小节中介绍。 缓冲池(buffer pool)层存储着数据文件页面,诸如表页与索引页,及其相应的自由空间映射和可见性映射的页面。 缓冲池是一个数组,数据的每个槽中存储数据文件的一页。 缓冲池数组的序号索引称为buffer_id

8.1.2 缓冲区标签(buffer_tag)

PostgreSQL中的每个数据文件页面都可以分配到唯一的标签,即缓冲区标签(buffer tag)。 当缓冲区管理器收到请求时,PostgreSQL会用到目标页面的缓冲区标签。

8.1.3 后端进程如何读取数据页

在这里插入图片描述

1、当读取表或索引页时,后端进程向缓冲区管理器发送请求,请求中带有目标页面的buffer_tag。
缓冲区管理器会根据buffer_tag返回一个buffer_id,即目标页面存储在数组中的槽位的序号。如果请求的页面2、没有存储在缓冲池中,那么缓冲区管理器会将页面从持久存储中加载到其中一个缓冲池槽位中,然后再返回该槽位的buffer_id。
3、后端进程访问buffer_id对应的槽位(以读取所需的页面)。
当后端进程修改缓冲池中的页面时(例如向页面插入元组),这种尚未刷新到持久存储,但已被修改的页面被称为脏页(dirty page)。

8.1.4 页面置换算法

​ 当所有缓冲池槽位都被占用,且其中未包含所请求的页面时,缓冲区管理器必须在缓冲池中选择一个页面逐出,用于放置被请求的页面。 在计算机科学领域中,选择页面的算法通常被称为页面置换算法(page replacement algorithms),而所选择的页面被称为受害者页面(victim page)。

8.1.5 刷写脏页

​ 脏页最终应该被刷入存储,但缓冲区管理器执行这个任务需要额外帮助。 在PostgreSQL中,两个后台进程:检查点进程(checkpointer)和后台写入器(background writer)负责此任务。

8.2 缓冲区管理器的结构

在这里插入图片描述

http://www.jmfq.cn/news/4736989.html

相关文章:

  • 企业网站建设美丽/北京seo优化
  • 自定义网站建设/快速排名优化seo
  • 深圳市专业做网站/精准客户信息一条多少钱
  • 网易做相册的网站/网络平台推广运营公司
  • 用什么编程语言做网站好/seo交流论坛seo顾问
  • 南京做网站建设/今日国际新闻最新消息事件
  • 郑州男科医院排名最好的医院/绍兴百度seo排名
  • 新余专业做淘宝网站/东莞网站关键词优化公司
  • 纯静态网站 维护/全国疫情最新情况公布
  • 公司用dw做网站吗/百度网盘怎么用
  • 网站建设开发定制/推广公司app主要做什么
  • 宁波外贸网站设计公司/网站模板平台
  • 域名做非法网站/营销推广网站推广方案
  • 方案库网站/免费行情软件app网站下载大全
  • 织梦网站后台如何做百度优化/今日最新消息
  • 100个免费推广网站的排名/买淘宝店铺多少钱一个
  • 廊坊网站制作建设/旅游产品推广有哪些渠道
  • wordpress弹窗登入/绍兴seo推广
  • 网站备案情况查询/网上推广企业
  • 惠州的企业网站建设/seo优化网
  • 一个公司的网站怎么做的/营销网站建设流程
  • 网站title如何修改/提交百度一下
  • 可做产品预售的网站/seo基础教程
  • linux 转换wordpress/安卓优化清理大师
  • 公司网站banner怎么做/苏州企业网站关键词优化
  • 丰台周边网站建设/丹东seo推广优化报价
  • 导航网站超链接如何做/搜索引擎调价工具哪个好
  • 东莞建站模板/百度信息流广告投放
  • 大石桥网站/关键词优化举例
  • 网站怎么做mip技术/昆明seo关键词排名