注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡(luò)數(shù)據(jù)庫SQL SeverPostgreSQL 9.0性能調(diào)校

PostgreSQL 9.0性能調(diào)校

PostgreSQL 9.0性能調(diào)校

定 價:¥69.00

作 者: (美)Gregory Smith 著,吳驊,周娟,王學昌 譯
出版社: 人民郵電出版社
叢編項:
標 簽: 計算機與互聯(lián)網(wǎng) 數(shù)據(jù)庫

ISBN: 9787115307705 出版時間: 2013-04-01 包裝: 平裝
開本: 16開 頁數(shù): 386 字數(shù):  

內(nèi)容簡介

  PostgreSQL是一款功能強大而復(fù)雜的自由軟件數(shù)據(jù)庫系統(tǒng),已經(jīng)逐漸發(fā)展為一個為應(yīng)用數(shù)據(jù)提供存儲服務(wù)的日益成熟的數(shù)據(jù)庫平臺,并且獲得越來越多的關(guān)注?!禤ostgreSQL9.0性能調(diào)?!肥轻槍ostgreSQL9.0的性能調(diào)校指南,能夠幫助讀者加速PostgreSQL系統(tǒng),并且避免一些可能導(dǎo)致系統(tǒng)緩慢的常見缺陷。全書共分為16章,分別介紹了PostgreSQL的各個版本、數(shù)據(jù)庫硬件環(huán)境和基準評測、磁盤設(shè)置、數(shù)據(jù)庫高速緩存、服務(wù)器配置、日常維護、數(shù)據(jù)庫索引、查詢優(yōu)化、數(shù)據(jù)庫活動和統(tǒng)計信息、監(jiān)控與趨勢預(yù)測、池化與高速緩存、擴展復(fù)制、數(shù)據(jù)分區(qū)等性能調(diào)校的方方面面,最后總結(jié)概括了應(yīng)該避免的一些常見問題。《PostgreSQL9.0性能調(diào)?!肥呛w了PostgreSQL 9.0性能調(diào)校和提升的各個話題,內(nèi)容詳盡,示例豐富,實用性強?!禤ostgreSQL9.0性能調(diào)?!愤m合PostgreSQL的高級數(shù)據(jù)庫管理員、需要安裝和使用PostgreSQL的技術(shù)人員以及對高級數(shù)據(jù)庫內(nèi)部構(gòu)建和運作感興趣的開發(fā)人員閱讀。

作者簡介

  GregorySmith是國際數(shù)據(jù)庫專業(yè)服務(wù)公司2ndQuadrant的首席顧問,并且是公司在美國的第一個辦事處的創(chuàng)始人。編著PostgreSQL是他進軍數(shù)據(jù)庫性能調(diào)整教學領(lǐng)域的第二個擴展。在1995年,Greg(格里格)寫了一本較小的免費電子書《ProgressPerformance FAQ》,主要內(nèi)容是如何使Progress4GL和相關(guān)數(shù)據(jù)庫能夠運行更快。2001年,他專注于PostgreSQL7.0,一直關(guān)注復(fù)雜性問題,該數(shù)據(jù)庫的發(fā)行版都能夠解決這些問題。從PostgreSQL8.3開始,他對每個PostgreSQL版本都做出了貢獻,添加附加的功能。他還為數(shù)據(jù)庫編寫了一些額外的工具集,目前包括有pgtune、pgbench-tools、peg和2warm等。

圖書目錄

第1章 PostgreSQL版本
1.1 PostgreSQL歷史版本的性能
1.1.1 選擇部署的版本
1.1.2 升級到更新的主要版本
1.2 使用PostgreSQL還是其他數(shù)據(jù)庫
1.3 PostgreSQL工具
1.3.1 PostgreSQL contrib
1.3.2 pgFoundry
1.3.3 其他一些與PostgreSQL相關(guān)的軟件
1.4 PostgreSQL應(yīng)用程序擴展生命周期
1.5 作為實踐的性能優(yōu)化
1.6 小結(jié) 第2章 數(shù)據(jù)庫硬件
2.1 平衡硬件支出
2.1.1 CPU
2.1.2 內(nèi)存
2.1.3 磁盤
2.1.4 磁盤控制器
2.2 可靠的控制器及磁盤安裝
2.2.1 回寫緩存
2.2.2 直寫式緩存的性能影響
2.3 小結(jié) 第3章 數(shù)據(jù)庫硬件基準評測
3.1 CPU和內(nèi)存基準評測
3.1.1 memtest86+
3.1.2 STREAM內(nèi)存測試
3.1.3 CPU基準評測
3.1.4 內(nèi)存以及處理器速度慢的緣由
3.2 物理磁盤的性能
3.2.1 每秒隨機存取以及I/O數(shù)量
3.2.2 順序存取和區(qū)域恒定角速度(ZCAV)
3.2.3 提交速率
3.3 磁盤基準評測工具
3.3.1 hdtune
3.3.2 dd
3.3.3 bonnie++
3.3.4 sysbench
3.3.5 復(fù)雜的磁盤基準評測
3.4 樣品磁盤的測試結(jié)果
3.5 小結(jié) 第4章 磁盤設(shè)置
4.1 文件系統(tǒng)規(guī)模的最大值
4.2 文件系統(tǒng)的崩潰恢復(fù)
4.3 Linux文件系統(tǒng)
4.3.1 ext2
4.3.2 ext3
4.3.3 ext4
4.3.4 XFS
4.3.5 其他的Linux文件系統(tǒng)
4.3.6 寫屏障
4.3.7 常規(guī)Linux文件系統(tǒng)調(diào)整
4.4 Solaris和FreeBSD文件系統(tǒng)
4.4.1 Solaris UFS
4.4.2 FreeBSD UFS2
4.4.3 ZFS
4.5 Windows文件系統(tǒng)
4.5.1 FAT32
4.5.2 NTFS
4.6 PostgreSQL的磁盤布局
4.6.1 符號鏈接
4.6.2 表空間
4.6.3 數(shù)據(jù)庫目錄樹
4.6.4 磁盤陣列、RAID以及磁盤布局
4.7 小結(jié) 第5章 數(shù)據(jù)庫高速緩存內(nèi)存
5.1 postgresql.conf文件中的內(nèi)存單元
5.2 檢查數(shù)據(jù)庫高速緩存
5.2.1 在數(shù)據(jù)庫中安裝pg_buffercache
5.2.2 數(shù)據(jù)庫磁盤布局
5.2.3 在數(shù)據(jù)庫中創(chuàng)建新的塊
5.2.4 將“臟”塊寫到磁盤
5.3 故障恢復(fù)和緩沖區(qū)高速緩存
5.3.1 檢查點處理基礎(chǔ)
5.3.2 預(yù)寫式日志和恢復(fù)處理
5.3.3 檢查點的時機掌握
5.3.4 數(shù)據(jù)庫塊的生命周期
5.4 數(shù)據(jù)庫緩沖區(qū)高速緩存與操作系統(tǒng)高速緩存
5.4.1 雙重緩存數(shù)據(jù)
5.4.2 檢查點開銷
5.4.3 起始大小指南
5.5 分析緩沖區(qū)高速緩存當中的內(nèi)容
5.5.1 緩沖區(qū)緩存查詢的檢查
5.5.2 使用緩沖區(qū)高速緩存檢查進行規(guī)模的反饋
5.6 小結(jié) 第6章 服務(wù)器配置調(diào)整
6.1 與當前配置進行交互
6.1.1 默認值和重置值
6.1.2 允許更改的上下文信息
6.1.3 重新加載配置文件
6.2 服務(wù)器范圍內(nèi)的設(shè)置
6.2.1 數(shù)據(jù)庫連接
6.2.2 共享內(nèi)存
6.2.3 日志
6.2.4 清理與統(tǒng)計信息
6.2.5 檢查點
6.2.6 WAL設(shè)置
6.2.7 PITR和WAL復(fù)制
6.3 每個客戶端的設(shè)置
6.3.1 effective_cache_size
6.3.2 調(diào)整以避免某些情況的出現(xiàn)
6.4 調(diào)整新服務(wù)器
6.5 專用服務(wù)器指南
6.6 共享服務(wù)器指南
6.7 pgtune
6.8 小結(jié) 第7章 日常維護
7.1 事務(wù)可見性以及多版本并發(fā)控制
7.1.1 可見性的內(nèi)部計算
7.1.2 Updates
7.1.3 行鎖的沖突
7.1.4 刪除
7.1.5 MVCC的優(yōu)點
7.1.6 MVCC的缺點
7.1.7 事務(wù)ID重疊
7.2 Vacuum
7.2.1 Vacuum實現(xiàn)
7.2.2 基于開銷的vacuum
7.2.3 autovacuum
7.2.4 常見的一些有關(guān)vacuum以及autovacuum的問題
7.3 Autoanalyze
7.4 索引膨脹
7.5 詳細數(shù)據(jù)和索引頁面監(jiān)控
7.6 監(jiān)控查詢?nèi)罩?br /> 7.6.1 基本的PostgreSQL日志設(shè)置
7.6.2 對棘手的查詢進行日志記錄
7.6.3 日志文件分析
7.7 小結(jié) 第8章 數(shù)據(jù)庫基準評測
8.1 pgbench默認測試
8.1.1 表的定義
8.1.2 規(guī)模檢測
8.1.3 查詢腳本定義
8.1.4 為pgbench測試配置數(shù)據(jù)庫服務(wù)器
8.2 手動運行pgbench測試
8.3 使用pgbench-tools圖形化輸出結(jié)果
8.4 pgbench測試結(jié)果樣例
8.4.1 SELECT測試
8.4.2 類TPC-B測試
8.4.3 延遲分析
8.5 糟糕的結(jié)果以及變化的緣由
8.6 自定義pgbench測試
8.7 事務(wù)處理性能委員會(TPC)基準評測
8.8 小結(jié) 第9章 數(shù)據(jù)庫索引
9.1 索引樣例的演練
9.1.1 查詢磁盤以及索引塊的統(tǒng)計信息的測量
9.1.2 樣例的運行
9.1.3 裝載樣例數(shù)據(jù)
9.1.4 簡單的索引查找
9.1.5 全表掃描
9.1.6 索引的創(chuàng)建
9.1.7 使用低效的索引進行數(shù)據(jù)查找
9.1.8 組合索引
9.1.9 從索引轉(zhuǎn)換為順序掃描
9.1.10 對索引進行聚集
9.1.11 使用緩沖區(qū)計數(shù)來解釋查詢計劃
9.2 索引的創(chuàng)建與維護
9.2.1 惟一索引
9.2.2 并發(fā)索引的創(chuàng)建
9.2.3 聚集索引
9.2.4 重建索引
9.3 索引的類型
9.3.1 B-樹
9.3.2 Hash
9.3.3 GIN
9.3.4 GiST
9.4 高級索引應(yīng)用
9.4.1 多列索引
9.4.2 排序索引
9.4.3 部分索引
9.4.4 基于表達式的索引
9.4.5 全文檢索索引
9.5 小結(jié) 第10章 查詢優(yōu)化
10.1 數(shù)據(jù)集樣例
10.1.1 Pagila
10.1.2 Dell Store 2
10.2 EXPLAIN基礎(chǔ)
10.2.1 時間開銷
10.2.2 熱門以及冷門高速緩存行為
10.3 查詢計劃的節(jié)點結(jié)構(gòu)
10.4 Explain分析工具
10.4.1 Visual explain
10.4.2 Verbose輸出
10.4.3 機器可讀的解釋輸出
10.4.4 計劃分析工具
10.5 組合行集
10.5.1 元組ID
10.5.2 順序掃描
10.5.3 索引掃描
10.5.4 位圖堆與索引掃描
10.6 處理節(jié)點
10.6.1 Sort
10.6.2 Limit
10.6.3 Aggregate
10.6.4 HashAggregate
10.6.5 Unique
10.6.6 Result
10.6.7 Append
10.6.8 Group
10.6.9 子查詢掃描(Subquery Scan)與子計劃(Subplan)
10.6.10 集操作
10.6.11 物化
10.6.12 公共表表達式掃描
10.7 連接
10.7.1 循環(huán)嵌套
10.7.2 合并連接(Merge Join)
10.7.3 Hash連接
10.8 統(tǒng)計信息
10.8.1 查看與估計統(tǒng)計信息
10.8.2 統(tǒng)計信息指標
10.8.3 估計一些比較難處理的領(lǐng)域
10.9 其他一些查詢規(guī)劃參數(shù)
10.9.1 effective_cache_size
10.9.2 work_mem
10.9.3 constraint_exclusion
10.9.4 cursor_tuple_fraction
10.10 執(zhí)行其他的語句類型
10.11 改進查詢
10.11.1 對完全緩存的數(shù)據(jù)集進行優(yōu)化
10.11.2 查詢等價測試
10.11.3 禁止優(yōu)化器功能
10.11.4 繞開優(yōu)化器問題
10.11.5 避免計劃使用OFFSET進行重組
10.11.6 外部故障點
10.12 SQL限制
10.12.1 在SQL當中對數(shù)據(jù)行進行編號
10.12.2 使用窗口函數(shù)進行編號
10.12.3 使用窗口函數(shù)進行累計
10.13 小結(jié) 第11章 數(shù)據(jù)庫活動和統(tǒng)計信息
11.1 統(tǒng)計信息視圖
11.2 漸增視圖以及實時視圖
11.3 表統(tǒng)計信息
11.4 索引統(tǒng)計信息
11.5 數(shù)據(jù)庫范圍內(nèi)的總計
11.6 連接及活動
11.7 鎖
11.7.1 虛擬事務(wù)
11.7.2 解碼鎖信息
11.7.3 事務(wù)鎖等待
11.7.4 表鎖等待
11.7.5 記錄鎖定信息
11.8 磁盤使用
11.9 緩沖區(qū)、后臺寫入器以及檢查點活動
11.9.1 保存pg_stat_bgwriter快照信息
11.9.2 使用后臺寫入器統(tǒng)計信息進行調(diào)整
11.10 小結(jié) 第12章 監(jiān)控與趨勢預(yù)測
12.1 UNIX監(jiān)控工具
12.1.1 樣例安裝
12.1.2 vmstat
12.1.3 iosta
12.1.4 top
12.1.5 sysstat及sar
12.2 Windows監(jiān)控工具
12.2.1 任務(wù)管理器
12.2.2 Windows系統(tǒng)監(jiān)視器
12.3 趨勢預(yù)測軟件
12.3.1 監(jiān)控以及趨勢預(yù)測軟件的類型
12.3.2 Nagios
12.3.3 Cacti
12.3.4 Munin
12.3.5 其他的一些趨勢預(yù)測程序包
12.4 小結(jié) 第13章 池化與高速緩存
13.1 連接池
13.1.1 連接池計數(shù)
13.1.2 pgpool-II
13.1.3 pgBouncer
13.2 數(shù)據(jù)庫高速緩存
13.2.1 memcached
13.2.2 pgmemcache
13.3 小結(jié) 第14章 擴展復(fù)制
14.1 完全熱備(Hot Standby)
14.1.1 術(shù)語
14.1.2 設(shè)置WAL文件傳送
14.1.3 流復(fù)制
14.1.4 完全熱備的調(diào)整
14.2 復(fù)制隊列管理器
14.2.1 Slony
14.2.2 Londiste
14.2.3 從擴展復(fù)制隊列軟件當中讀取信息
14.3 特殊的應(yīng)用程序需求
14.3.1 Bucardo
14.3.2 pgpool-II
14.4 其他一些有趣的與復(fù)制有關(guān)的開源項目
14.5 小結(jié) 第15章 數(shù)據(jù)分區(qū)
15.1 表范圍分區(qū)
15.1.1 確定要進行分區(qū)的關(guān)鍵字段
15.1.2 調(diào)整分區(qū)大小
15.1.3 創(chuàng)建分區(qū)
15.1.4 重定向INSERT語句至分區(qū)
15.1.5 空分區(qū)的查詢規(guī)劃
15.1.6 修改日期的update觸發(fā)器
15.1.7 實時遷移分區(qū)表
15.1.8 分區(qū)查詢
15.1.9 創(chuàng)建新的分區(qū)
15.1.10 分區(qū)的優(yōu)勢
15.1.11 分區(qū)當中的一些常見錯誤
15.2 使用PL/Proxy水平分區(qū)
15.2.1 Hash生成
15.2.2 使用PL/Proxy擴展
15.2.3 使用GridSQL擴展
15.3 小結(jié) 第16章 應(yīng)該避免的一些常見問題
16.1 批量裝載
16.1.1 裝載方法
16.1.2 批量裝載的調(diào)整
16.1.3 略過WAL進行加速
16.1.4 重新創(chuàng)建索引及添加約束信息
16.1.5 并行恢復(fù)
16.1.6 裝載之后的數(shù)據(jù)整理
16.2 常見的一些性能問題
16.2.1 行的計數(shù)
16.2.2 不明寫入
16.2.3 執(zhí)行緩慢的函數(shù)與預(yù)處理語句的執(zhí)行
16.2.4 PL/pgSQL基準評測
16.2.5 高外鍵開銷
16.2.6 觸發(fā)器內(nèi)存使用
16.2.7 沉重的統(tǒng)計信息收集器開銷
16.2.8 物化視圖
16.3 分析數(shù)據(jù)庫
16.3.1 gprof
16.3.2 OProfile
16.3.3 Visual Studio
16.3.4 DTrace
16.4 不同版本當中的與性能相關(guān)的功能
16.4.1 積極地進行PostgreSQL版本升級
16.4.2 8.1
16.4.3 8.2
16.4.4 8.3
16.4.5 8.4
16.4.6 9.0
16.5 小結(jié)

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號