大數據的下一步:用Spark玩轉活用

大數據的下一步:用Spark玩轉活用 pdf epub mobi txt 电子书 下载 2025

圖書標籤:
  • 大數據
  • Spark
  • 數據分析
  • 數據挖掘
  • 機器學習
  • Python
  • Scala
  • 實時計算
  • 數據處理
  • 技術實踐
想要找书就要到 灣灣書站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

圖書描述

隨著大數據時代的到來,企業資料每天都在急劇快速膨脹,如何發掘這些資料的價值,需要一種高效而穩定的分散式運算框架和模型。Spark恰逢其時,應運而生。本書對Spark進行詳細的闡述,包括核心模組和各個子係統,能讓Spark初學者快速瞭解和上手,是學習Spark的敲門磚,希望此書能讓更多的讀者去深入發掘Spark之美。

-淘寶技術部資料採擷與計算團隊負責人 黃明(明風)

  Apache Spark由於其基於記憶體的高性能計算模式以及豐富靈活的程式設計介麵,得到廣泛的支援和應用,大有逐漸取代Hadoop MapReduce成為新一代大數據計算引擎的趨勢。本書從原始程式碼角度深入淺齣地分析瞭Apache Spark及相關大數據技術的設計及實現,包含很多實戰經驗和使用心得。相信本書對於進行大數據、記憶體計算及分散式係統研究,Apache Spark的深入理解以及實際應用,都有很好的參考價值。

-英特爾亞太研發有限公司技術總監 段建剛

著者信息

作者簡介

夏俊鸞


  現任阿裏巴巴資料平颱部高級技術專傢,Apache Spark項目Committer,曾就職於英特爾亞太研發中心,微博帳號@Andrew-Xia。

劉旭暉

  現任蘑菇街資料平颱資深架構師(花名天火),曾就職於英特爾亞太研發中心大資料軟體部,Spark/Hadoop/Hbase/Phoenix 等眾多大資料相關開源專案的積極貢獻者。

邵賽賽

  英特爾亞太研發有限公司開發工程師,專注於大資料領域,現從事Spark相關工作,Spark代碼貢獻者。

程浩

  英特爾大資料技術團隊軟體工程師,Shark和Spark SQL活躍開發者,緻力於SQL on Big Data的性能最佳化。

史鳴飛

  英特爾亞太研發有限公司大資料軟體部工程師,專注於大資料領域,現在主要投身於Tachyon項目的開發。

黃潔

  目前就職於英特爾亞太研發中心大資料技術中心,擔任高級軟體工程師,是Apache Chukwa專案的PMC成員和Committer。

圖書目錄

前言
Chapter 01   Spark 係統概述
1.1 大數據處理架構
1.2 Spark 大數據處理架構
1.2.1 RDD 錶達能力
1.2.2 Spark 子係統
1.3 小結

Chapter 02   Spark RDD 及程式設計介麵
2.1 Spark 程式"Hello World"
2.2 Spark RDD
2.3 建立操作
2.3.1 集閤建立操作
2.3.2 儲存建立操作
2.4 轉換操作
2.4.1 RDD 基本轉換操作
2.4.2 鍵值RDD 轉換操作
2.4.3 再論RDD 相依關係
2.5 控製操作(control operation)
2.6 行動操作(action operation)
2.6.1 集閤純量行動操作
2.6.2 儲存行動操作
2.7 小結

Chapter 03   Spark 執行模式及原理
3.1 Spark 執行模式概述
3.1.1 Spark 執行模式清單
3.1.2 Spark 基本工作流程
3.1.3 相關基本類彆
3.2 Local 模式
3.2.1 部署及程式執行
3.2.2 內部實現原理
3.3 Standalone 模式
3.3.1 部署及程式執行
3.3.2 內部實現原理
3.4 Local cluster 模式
3.4.1 部署及程式執行
3.4.2 內部實現原理
3.5 Mesos 模式
3.5.1 部署及程式執行
3.5.2 內部實現原理
3.6 YARN standalone / YARN cluster 模式
3.6.1 部署及程式執行
3.6.2 內部實現原理
3.7 YARN client 模式
3.7.1 部署及程式執行
3.7.2 內部實現原理
3.8 各種模式的實現細節比較
3.8.1 環境變數的傳遞
3.8.2 JAR 套件和各種依賴檔案的分發
3.8.3 工作管理和序列化
3.8.4 使用者參數設定
3.8.5 使用者及許可權控製
3.9 Spark 1.0 版本之後的變化
3.10 小結

Chapter 04   Spark 排程管理原理
4.1 Spark 作業排程管理概述
4.2 Spark 排程相關基本概念
4.3 作業排程模組頂層邏輯概述
4.4 作業排程實際工作流程
4.4.1 排程階段的拆分
4.4.2 排程階段的傳送
4.4.3 工作集的傳送
4.4.4 完成狀態的監控
4.4.5 工作結果的取得
4.5 工作集管理模組詳解
4.6 排程池和排程模式分析
4.7 其他排程相關內容
4.7.1 Spark 應用之間的排程關係
4.7.2 排程過程中的資料本機性問題
4.8 小結

Chapter 05   Spark 的儲存管理
5.1 儲存管理模組整體架構
5.1.1 通訊層架構
5.1.2 通訊層訊息傳遞
5.1.3 註冊儲存管理模組
5.1.4 儲存層架構
5.1.5 資料區塊(Block)
5.2 RDD 持久化
5.2.1 RDD 分區和資料區塊的關係
5.2.2 記憶體快取
5.2.3 磁碟快取
5.2.4 持久化選項
5.2.5 如何選擇不同的持久化選項5.4 車標搜索
5.3 Shuffle 資料持久化
5.4 廣播(Broadcast)變數持久化
5.5 小結

Chapter 06   Spark 監控管理
6.1 UI 管理
6.1.1 即時UI 管理
6.1.2 曆史UI 管理
6.2 Metrics 管理
6.2.1 Metrics 係統架構
6.2.2 Metrics 係統組態
6.2.3 輸入來源(Metrics Source)介紹
6.2.4 輸齣方式(Metrics Sink)介紹
6.3 小結

Chapter 07   Shark 架構與安裝設定
7.1 Shark 架構淺析
7.2 Hive/Shark 各功能元件比較
7.2.1 MetaStore
7.2.2 CLI/ Beeline
7.2.3 JDBC/ODBC
7.2.4 Hive Server/2 與Shark Server/2
7.2.5 Driver
7.2.6 SQL Parser
7.2.7 查詢最佳化工具(Query Optimizer)
7.2.8 實體計畫與執行
7.3 Shark 安裝設定與使用
7.3.1 安裝前準備工作
7.3.2 在不同執行模式下安裝Shark
7.4 Shark SQL 命令列工具(CLI)
7.5 使用Shark Shell 指令
7.6 啓動SharkServer
7.7 Shark Server2 設定與啓動
7.8 快取資料錶
7.8.1 資料快取等級
7.8.2 建立不同快取等級的Shark 資料錶
7.8.3 指定資料錶快取策略
7.8.4 使用Tachyon
7.9 常見問題分析
7.9.1 OutOfMemory 異常
7.9.2 資料處理傳輸量低
7.9.3 Shark 查詢比Hive 慢
7.10 小結

Chapter 08   SQL 程式擴充
8.1 程式擴充平行執行模式
8.2 Evaluator 和ObjectInspector
8.3 自訂函數擴充
8.3.1 自訂函數擴充分類
8.3.2 CLI 中的使用者自訂函數擴充相關指令
8.3.3 使用者自訂函數(UDF)
8.3.4 通用使用者自訂函數(Generic UDF)
8.3.5 使用者自訂匯總函數(UDAF)
8.3.6 通用使用者自訂匯總函數(Generic UDAF)
8.3.7 通用使用者自訂錶函數(Generic UDTF)
8.4 自訂資料存取格式
8.4.1 SerDe
8.4.2 StorageHandler
8.5 小結

Chapter 09   Spark SQL
9.1 Spark SQL 邏輯架構
9.1.1 Catalyst 功能邊界
9.1.2 SQL 解析階段
9.1.3 邏輯計畫中繼資料綁定和語義分析階段
9.1.4 邏輯計畫最佳化階段
9.1.5 實體計畫産生階段
9.1.6 Shark 和Spark SQL 比較
9.2 Catalyst 上下文(Context)
9.2.1 SQLContext
9.2.2 HiveContext
9.3 SQL DSL API
9.3.1 資料來源管理
9.3.2 SchemaRDD
9.3.3 Row API
9.3.4 資料類型
9.3.5 DSL API 舉例
9.3.6 運算式計算
9.3.7 Parquet 列式儲存檔案
9.3.8 程式示範
9.4 Java API
9.5 Python API
9.6 Spark SQL CLI
9.7 Thrift 服務
9.8 小結

Chapter10   Spark Streaming 串流資料處理架構
10.1 快速入門
10.2 Spark Streaming 基本概念
10.2.1 連結和初始化
10.2.2 時間和視窗概念
10.2.3 DStream 原理
10.2.4 DStream 輸入來源
10.2.5 DStream 操作
10.2.6 DStream 持久化
10.3 效能最佳化
10.3.1 執行時間最佳化
10.3.2 記憶體使用最佳化
10.4 容錯處理
10.4.1 工作節點故障
10.4.2 驅動節點故障
10.5 DStream 作業的産生和排程
10.5.1 作業産生
10.5.2 作業排程
10.5.3 Streaming 作業與Spark 作業之間的關係
10.6 DStream 與RDD 關係
10.7 資料接收原理
10.8 自訂資料登錄源
10.9 自訂監控介麵(StreamingListener)
10.10 Spark Streaming 案例分析
10.11 小結

Chapter 11   GraphX 計算架構
11.1 圖型平行計算
11.1.1 資料平行與圖型平行計算
11.1.2 圖型平行計算架構簡介
11.1.3 GraphX 簡介
11.2 GraphX 模型設計
11.2.1 資料模型
11.2.2 圖型計算介麵
11.3 GraphX 模型實現
11.3.1 圖的分散式儲存
11.3.2 圖操作執行策略
11.3.3 圖操作執行最佳化
11.3.4 序列化和反序列化
11.3.5 GraphX 內建演算法函數庫
11.4 GraphX 應用
11.4.1 Pregel 模型
11.4.2 N 維鄰接關係計算
11.5 小結

Chapter 12   Tachyon 儲存係統
12.1 設計原理
12.1.1 高效的記憶體讀寫
12.1.2 無備份的可用性實現——Lineage
12.2 架構設計
12.2.1 主節點
12.2.2 工作節點
12.2.3 用戶端
12.2.4 讀寫入工作流程
12.3 Tachyon 的部署
12.3.1 單機部署
12.3.2 分散式部署
12.3.3 Tachyon 的設定
12.4 Tachyon 應用
12.4.1 Shark 原始錶(RawTable)
12.4.2 Spark 的堆積外RDD
12.4.3 Tachyon 使用者介麵(API)
12.5 相關專案討論
12.6 小結

圖書序言

推薦序

  2009 年的時候,Netflix 公司舉辦瞭一個叫作Netflix Prize 的推薦演算法比賽。這個比賽匿名公佈瞭Netflix 五十萬使用者對近兩萬部電影的一億個評分資料,希望參賽者能夠開發齣更好的推薦演算法,以加強推薦係統的品質。這個比賽的奬金有一百萬美金,看似很多,但和一個更好的推薦演算法為Netflix 帶來的效益相比,實則九牛一毛。

  豐厚的奬金和Netflix 提供的真實資料吸引不少的參賽者,其中也包含瞭來自加州大學柏剋萊分校(UC Berkeley)的博士生Lester Mackey。Lester 師從機器學習領域泰鬥Michael Irwin Jordan,在一個AMPLab 的大數據實驗室裏進行博士研究。AMPLab 和大多數學術界實驗室不同的地方,在於實驗室內由多名教授和他們帶領的學生一起閤作,研究人員來自不同的領域,包含機器學習、資料庫、電腦網路、分散式係統等。當時,要想加強演算法研究反覆運算的效率,需要利用多颱機器的分散式建模。在嘗試當時業界最流行的HadoopMapReduce 後,Lester 發現自己的時間並不是花在加強演算法效率上,而是耗費在MapReduce 的程式設計模型和低效的執行模式上。因此,他嚮實驗室另一名進行分散式係統研究的學生Matei Zaharia 求助。

  當時年紀輕輕的Matei 在業界已經小有名望。他在雅虎和Facebook 實習期間做瞭很多Hadoop 早期的奠基工作,包含現今Hadoop 係統內應用最廣的fair scheduler 排程演算法。在和Lester 的腦力激盪中,Matei 歸納瞭Hadoop MR的不足,開始設計第一個版本的Spark。這個版本完全是為Lester 訂製,隻有幾百行的程式,卻讓Lester 可以高效率地進行分散式機器學習建模。

  Lester 所在的The Ensemble 團隊最後和BellKor's Pragmatic Chaos 設計瞭在效率上並列第一的演算法,可惜因為晚20 分鍾送齣,與一百萬美金奬金失之交臂。5 年後,Lester 和Matei 都變成瞭學術界和業界傑齣的人物。Lester 成為史丹佛大學電腦係的教授,帶領學生攻剋一個又一個機器學習和統計的難題。Matei 成為麻省理工電腦係的教授,也是Databricks 公司的CTO。

  2009 年之後的4 年裏,AMPLab 以Spark 為基礎展開很多不同的學術研究專案,其中包含瞭Shark 和GraphX,還有Spark Streaming、MLlib 等。4 年裏隨著Hadoop 的發展,Spark 也逐漸從一個純學術研究專案發展到開始有業界敢嘗鮮的使用者。

  2013 年, 包含Matei 和我在內的Spark 核心人員共同創立Databricks 公司,立誌於加強Spark 的速度發展。過去兩年,Spark 的發展超越瞭我們所有人的想像。一年半以前Spark 還是一個連監控介麵都不存在的係統,很難放進生産綫部署。而一年半後的今天,它已經變成整個大數據生態圈和Apache Software Foundation 內最活躍的專案,活躍程度遠遠超齣瞭曾經隻能望其項背的Hadoop。

  很多高科技和網際網路公司也都有瞭Spark 的生産作業,不少使用者直接減少在Hadoop MapReduce 上的投資,把新的專案都傳輸到Spark 上。

  今天正好是Databricks 公司成立一年半,也是Spark 1.2 版本第一個release candidate 發佈的日期。Spark 的高速發展導緻中文資訊的脫節。這本書深入淺齣地介紹Spark 和Spark 上多個重要計算架構,希望它的問世可以更進一步地普及Spark,增進Spark 社區的發展。

辛湜 Reynold Xin
Berkeley, CA

圖書試讀

用户评价

评分

我一直覺得,大數據處理就像是在茫茫大海中尋找寶藏,而 Spark 聽起來就像是那個能帶我們快速航行、精準定位的羅盤。這本《大數據的下一步:用Spark玩轉活用》的書名,非常吸引我,因為「玩轉活用」這四個字,傳達瞭一種親切且有成就感的學習體驗。我過去也曾接觸過一些大數據的相關書籍,但很多都離我實際的工作內容有點遠,像是理論多過實踐,或是需要非常深厚的程式基礎纔能看懂。這本書讓我看到瞭不一樣的可能性,就是即使不是頂尖的工程師,也能夠透過它來掌握大數據的奧秘,並將其應用在日常工作中。我非常期待這本書能夠提供一些圖文並茂的範例,讓我能夠實際操作,例如如何利用 Spark 來處理我們公司每天產生的海量客戶訂單數據,從中挖掘齣消費者的購物習慣,進而推齣更精準的行銷活動。或者是在社群媒體的數據分析方麵,如何利用 Spark 來瞭解用戶對我們產品的評價,及時調整產品策略。

评分

每次看到「大數據」這三個字,總有一種既期待又害怕受傷害的感覺。期待的是它能帶來無限的可能性,害怕的是自己學不會、跟不上。而這本《大數據的下一步:用Spark玩轉活用》,光是看書名就讓我覺得眼前一亮!「玩轉活用」這幾個字,真的太精準瞭!我一直覺得,很多時候技術書都太過學術,離實際應用總是隔瞭一段距離,讓人難以將書本上的知識轉化為實際的產能。我希望這本書能提供一些由淺入深、循序漸進的引導,讓像我這樣對大數據有興趣,但又不是頂尖工程師的讀者,能夠真的掌握 Spark 這個強大的工具。我尤其想知道,它會不會教我們如何用 Spark 來解決一些實際的商業問題?比如說,如何透過分析大量的用戶點擊數據,來優化網站的用戶體驗,提升轉換率?或是如何利用 Spark 來處理即時串流的數據,做齣即時的決策,例如在電商平颱上的個人化推薦?如果能有這樣的實例,那這本書的價值就太高瞭!

评分

這本《大數據的下一步:用Spark玩轉活用》光是聽名字就覺得很有份量,而且「玩轉活用」這個詞,聽起來就非常誘人!最近在業界,Spark 的討論度真的很高,大傢都說它是處理大數據的利器,效率和彈性都比過去的工具來得好。我本身是個對數據分析有點興趣,但又不是科班齣身的職場人士,常常覺得自己被大數據的浪潮遠遠甩在後麵。市麵上很多關於大數據的書籍,不是太理論化,就是需要很深的程式背景纔能看懂,讓我覺得望而卻步。但這本書的書名,給瞭我一種「我可以!」的感覺。我期待它能提供一些非常具體、可操作的步驟,讓我能夠真的把 Spark 學會、用起來。我尤其想知道,它會不會包含一些真實世界的案例分析?例如,如何利用 Spark 來分析網路廣告的投放成效,找齣最優化的投放策略?或者是在金融領域,如何用 Spark 來進行風險評估和詐欺偵測?如果書中能有這樣子的實例,那我真的會覺得物超所值,也更有動力去深入學習。

评分

不得不說,這次看到《大數據的下一步:用Spark玩轉活用》這本書的齣現,實在是讓我又驚又喜!我一直覺得,大數據這個領域,光是聽名字就讓人覺得有點距離感,好像是專屬於頂尖科技公司纔會碰觸的領域。但是,如果真的有方法可以讓我們這些「非工程師」也能夠「玩轉活用」,那絕對是福音。我對 Spark 的瞭解還停留在它是一個很強大的分佈式計算框架,能大幅提升數據處理的效率,但具體怎麼操作、如何應用在日常工作中,我一直沒有一個清晰的概念。這本書的「玩轉活用」四個字,真的抓住瞭我的心!我希望它能提供一些圖文並茂的說明,或者是一些循序漸進的教學,讓我從零開始,慢慢學會如何使用 Spark 來解決我工作中遇到的實際問題。例如,在處理社群媒體上的使用者迴饋時,如何能快速篩選齣關鍵的意見,並進行情緒分析?或者是在分析電商平颱的銷售數據時,如何能預測未來的銷售趨勢?這些都是我一直想嘗試但苦於沒有閤適工具的課題。

评分

哇,看到這本《大數據的下一步:用Spark玩轉活用》的書名,我整個眼睛都亮瞭!最近身邊做數據分析的朋友都在討論 Spark,聽說它解決瞭 Hadoop MapReduce 的不少痛點,處理速度快到不可思議。我一直以來都是個好奇寶寶,對新技術總是有股莫名的衝動想去瞭解。雖然我的背景不是硬派的工程師,但對數據背後的洞察力卻相當著迷。市麵上關於大數據的書不少,很多都講得太理論,要嘛就是直接拋一堆程式碼,看得我霧煞煞。這本《大數據的下一步》聽起來就很接地氣,強調「玩轉活用」,讓我感覺不是在看教科書,而是像在學一個實用的工具。我尤其好奇的是,它會不會介紹一些實際的應用案例?畢竟光是知道理論,很難想像它到底能幫我們解決什麼實際問題。像是我們公司每天產生的海量用戶行為數據,如果能透過 Spark 快速地分析齣用戶的偏好,進而優化我們的產品和行銷策略,那絕對是個 game changer!希望這本書能帶我進入一個全新的數據視野,讓我在麵對龐大數據時,不再感到無從下手,而是能自信地駕馭它。

相关图书

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 twbook.tinynews.org All Rights Reserved. 灣灣書站 版權所有