当前位置:首页 > 数据库 >
《PostgreSQL数据库内核分析》电子书封面

PostgreSQL数据库内核分析

  • 发布时间:2020年06月11日 14:47:28
  • 作者:彭智勇
  • 大小:43.5 MB
  • 类别:PostgreSQL电子书
  • 格式:PDF
  • 版本:高清版
  • 评分:8.4

    PostgreSQL数据库内核分析 PDF 高清版

      给大家带来的一篇关于PostgreSQL相关的电子书资源,介绍了关于PostgreSQL、数据库、内核分析方面的内容,本书是由机械工业出版社出版,格式为PDF,资源大小43.5 MB,彭智勇编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:7.4。

      内容介绍

      PostgreSQL是现阶段广泛运用的开源数据库智能管理系统。这书从PostgreSQL数据库的源码下手,详细分析了该数据库智能管理系统的最底层完成关键点,表明了数据库运作的基本概念。这书的具体内容包含:PostgreSQL数据库的系统架构、存储管理、数据库索引体制、查寻编译程序、查寻实行、高并发操纵体制及其安全性等。每一个主题都引入了很多的算法设计、数据图表等开展表明,使读者对完成全过程和原理一目了然。

      PostgreSQL数据库内核分析》合适从业数据库行业有关科学研究的专业技术人员、高等学校有关技术专业高学段本科毕业或硕士研究生阅读文章,有利于读者开展数据库的高級开发设计、根据PostgreSQL定制满足需求的数据库系统软件,或是在数据库核心中完成并认证数据库新技术应用。

      目录

      • 前 言
      • 第1章 PostgreSQL系统概述/1
      • 1.1 PostgreSQL简介及发展历程/1
      • 1.2 PostgreSQL的特性/2
      • 1.3 PostgreSQL的应用/3
      • 1.4 PostgreSQL代码结构/3
      • 1.5 安装PostgreSQL/4
      • 1.6 PostgreSQL数据库命令/5
      • 第2章 PostgreSQL的体系结构/7
      • 2.1 系统表/8
      • 2.1.1 主要系统表功能及依赖关系/8
      • 2.1.2 系统视图/14
      • 2.2 数据集簇/15
      • 2.2.1 initdb的使用/17
      • 2.2.2 postgres.bki/17
      • 2.2.3 initdb的执行过程/19
      • 2.2.4 系统数据库/20
      • 2.3 PostgreSQL进程结构/21
      • 2.4 守护进程Postmaster/22
      • 2.4.1 初始化内存上下文/23
      • 2.4.2 配置参数/23
      • 2.4.3 创建监听套接字/28
      • 2.4.4 注册信号处理函数/29
      • 2.4.5 辅助进程启动/31
      • 2.4.6 装载客户端认证文件/32
      • 2.4.7 循环等待客户连接请求/33
      • 2.5 辅助进程/34
      • 2.5.1 SysLogger系统日志进程/34
      • 2.5.2 BgWriter后台写进程/36
      • 2.5.3 WalWriter预写式日志写进程/38
      • 2.5.4 PgArch预写式日志归档进程/40
      • 2.5.5 AutoVacuum系统自动清理进程/41
      • 2.5.6 PgStat统计数据收集进程/44
      • 2.6 服务进程Postgres/47
      • 2.6.1 初始化内存环境/48
      • 2.6.2 配置运行参数和处理客户端传递的GUC参数/48
      • 2.6.3 设置信号处理和信号屏蔽/48
      • 2.6.4 初始化Postgres的运行环境/49
      • 2.6.5 创建内存上下文并设置查询取消跳跃点/50
      • 2.6.6 循环等待处理查询/50
      • 2.6.7 简单查询的执行流程/52
      • 2.7 小结/53
      • 第3章 存储管理/54
      • 3.1 存储管理器的体系结构/54
      • 3.2 外存管理/57
      • 3.2.1 表和元组的组织方式/58
      • 3.2.2 磁盘管理器/60
      • 3.2.3 VFD机制/61
      • 3.2.4 空闲空间映射表/64
      • 3.2.5 可见性映射表/69
      • 3.2.6 大数据存储/69
      • 3.3 内存管理/76
      • 3.3.1 内存上下文概述/77
      • 3.3.2 高速缓存/84
      • 3.3.3 缓冲池管理/94
      • 3.3.4 IPC/102
      • 3.4 表操作与元组操作/106
      • 3.4.1 表操作/106
      • 3.4.2 元组操作/112
      • 3.5 VACUUM机制/115
      • 3.5.1 VACUUM操作/115
      • 3.5.2 Lazy VACUUM/116
      • 3.5.3 Full VACUUM/118
      • 3.6 ResourceOwner资源跟踪/120
      • 3.7 小结/122
      • 第4章 索引/123
      • 4.1 概述/123
      • 4.1.1 索引方式/124
      • 4.1.2 索引类型/125
      • 4.1.3 索引相关系统表/125
      • 4.1.4 索引的操作函数/129
      • 4.2 B-Tree索引/131
      • 4.2.1 B-Tree索引的组织结构/132
      • 4.2.2 B-Tree索引的操作/135
      • 4.3 Hash索引/146
      • 4.3.1 Hash索引的组织结构/147
      • 4.3.2 Hash索引的实现/153
      • 4.4 GiST索引/161
      • 4.4.1 GiST的扩展性/161
      • 4.4.2 GiST索引的组织结构/162
      • 4.4.3 GiST索引的实现/163
      • 4.4.4 GiST索引实例/166
      • 4.5 GIN索引/168
      • 4.5.1 GIN索引的扩展性/168
      • 4.5.2 GIN索引的组织结构/170
      • 4.5.3 GIN索引的操作/172
      • 4.6 TSearch2全文搜索/179
      • 4.6.1 全文索引的创建/180
      • 4.6.2 全文索引的查询/184
      • 4.6.3 查询结果处理/185
      • 4.7 小结/186
      • 第5章 查询编译/187
      • 5.1 概述/187
      • 5.2 查询分析/188
      • 5.2.1 Lex和Yacc简介/189
      • 5.2.2 词法和语法分析/193
      • 5.2.3 语义分析/208
      • 5.3 查询重写/218
      • 5.3.1 规则系统/219
      • 5.3.2 查询重写的处理操作/224
      • 5.4 查询规划/228
      • 5.4.1 总体处理流程/229
      • 5.4.2 预处理/237
      • 5.4.3 生成路径/240
      • 5.4.4 生成可优化的MIN/MAX聚集计划/253
      • 5.4.5 生成普通计划/254
      • 5.4.6 生成完整计划/257
      • 5.4.7 整理计划树/259
      • 5.4.8 实例分析/260
      • 5.5 代价估计/266
      • 5.5.1 代价估算公式/267
      • 5.5.2 选择度/268
      • 5.5.3 单个表的扫描代价/268
      • 5.5.4 两个表的连接代价/268
      • 5.6 PostgreSQL中的遗传算法/268
      • 5.6.1 个体编码方式及种群初始化/269
      • 5.6.2 适应值/270
      • 5.6.3 父体选择策略/270
      • 5.6.4 杂交算子/270
      • 5.6.5 变异算子/275
      • 5.6.6 终止条件/275
      • 5.6.7 基于排列生成路径/276
      • 5.6.8 实例分析/276
      • 5.7 小结/280
      • 第6章 查询执行/282
      • 6.1 查询执行策略/283
      • 6.1.1 可优化语句和数据定义语句/284
      • 6.1.2 四种执行策略/284
      • 6.1.3 策略选择的实现/286
      • 6.1.4 Portal执行的过程/288
      • 6.2 数据定义语句执行/289
      • 6.2.1 数据定义语句执行流程/289
      • 6.2.2 执行实例/290
      • 6.2.3 主要的功能处理器函数/293
      • 6.3 可优化语句执行/293
      • 6.3.1 物理代数与处理模型/294
      • 6.3.2 物理操作符的数据结构/295
      • 6.3.3 执行器的运行/297
      • 6.3.4 执行实例/301
      • 6.4 计划节点/303
      • 6.4.1 控制节点/304
      • 6.4.2 扫描节点/310
      • 6.4.3 物化节点/319
      • 6.4.4 连接节点/328
      • 6.5 其他子功能介绍/334
      • 6.5.1 元组操作/334
      • 6.5.2 表达式计算/337
      • 6.5.3 投影操作/340
      • 6.6 小结/342
      • 第7章 事务处理与并发控制/343
      • 7.1 事务系统简介/343
      • 7.2 事务系统的上层/344
      • 7.2.1 事务块状态/345
      • 7.2.2 事务块操作/346
      • 7.3 事务系统的底层/348
      • 7.3.1 事务状态/348
      • 7.3.2 事务操作函数/350
      • 7.3.3 简单查询事务执行过程实例/352
      • 7.4 事务保存点和子事务/353
      • 7.4.1 保存点实现原理/353
      • 7.4.2 子事务/353
      • 7.5 两阶段提交/354
      • 7.5.1 预提交阶段/354
      • 7.5.2 全局提交阶段/355
      • 7.6 PostgreSQL的并发控制/355
      • 7.7 PostgreSQL中的三种锁/357
      • 7.7.1 SpinLock/357
      • 7.7.2 LWLock/358
      • 7.7.3 RegularLock/360
      • 7.8 锁管理机制/368
      • 7.8.1 表粒度的锁操作/368
      • 7.8.2 页粒度的锁操作/369
      • 7.8.3 元组粒度的锁操作/369
      • 7.8.4 事务粒度的锁操作/369
      • 7.8.5 一般对象的锁操作/369
      • 7.9 死锁处理机制/370
      • 7.9.1 死锁处理相关数据结构/371
      • 7.9.2 死锁处理相关操作/372
      • 7.10 多版本并发控制/373
      • 7.10.1 MVCC相关数据结构/373
      • 7.10.2 MVCC相关操作/375
      • 7.10.3 MVCC与快照/379
      • 7.11 日志管理/380
      • 7.11.1 SLRU缓冲池/381
      • 7.11.2 CLOG日志管理器/386
      • 7.11.3 SUBTRANS日志管理器/390
      • 7.11.4 MULTIXACT日志管理器/392
      • 7.11.5 XLOG日志管理器/394
      • 7.11.6 日志管理器总结/402
      • 7.12 小结/403
      • 第8章 数据库安全/404
      • 8.1 PostgreSQL安全简介/404
      • 8.2 用户标识和认证/405
      • 8.2.1 客户端配置文件/406
      • 8.2.2 认证方法/408
      • 8.2.3 客户端认证/410
      • 8.3 基于角色的权限管理/413
      • 8.3.1 用户和角色/413
      • 8.3.2 角色相关的系统表/415
      • 8.3.3 角色管理/416
      • 8.4 对象访问控制/426
      • 8.4.1 访问控制列表/426
      • 8.4.2 对象权限管理/428
      • 8.4.3 对象权限检查/432
      • 8.5 小结/433
      • 附录A 用Eclipse开发和调试PostgreSQL/434

      学习笔记

      MySQL数据库InnoDB引擎主从复制同步经验总结

      近期将公司的MySQL架构升级了,由原先的一主多从换成了DRBD+Heartbeat双主多从,正好手上有一个电子商务网站新项目也要上线了,用的是DRBD+Heartbeat双主一从,由于此过程还是有别于以前的MyISAM引擎的,所以这里也将其心得归纳总结了一下: 1)MySQL的replication过程是一个异步同步的过程,并非完全的主从同步,所以同步的过程中是有延迟的,如果做了读写分离的业务的话,建议也要监控此延迟时间; 2)MySQL的master与slave机器记得server-id要保持不一致,如果一样的话,replication过程中会出现如下报错: 复制代码 代码如下: Fatal error: The slave I/O threadstopsbecause master and slavehave equal MySQL server ids; these ids mustbediffe……

      将图片储存在MySQL数据库中的几种方法

      通常对用户上传的图片需要保存到数据库中。 解决方法一般有两种: 1、将图片保存的路径存储到数据库; 2、将图片以二进制数据流的形式直接写入数据库字段中。 以下为具体方法: 一、保存图片的上传路径到数据库: string uppath="";//用于保存图片上传路径 //获取上传图片的文件名 string fileFullname = this.FileUpload1.FileName; //获取图片上传的时间,以时间作为图片的名字可以防止图片重名 string dataName = DateTime.Now.ToString("yyyyMMddhhmmss"); //获取图片的文件名(不含扩展名) string fileName = fileFullname.Substring(fileFullname.LastIndexOf("\\") + 1); //获取图片扩展名 string type = fileFullname.Substring(fileFullname.LastIndexOf(".") + 1); //判断……

      如何用workbench导出mysql数据库关系图

      1. 打开mysql workbench,选择首页中间"Data Modeling"下方的第二栏"Create EER Model From Existing Database"; 2. 在"Stored Connection"里选择"Manage Stored Connections..."; 3. 在Manage DB Connections里选择“New”新建连接,并在左侧输入框里填好想连接的数据库信息; 4. 测试数据库连接,连接成功后返回到2的界面,在"Stored Connection"里选择刚才新建好的连接; 5. 依次单击2次"next",在"select schemata to reverse engineer"选择要到处的数据库名称,继续单击"next"; 6. 导出的数据库关系图里所有表格是重合在一起的,需要手动将表格拖动到相应的位置. ……

      mysql 单机数据库优化的一些实践

      数据库优化有很多可以讲,按照支撑的数据量来分可以分为两个阶段:单机数据库和分库分表,前者一般可以支撑500W或者10G以内的数据,超过这个值则需要考虑分库分表。另外,一般大企业面试往往会从单机数据库问起,一步一步问到分库分表,中间会穿插很多数据库优化的问题。本文试图描述单机数据库优化的一些实践,数据库基于mysql,如有不合理的地方,欢迎指正。 1、表结构优化 在开始做一个应用的时候,数据库的表结构设计往往会影响应用后期的性能,特别是用户量上来了以后的性能。因此,表结构优化是一个很重要的步骤。 1.1、字符集 一般来说尽量选择UTF-8,虽然在存中午的时候GBK比U……

      使用Yii2实现主从数据库设置

      前言 MySQL主从同步是目前使用比较广泛的数据库架构,技术比较成熟,配置也不复杂,特别是对于负载比较大的网站,主从同步能够有效缓解数据库读写的压力。以前在使用yii1的时候,主从数据库的支持没有那么方便,只能写上多个DB的components,然后在AR的getDB中返回相应的db。这样也可以用来对付主从数据库 实现方法 Yii2则已经解决这个问题,直接在代码中进行处理即可: PHP代码 'db' =[ 'class' = 'yii\db\Connection', // 配置主服务器 'dsn' = 'dsn for master server', 'username' = 'master', 'password' = '', 'charset' = 'utf8', 'tablePrefix' = 'php_',//默认为空 // 配置从服务器 'slaveConfig' = [ 'username' = 'slave', 'password' = '', 'charset' = 'utf8', 't……

      以上就是本次介绍的PostgreSQL电子书的全部相关内容,希望我们整理的资源能够帮助到大家,感谢大家对码农之家的支持。

      上一篇:大数据:技术与应用实践指南

      下一篇:ODPS权威指南:阿里大数据平台应用开发实践

      展开 +

      收起 -

      • 《PostgreSQL数据库内核分析》PDF下载

      下载地址:百度网盘下载
      PostgreSQL相关电子书
      黑马程序员面试题汇总(java/数据库/前端)
      黑马程序员面试题汇总(java/数据库/前端) 高质量版

      此套教程整理了网上总结的面试题,有java面试题,jq面试题,jsp、servlet、ajax面试题,mysql面试题,oracle面试题,redis教案,也有最近时间总结的公司面试题,涉及的层面虽然不是很多,但是应对面试 应该还是可以的。 文件夹大概有20兆的大小,所以面试题数量也是不少的,里面也包含了一些总结和见解,比如说在集合方面的知识点有实现的各自特点,他们之间的区别,以及等等原理和实现的细节,还包含了java和前端的面试宝典,一个宝典大概有500页左

      立即下载
      SQL优化最佳实践:构建高效率Oracle数据库的方法与技巧
      SQL优化最佳实践:构建高效率Oracle数据库的方法与技巧 高清版

      SQL是重要的关系数据库操作语言。SQL语句的运行效率,对于数据库的整体性能至关重要。因此,SQL语句的优化就成为数据库专业人员必须掌握的一门技能。作为一个长期从事数据库工作的技术

      立即下载
      数据库项目开发实践
      数据库项目开发实践 高清版

      数据库项目开发技能是当前软件行业必备的技能之一。《数据库项目开发实践/高等学校软件工程专业校企深度合作系列实践教材》根据数据库设计的一般规范,介绍了真实案例的设计过程与所

      立即下载
      Oracle数据库技术与应用
      Oracle数据库技术与应用 3.27高清原版 立即下载
      分布式数据库系统原理
      分布式数据库系统原理 第3版

      厄兹叙、Patrick Valduriez编著的 《分布式数据库系统原理(第3版)》 主要介绍分布式数据库管理系统的基本概念、基本理论和设计问题,涵盖了分布式数据库系统的设计、实现和管理等方面的诸多

      立即下载
      NoSQL数据库入门与实践
      NoSQL数据库入门与实践 原书超清版

      本书讲解了大数据处理核心技术,结合MongoDB、Redis和测试工具等全面介绍NoSQL数据库技术、NoSQL精粹,是一本NoSQL数据库入门图书,语言通俗易懂,欢迎下载

      立即下载
      Access2010数据库应用技术
      Access2010数据库应用技术

      《Access 2010数据库应用技术案例教程》第1章为数据库系统概述,综述了数据库系统的概念与结构、数据模型、关系数据库、数据库设计的方法和步骤等数据库领域的基础核心内容,第2章至第10章依次介绍了Access的发展历程、集成环境、安全性和6种标准数据库对象的基础应用与综合应用,第11章介绍了软件工程基础和几个小型数据库应用系统。

      立即下载
      Oracle编程艺术:深入理解数据库体系结构
      Oracle编程艺术:深入理解数据库体系结构 扫描第3版

      Oracle编程艺术:深入理解数据库体系结构(第3版) 是一本关于Oracle数据库体系结构的权威图书,涵盖了所有重要的Oracle体系结构特性,包括文件、内存结构和进程、锁和闩、事务、并发和多版本

      立即下载
      读者留言
      码农之家

      码农之家 提供上传

      资源
      44
      粉丝
      41
      喜欢
      178
      评论
      4

      Copyright 2018-2020 www.xz577.com 码农之家

      投诉 / 推广 / 赞助:QQ:520161757