Kudu:構建高性能實時數據分析存儲系統

Kudu:構建高性能實時數據分析存儲系統

《Kudu:構建高性能實時數據分析存儲系統》

Kudu 將低延遲隨機訪問、逐行插入、更新和快速分析掃描融合到一個存儲層中,簡化了系統設計與維護。

Kudu的目標是把掃描的性能做到HDFS 上的Parquet 的兩倍以內,而隨機讀的性能則要接近HBase 和Cassandra,成為一種各方麵條件都適中的選擇。

基本介紹

  • 書名:Kudu:構建高性能實時數據分析存儲系統
  • 作者:【美】吉恩-馬克·斯帕加里(Jean-Marc Spaggiari) 等
  • 譯者:常冰琳
  • ISBN:978-7-121-29541-6
  • 頁數:192
  • 定價:69
  • 出版社:電子工業出版社
  • 出版時間:2019-03
  • 裝幀:平裝
  • 開本:16
內容提要,目錄,前言,

內容提要

要在Hadoop生態系統中實現數據的快速輸入和快速分析,一直以來只有少數可用但是不夠完美的解決方案。它們要么以緩慢的數據輸入為代價實現快速分析,要么以緩慢的分析為代價實現快速的數據輸入。這個問題現在有了解決辦法,使用Apache Kudu基於列的數據存儲,可以很容易地對快速輸入的數據進行快速的分析。這就是本書的內容。
在《Kudu:構建高性能實時數據分析存儲系統》中,你將學習Kudu設計中的關鍵概念,以及如何用它構建快速、可擴展和可靠的應用程式。通過實際的示例,你將了解Kudu是如何與其他Hadoop生態系統組件(如Apache Spark、Spark SQL和Impala)集成的。
《Kudu:構建高性能實時數據分析存儲系統》適合大數據系統的架構師、開發者和諮詢師閱讀。

目錄

前言 ............................................................................... XIII
第1 章 為什麼會有Kudu ..................................................1
Kudu 為什麼重要 .................................................................................... 1
易用性驅動接納度 .................................................................................. 2
新的套用場景 ......................................................................................... 5
物聯網 ...........................................................................................................5
現有的實時分析方案 .....................................................................................7
實時處理 .....................................................................................................13
硬體環境 ............................................................................................... 15
Kudu 在大數據生態中的獨特位置 ........................................................ 17
與其他生態系統的組件對比 .......................................................................19
與大數據組件對比——HDFS、HBase 和Cassandra ..................................24
小結 ...................................................................................................... 26
第2 章 Kudu 簡介 ..........................................................27
Kudu 的高層設計 .................................................................................. 29
Kudu 中的角色 ............................................................................................29
master 伺服器 ..............................................................................................31
tablet 伺服器................................................................................................32
Kudu 中的概念與機制 .......................................................................... 42
熱點 .............................................................................................................42
分區 .............................................................................................................44
第3 章 安裝與運行 .........................................................49
安裝 ...................................................................................................... 49
使用Kudu Quickstart VM ...........................................................................49
使用Cloudera Manager ...............................................................................51
從原始碼構建 ..............................................................................................52
軟體包 .........................................................................................................53
Cloudera Quickstart VM ..............................................................................53
快速安裝:3 分鐘或者更短 .................................................................. 54
小結 ...................................................................................................... 58
第4 章 Kudu 的管理 .......................................................59
為Kudu 做規劃 ..................................................................................... 59
master 伺服器和tablet 伺服器 .....................................................................60
預寫日誌 .....................................................................................................65
數據伺服器和存儲 ......................................................................................68
複製策略(replication strategy) ..................................................................69
部署時的注意事項:是採用新集群還是現有集群 ................................ 70
全新的僅有Kudu 的集群 ............................................................................70
全新的包含Kudu 的Hadoop 集群 ..............................................................71
在現有的Hadoop 集群中添加Kudu ...........................................................77
tablet 伺服器和master 伺服器的Web UI .............................................. 81
master 伺服器UI 和tablet 伺服器UI ..........................................................82
master 伺服器UI .........................................................................................83
tablet 伺服器UI ...........................................................................................83
Kudu 命令行接口 .................................................................................. 84
集群 .............................................................................................................84
檔案系統 .....................................................................................................86
tablet 副本 ...................................................................................................92
與Raft 一致性相關的元數據.....................................................................106
添加和刪除tablet 伺服器 .................................................................... 107
添加tablet 伺服器 .....................................................................................107
刪除tablet 伺服器 .....................................................................................108
安全 .................................................................................................... 109
一個簡單的類比 ........................................................................................ 110
Kudu 的安全功能 ...................................................................................... 112
基本的性能調優 .................................................................................. 117
Kudu 的記憶體限制 ...................................................................................... 117
維護管理器的執行緒 .................................................................................... 118
監控性能 ................................................................................................... 119
未雨綢繆,遠離麻煩 .......................................................................... 119
避免耗盡磁碟空間 .................................................................................... 119
容忍磁碟故障 ............................................................................................120
備份 ...........................................................................................................120
小結 .................................................................................................... 121
第5 章 Kudu 常用的開發接口 .......................................123
客戶端API .......................................................................................... 124
Kudu Client(客戶端)...............................................................................124
Kudu Table ................................................................................................125
Kudu DDL .................................................................................................125
Kudu 掃描器(Scanner)讀取模式 ...........................................................126
C++ API .............................................................................................. 127
Python API .......................................................................................... 130
準備Python 開發環境 ...............................................................................131
使用Python 開發Kudu 套用 .....................................................................131
Java ..................................................................................................... 135
Java 套用 ...................................................................................................137
Spark ................................................................................................... 140
在Impala 中使用Kudu ....................................................................... 145
第6 章 表和模式設計 ...................................................149
模式設計基礎 ..................................................................................... 150
線上事務處理/ 線上分析處理混合的模式設計 .................................. 151
Lambda 架構 .............................................................................................151
OLTP/OLAP 拆分 ......................................................................................152
主鍵和列的設計 .................................................................................. 153
列模式的其他注意事項 .............................................................................154
分區的基礎知識 .................................................................................. 160
範圍分區 ...................................................................................................161
哈希分區 ...................................................................................................161
模式的更改 ......................................................................................... 162
最佳實踐和提示 .................................................................................. 163
分區 ...........................................................................................................163
大對象 .......................................................................................................164
decimal(十進制數)..................................................................................164
不重複的字元串 ........................................................................................165
壓縮 ...........................................................................................................165
對象的命名 ................................................................................................165
列的數量 ...................................................................................................165
二進制類型 ................................................................................................166
網路包示例 ......................................................................................... 166
小結 .................................................................................................... 168
第7 章 Kudu 用例 ........................................................169
實時物聯網分析 .................................................................................. 169
預測建模 ............................................................................................. 173
多平台混合方案 .................................................................................. 176
關於作者 ........................................................................180
封面圖片 ........................................................................182

前言

選擇存儲引擎是實施所有大數據項目時要做的最重要的決定之一,而且更換存儲引擎的成本也是最高的。Apache Kudu 是Hadoop 生態系統中的一個全新存儲系統。它的靈活性使我們能夠更快地搭建和維護應用程式。在Hadoop 開發者的大數據工具箱中,Kudu 是一個關鍵工具。它解決了一些使用目前的Hadoop 存儲技術很難實現或不可能實現的常見問題。
在這本書中,你將學習Kudu 設計中的關鍵概念,以及如何用它構建快速、可擴展和可靠的Kudu 應用程式。通過實際的示例,你將了解Kudu 如何與其他Hadoop 生態系統組件(如Spark、Spark SQL 和Impala)集成。
本書假設讀者對Hadoop 生態系統組件(如HDFS、Hive、Spark 或Impala)有一些使用經驗,有Java 或Scala 編程經驗,還有SQL 和傳統關係型資料庫管理系統“使用”經驗,熟悉Linux shell。

相關詞條

熱門詞條

聯絡我們