-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
精通LevelDB:掌握谷歌Bigtable數據庫設計精髓 版權信息
- ISBN:9787111693260
- 條形碼:9787111693260 ; 978-7-111-69326-0
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
精通LevelDB:掌握谷歌Bigtable數據庫設計精髓 本書特色
適讀人群 :數據庫開發、運維與架構師,以及應用開發工程師等(1)作者專業:阿里巴巴和貝殼找房專家撰寫 (2)內容實用:深入LevelDB架構與源碼,精通鍵-值數據庫 (3)更上層樓:掌握谷歌Bigtable數據庫單機版設計精髓 (4)學以致用:基于LevelDB,開發分布式數據庫
精通LevelDB:掌握谷歌Bigtable數據庫設計精髓 內容簡介
全書分為3個部分:部分介紹LevelDB的背景知識,主要描述LevelDB是什么,具有什么樣的特性,有什么樣的應用場景。此外,分析LevelDB的源代碼目錄結構,介紹其總體架構與設計思想,并對個各個子模塊的功能進行簡要的描述。第二部分,按前面劃分好的軟件模塊,對每一個模塊進行詳細的介紹。在模塊詳細介紹時,著重講清每個模塊的原理及其在LevelDB中的具體作用,并有針對性的加入一些C++編程規范相關的內容。通過閱讀本書,讀者不僅能學習高性能Kev/Value數據庫的實現原理,還能掌握LevelDB中幾個經典的數據結構與模塊,如SSTable、LSM等,對未來的應用與開發設計提供重要的參考。
精通LevelDB:掌握谷歌Bigtable數據庫設計精髓 目錄
前言
第1章 初識LevelDB1
11 鍵-值數據庫的提出與價值1
12 LevelDB的誕生過程2
13 LevelDB的特性3
14 LevelDB的性能分析4
15 LevelDB的衍生產品5
151 RocksDB6
152 SSDB7
16 小結8
第2章 基本數據結構9
21 string與Slice9
22 錯誤處理Status10
23 key比較函數接口Comparator11
24 迭代器接口13
25 系統參數14
251 DB參數Options14
252 讀操作參數ReadOptions16
253 寫操作參數WriteOptions16
26 小結17
第3章 LevelDB使用入門18
31 源碼簡介18
311 目錄結構18
312 安裝與編譯19
313 引用頭文件20
32 創建(打開)與關閉數據庫21
33 數據的讀、寫與刪除23
34 數據批量操作24
35 迭代器與key的查詢操作26
351 前向與反向迭代循環遍歷26
352 按key的范圍進行查詢27
36 性能優化方案28
361 啟用壓縮28
362 啟用Cache29
363 啟用FilterPolicy30
364 key的命名設計30
37 小結31
第4章 總體架構與設計思想32
41 鍵-值存儲系統的基本要求32
42 Bigtable與LevelDB 33
43 主要模塊功能介紹34
44 主要操作流程分析36
441 數據庫Open流程分析36
442 數據Get流程分析39
443 數據Put與Write流程分析42
444 快照生成與讀取分析46
45 小結48
第5章 公用基礎類49
51 LevelDB跨平臺編程49
511 LevelDB操作系統可移植方案49
512 LevelDB移植到操作系統接口規范50
513 POSIX可移植操作系統接口55
514 原子指針與內存屏障61
52 文件操作66
521 順序文件操作66
522 隨機文件操作73
523 Log文件操作77
53 Env操作環境抽象接口81
531 PosixEnv對象84
532 EnvWrapper與InMemoryEnv93
54 int數值編碼99
541 什么是編碼99
542 int定長數值編碼100
543 int變長數值編碼102
55 內存管理104
551 Arena內存池的基本思想105
552 Arena內存池的定義與原理105
553 Arena內存的分配108
554 內存使用率統計114
555 非內存池的內存分配優化115
56 小結116
第6章 Log模塊117
61 Log文件格式定義117
62 Log文件讀寫操作119
621 Log文件寫入119
622 Log文件讀取122
63 記錄Log文件124
64 從Log文件恢復MemTable125
65 小結126
第7章 MemTable模塊127
71 MemTable插入與查找127
711 MemTable插入128
712 MemTable查找129
72 SkipList插入與查找131
721 SkipList插入132
722 SkipList查找134
73 MemTable生成SSTable136
74 小結137
第8章 SSTable模塊139
81 SSTable文件格式139
811 SSTable的組成140
812 塊格式141
813 數據索引區域145
814 數據區域145
815 元數據索引區域145
816 元數據區域146
82 SSTable的讀寫流程148
821 生成塊148
822 讀取塊151
823 生成SSTable152
824 讀取SSTable156
83 布隆過濾器的實現158
831 布隆過濾器的設計160
832 布隆過濾器的使用162
84 LRU Cache的實現166
841 LRU Cache的設計167
842 LRU Cache的使用173
85 小結174
第9章 多版本管理與Compaction原理176
91 多版本管理機制177
911 VersionEdit機制177
912 Version機制182
913 VersionSet機制187
914 Manifest機制189
92 Compaction原理189
921 觸發時機190
922 文件選取191
923 執行流程195
924 文件清理197
93 小結199
附錄 LevelDB的演進200
精通LevelDB:掌握谷歌Bigtable數據庫設計精髓 作者簡介
廖環宇,中南大學碩士、阿里云高級算法專家與工業大腦算法團隊負責人,長期致力于人工智能算法與工業大數據技術的研究和實踐,主導過許多大型數據智能平臺的開發與應用。 張仕華,貝殼找房資深軟件開發工程師,畢業于北京科技大學,曾就職于360、滴滴。熱衷源碼研究與探究技術本質,合著有《Redis 5設計與源碼分析》。
- >
名家帶你讀魯迅:朝花夕拾
- >
龍榆生:詞曲概論/大家小書
- >
羅庸西南聯大授課錄
- >
自卑與超越
- >
莉莉和章魚
- >
【精裝繪本】畫給孩子的中國神話
- >
唐代進士錄
- >
月亮與六便士