標籤:
噹噹網圖書資訊:
http://search.dangdang.com/?key=impala
《開源大資料分析引擎Impala實戰》前言
寫作背景
作為曾經的傳統關係型資料庫從業者,我們不僅需要瞭解資料庫本身,還需要瞭解運行資料庫的主機,儲存資料庫資料的倉庫,讀取資料庫資料的中介軟體以及應用本身的特點。隨著硬體的發展以及資料處理的細化,資料庫技術從傳統的基於磁碟的關係型資料庫,向記憶體資料庫、MPP資料庫不同的方向演化,資料庫產品也從高大全向單一RDBMS吃遍天、短小精悍的方向發展。在架構時,我們必鬚根據應用的特點選擇合適的資料庫產品。
自2009年開始,筆者開始嘗試使用基於Hadoop的技術來解決傳統資料庫無法線性擴充的問題。Hadoop不能稱之為“資料庫”,也不能簡單地稱之為“應用”,而是介於資料庫和應用之間的一種既能用於儲存和處理資料,又能處理應用商務邏輯的一個混合體,我們通常稱之為“資料平台”。Hadoop雖在本質上解決了磁碟IO的擴充問題,但同時由於其基於磁碟(自Hadoop 2.3起支援緩衝特性),因此對於某些即時性要求更高的任務無能為力,Impala及其他的基於記憶體的運算技術應運而生。
Impala的儲存基於HDFS,運算基於表的統計資訊產生執行計畫,具備資源管理功能,是最像傳統資料庫的大資料技術。筆者著手寫作本書時Impala的最新版本為1.3.1,而目前已演化至 2.1版本,在SQL文法、安裝、擴充性及效能方面進一步增強。
主要內容
工欲善其事,必先利其器,第1章手把手地為大家介紹如何離線搭建一個Impala環境。有了一個環境之後,我們可以暫時不考慮細節,先嘗嘗鮮使用一下它。第2章介紹如何在Impala上進行簡單的資料載入、建表、查詢等操作。作為Impala的管理者,僅僅能夠簡單使用它是遠遠不夠的。第3章系統地介紹Impala的架構體系及各組件的作用。第4章是為Impala的使用者量身定做的,花費比較大的篇幅介紹了Impala SQL、函數、UDF等。任何一款資料庫都會提供一個命令列工具,方便在沒有圖形介面的情況下,或者在Shell中進行調用,Impala也不例外,第5章介紹Impala的命令列工具Impala-shell。那如何有效地避免硬體資源的過載使用呢?當然是通過資源管理,第6章將詳細介紹Impala的資源管理機制,另外也可以將Impala使用YARN來進行管理。第7章詳細介紹了Impala底層支援的檔案類型,基本囊括了Hadoop主流的檔案類型。第8章介紹了Impala的分區機制。第9章介紹了Impala效能最佳化的指導原則,以及最佳化過程中使用到的各項技術。第10章介紹了在公司專屬應用程式中使用Impala時的設計原則及應用案例。
讀者對象
l 記憶體計算技術初學者
l 資料庫管理員及資料庫開發人員
l Hadoop及記憶體計算的營運工程師
l 開源軟體愛好者
l 其他對大資料技術感興趣的人員
致謝
在此感謝Cloudera的苗凱翔博士、Deborah Wiltshire、Yale Wang對本書的認可。感謝我的好兄弟閆猛、付樂慶對我一直以來的鼓勵。感謝我曾經服務過的客戶們對我的信任。感謝家長控制和朋友們,你們是我不斷努力的源動力。
作者簡介
賈傳青,資料架構師,Oracle OCM,DB2遷移之星,TechTarget特約作家,從資料庫向大資料轉型的先行者。曾服務於中國聯通、中國電信、建設銀行、PICC等,目前供職於一家大資料方案提供者,致力於使用大資料技術解決傳統資料庫無法解決的問題。
作者
2015年1月
《開源大資料分析引擎Impala實戰》前言