HBase從入門到實戰

HBase從入門到實戰

《HBase從入門到實戰》是2023年清華大學出版社出版的圖書,作者是張文亮。

基本介紹

  • 中文名:HBase從入門到實戰
  • 作者:張文亮
  • 出版時間:2023年11月1日
  • 出版社:清華大學出版社
  • ISBN:9787302647331 
  • 定價:79 元
內容簡介,圖書目錄,

內容簡介

圖書簡介《HBase從入門到實戰》系統介紹HBase基本原理與運行機制,融入了作者多年的開發經驗與實踐技巧。本書共分為11章,主要內容包括:HBase的體系結構和系統特性、HBase的基礎數據結構與算法、RegionServer的核心模組、HBase的讀寫流程、Compaction實現原理和使用策略、負載均衡的實現與套用、HBase的基礎指令(包括DDL指令、DML指令、命名空間指令等)、如何使用Java語言操作HBase、客戶端的高級API的使用(包括各種過濾器的使用和多種過濾器的綜合使用)、通過編寫代碼實現數據的批量載入、HBase的數據讀寫最佳化和RowKey的設計最佳化。最後,通過一個章節的實戰,讓讀者對HBase的操作進行複習和鞏固。
《HBase從入門到實戰》適用於以前沒有接觸過HBase,或者對HBase有所了解並希望深入學習的讀者。同時,也適用於HBase套用開發人員和系統管理人員,以及對雲計算、大數據處理技術和NoSQL資料庫感興趣的技術人員作為參考書。

圖書目錄

目 錄
第1章 初識HBase 1
1.1 HBase的發展歷程 1
1.2 HBase的特徵 2
1.3 HBase的優缺點 2
1.3.1 HBase的優點 2
1.3.2 HBase的缺點 3
1.4 HBase與關係資料庫的區別 3
1.5 使用HBase的時機 4
1.6 HBase的套用場景 5
1.7 HBase的數據模型 7
1.8 HBase的邏輯視圖 10
1.9 本章練習 11
第2章 讓HBase運行起來 12
2.1 HBase基本架構 12
2.2 HBase分散式環境搭建 15
2.2.1 設定伺服器名稱 15
2.2.2 Hadoop單機安裝 16
2.2.3 Hadoop集群安裝 21
2.2.4 ZooKeeper集群安裝 29
2.2.5 HBase集群安裝 32
2.3 使用容器化技術搭建HBase 35
2.3.1 在CentOS環境下安裝Docker 35
2.3.2 在Windows 10環境下安裝Docker 37
2.3.3 利用Docker安裝HBase 38
2.4 HBase快速入門 40
2.4.1 使用HBase Shell 40
2.4.2 使用create命令 41
2.4.3 使用alter命令 41
2.4.4 使用list命令 41
2.4.5 使用describe命令 42
2.4.6 使用put命令 43
2.4.7 使用get命令 43
2.4.8 使用scan命令 44
2.4.9 使用deleteall命令 44
2.5 本章練習 45
第3章 HBase基礎操作 46
3.1 help命令 46
3.2 常規命令 49
3.2.1 查詢集群狀態信息(status命令) 49
3.2.2 查看如何操作表(table_help命令) 51
3.2.3 查詢HBase的版本信息(version命令) 52
3.2.4 查看當前用戶(whoami命令) 52
3.2.5 查看進程列表(processlist命令) 52
3.3 DDL命令 53
3.3.1 創建表(create命令) 53
3.3.2 修改表信息(alter命令) 54
3.3.3 異步修改表信息(alter_async命令) 57
3.3.4 獲取表的詳細信息(describe命令) 58
3.3.5 獲取HBase中所有的表(list命令) 59
3.3.6 判斷表是否存在(exists命令) 60
3.3.7 以對象的方式操作表(get_table命令) 60
3.3.8 啟用表(enable命令) 61
3.3.9 啟用所有滿足正則表達式的表(enable_all命令) 62
3.3.10 判斷表是否被啟用(is_enabled命令) 63
3.3.11 禁用表(disable命令) 63
3.3.12 禁用所有滿足正則表達式的表(disable_all命令) 63
3.3.13 判斷表是否被禁用(is_disabled命令) 64
3.3.14 刪除表(drop命令) 65
3.3.15 刪除所有滿足正則表達式的表(drop_all命令) 65
3.3.16 獲取RowKey所在的區域(locate_region命令) 66
3.3.17 顯示HBase支持的過濾器(show_filters命令) 67
3.4 命名空間 68
3.4.1 創建命名空間(create_namespace命令) 68
3.4.2 修改命名空間(alter_namespace命令) 69
3.4.3 獲取命名空間詳情(describe_namespace命令) 69
3.4.4 獲取命名空間下所有表的名稱(list_namespace_tables命令) 70
3.4.5 獲取所有的命名空間(list_namespace命令) 70
3.4.6 刪除命名空間(drop_namespace命令) 70
3.5 DML命令 71
3.5.1 新增或者修改數據(put命令) 71
3.5.2 全表掃描數據(scan命令) 72
3.5.3 獲取表中數據的總行數(count命令) 76
3.5.4 獲取表中的數據(get命令) 77
3.5.5 刪除列族中的某個列(delete命令) 80
3.5.6 刪除整行數據(delete命令) 80
3.5.7 列值自增(incr命令) 81
3.5.8 獲取自增後的列值(get_counter命令) 82
3.5.9 獲取表所對應的Region數量(get_splits命令) 83
3.5.10 清空整個表數據,不保留分區(truncat命令) 84
3.5.11 清空整個表數據,保留分區(truncat_ preserve命令) 84
3.6 本章練習 85
第4章 使用Java操作HBase 86
4.1 從HelloWorld開始 86
4.2 創建表 91
4.3 添加數據 97
4.4 批量添加數據 101
4.5 內容追加 107
4.6 修改數據 108
4.7 刪除數據 109
4.8 批量刪除 112
4.9 原子性操作 113
4.10 批量操作 115
4.11 自增 117
4.12 判斷數據是否存在 118
4.13 代碼封裝 119
4.14 本章練習 134
第5章 客戶端API高階用法 135
5.1 數據查詢 135
5.2 數據掃描 141
5.3 過濾器快速實戰 148
5.4 RowKey過濾器 150
5.5 RowKey前綴過濾器 152
5.6 RowKey模糊過濾器 154
5.7 列族過濾器 155
5.8 列過濾器 157
5.9 多列前綴過濾器 158
5.10 首次列鍵過濾器 159
5.11 列鍵過濾器 160
5.12 列值過濾器 161
5.13 單列值過濾器 163
5.14 列值排除過濾器 168
5.15 隨機行過濾器 169
5.16 分頁過濾器 171
5.17 多個過濾器綜合查詢 173
5.18 本章練習 174
第6章 HBase數據批量載入 175
6.1 HBase批量載入簡介 175
6.2 海量交易記錄數據存儲案例 176
6.2.1 案例開發準備工作 176
6.2.2 編寫實體類 177
6.2.3 創建讀取數據的Mapper類 181
6.2.4 編寫驅動類 183
6.2.5 上傳數據到HDFS 184
6.2.6 將導入的HDFS數據與HBase進行關聯 184
6.3 本章練習 185
第7章 協處理器 186
7.1 協處理器簡介 186
7.2 協處理器分類 187
7.3 Coprocessor接口 187
7.4 協處理器的載入 189
7.4.1 使用配置檔案載入 189
7.4.2 從表描述器中載入 190
7.5 RegionObserver類 192
7.5.1 Region狀態 199
7.5.2 處理客戶端API事件 201
7.6 自定義Observer案例 202
7.7 本章練習 204
第8章 Phoenix在HBase中的整合套用 205
8.1 Phoenix簡介 205
8.2 安裝Phoenix 206
8.2.1 下載 206
8.2.2 安裝 206
8.3 連線Phoenix 207
8.4 Phoenix快速入門 209
8.4.1 創建表 209
8.4.2 刪除表 211
8.4.3 插入數據 211
8.4.4 分頁查詢 211
8.5 本章練習 212
第9章 HBase架構深入剖析 213
9.1 HBase架構原理 213
9.1.1 RegionServer流程解析 214
9.1.2 StoreFile和HFile結構 215
9.1.3 MemStore和StoreFile 215
9.2 HBase的寫流程 216
9.3 HBase的讀流程 217
9.4 HBase如何進行增、刪、改、查 218
9.5 數據刷寫 218
9.5.1 刷寫操作的觸發時機 219
9.5.2 刷寫流程 220
9.6 數據合併 220
9.7 數據拆分 221
9.8 本章練習 223
第10章 HBase的性能最佳化 224
10.1 表設計最佳化 224
10.1.1 預分區 224
10.1.2 RowKey設計最佳化 226
10.1.3 列族數量最佳化 228
10.1.4 版本最佳化 228
10.2 HBase提升寫效率 228
10.3 MemStore調優 229
10.4 合併調優 230
10.5 WAL調優 231
10.6 HBase讀取最佳化 232
10.7 本章練習 233
第11章 HBase數據操作實戰 234
11.1 創建表並添加表數據 234
11.2 修改和刪除表數據 237
11.3 批量操作表數據 238
11.4 查詢數據 240
11.5 使用過濾器進行數據查詢 246

相關詞條

熱門詞條

聯絡我們