熱門關鍵字:

BN說明

Spark SQL親自動手做(熱銷版):大數據時代的資料庫處理

  • 館長推薦
? 快來將您對閱讀的熱情和對書籍的想法分享給所有讀友,每完成一篇讀者書評並審核通過者,即可獲得讀者書評點數,點數還可換電子禮券唷!
分享:

商品訊息

  • 追蹤分類 ? 追蹤分類後,您會在第一時間收到分類新品通知。
  • 作者: 紀涵、靖曉文、趙政達 追蹤作者 ? 追蹤作者後,您會在第一時間收到作者新書通知。
  • 出版社: 佳魁 追蹤出版社 ? 追蹤出版社後,您會在第一時間收到出版社新書通知。
  • 出版日:2019/10/14
  • ISBN:9789863797814
  • 適讀年齡:
  • 定價: 580
  • 特價: 79 458
  • 紅利可抵: 14 ? 除單一商品售價低於50元或特價折扣低於3折(含)以下者,其餘商品均可使用紅利點數。
  • 到店取貨: ? 『金石堂』門市取貨免運費。
    『全家、OK、萊爾富、掌櫃』滿350元,免運費;350元以下,運費20元。
    宅配: ? 滿1,000元,免運費
    490元-999元,運費50元
    490元以下,運費65元
  • 配送地區: 全球、 香港OK、 台澎金馬
  • 付款方式: ATM、 信用卡、 LINE Pay、 街口帳戶支付、 貨到付款、 PayPal、 FamiPort、 取貨付款
  • 預計 2019/11/13 出貨 參考庫存量:5 查詢門市庫存 ? 若您欲在金石堂門市購買商品,請選擇欲查看庫存之門市。網頁之「庫存狀態」僅供參考,實際貨況以門市為準。

強力推薦

內容簡介

Spark SQL是Spark大數據框架的一部分,支援使用標準SQL查詢和HiveQL來讀寫資料,可用於結構化資料處理,並可以執行類似SQL的Spark資料查詢,有助於開發人員更快地建置和執行Spark程式。

全書分為4篇,共9章,第一篇講解Spark SQL 發展歷史和開發環境搭建。第二篇講解Spark SQL 實例,幫助讀者掌握Spark SQL的入門操作,瞭解Spark RDD、DataFrame和DataSet,並熟悉 DataFrame 各種操作。第三篇講解基於WiFi探針的商業大數據分析專案,實例中包含資料獲取、預處理、存儲、利用Spark SQL 挖掘資料,一步步帶領讀者學習Spark SQL強大的資料採擷功能。第四篇講解Spark SQL 最佳化的知識。

適用:Spark初學者、Spark資料分析人員以及Spark程式開發人員,也可作為大專院校和培訓機構等相關專業的師生教學參考。

作者

紀涵

資料採擷、雲計算愛好者,曾負責多個中小型網站的開發維護工作,參與開發設計多款面向校園服務的App,與多個基於Hadoop、Spark平台的大數據應用,現主要研究方向為機器學習、資料採擷。

目錄

第一部分 入門篇
1初識Spark SQL
1.1 Spark SQL的前世今生
1.2 Spark SQL能做什麼
2 Spark安裝、程式設計環境架設以及包裝傳送
2.1 Spark的簡易安裝
2.2 準備撰寫Spark應用程式的IDEA環境
2.3 將撰寫好的Spark應用程式套件裝成jar傳送到Spark上

第二部分 基礎篇
3 Spark上的RDD程式設計
3.1 RDD基礎
3.2 RDD簡單實例—wordcount
3.3 建立RDD
3.4 RDD操作
3.5 向Spark傳遞函數
3.6 常見的轉化操作和行動操作
3.7 深入了解RDD
3.8 RDD 快取、持久化
3.9 RDD checkpoint容錯機制
4 Spark SQL程式設計入門
4.1 Spark SQL概述
4.2 Spark SQL程式設計入門範例
5 Spark SQL的DataFrame操作大全
5.1 由JSON檔案產生所需的DataFrame物件
5.2 DataFrame上的行動操作
5.3 DataFrame上的轉化操作
6 Spark SQL支援的多種資料來源
6.1 概述
6.2 典型結構化資料來源

第三部分 實作篇
7 Spark SQL 工程實戰之以WiFi探針為基礎的商業大數據分析技術
7.1 功能需求
7.2 系統架構
7.3 功能設計
7.4 資料庫結構
7.5 本章小結
8 第一個Spark SQL應用程式
8.1 完全分散式環境架設
8.2 資料清洗
8.3 資料處理流程
8.4 Spark程式遠端偵錯
8.5 Spark的Web介面
8.6 本章小結

第四部分 最佳化篇
9 讓Spark程式再快一點
9.1 Spark執行流程
9.2 Spark記憶體簡介
9.3 Spark的一些概念
9.4 Spark程式設計四大守則
9.5 Spark最佳化七式
9.6 解決資料傾斜問題
9.7 Spark 執行引擎Tungsten 簡介
9.8 Spark SQL解析引擎Catalyst 簡介
9.9 本章小結

序/導讀

前言

我們處於一個資料爆炸的時代!

大量湧現的智慧型手機、平板、可穿戴裝置及物聯網裝置每時每刻都在產生新的資料,然而帶來革命性變革的並非巨量資料本身,而是我們如何從這些資料中採擷到有價值的資訊,來輔助我們做出更加智慧的決策。我們知道,在生產環境下,所謂的大數據常常是由數千萬筆、上億筆具有多個預先定義欄位的資料單元組成的資料集,是不是很像傳統關聯式資料庫的二維資料表呢?那麼我們是否也能找到一個像SQL 查詢那樣簡便的工具來高效率地分析處理大數據領域中的巨量結構化資料呢?沒錯,這個工具就是Spark SQL。

Spark SQL 是Spark 用來操作結構化資料的進階模組,在程式中透過引用SparkSQL 模組,我們便可以像從前在關聯式資料庫利用SQL(結構化查詢語言)分析關聯式資料庫表一樣簡單快速地在Spark 大數據分析平台上對巨量結構化資料進行快速分析,而Spark 平台隱藏了底層分散式儲存、計算、通訊的細節以及作業解析、排程的細節,使開發者僅需關注如何利用SQL 進行資料分析的程式邏輯就可以方便地操控叢集來分析我們的資料。

本書內容

礎篇、實作篇、最佳化篇,所有程式均採用簡潔而優雅的Scala 語言撰寫,Spark 架構也是使用Scala 語言撰寫的。

第一部分 入門篇(第1、2 章)

第1 章簡介Spark 的誕生、Spark SQL 的發展歷史以及Spark SQL 的用處等內容,讓讀者快速了解Spark SQL 背景知識,為以後的學習奠定基礎。

第2 章透過說明Spark SQL 開發環境的架設、Spark 作業的包裝傳送、常見問題的解答,並結合大量圖示,讓讀者快速掌握開發環境的架設以及傳送應用程式到叢集上,為後面章節的學習奠定堅實的基礎。

第二部分 基礎篇(第3、4、5、6 章)

第3 章是真正開始學習Spark SQL 必要的先修課,詳盡地介紹Spark 架構對資料的核心抽象--RDD(彈性分散式資料集)的各方面。先介紹與RDD 相關的基本概念,例如轉化操作、行動操作、惰性求值、快取,說明的過程伴隨著豐富的範例,加強讀者對RDD 的了解與RDD 程式設計基礎。在說明RDD 中基礎內容的同時,又深入地剖析了疑點、困難,例如RDD Lineage(RDD 相依關係圖)、向Spark 傳遞函數、對閉包的了解等。在之前對基本類型RDD 的學習基礎上,又引用了對特殊類別RDD-- 鍵值對RDD 的大致介紹,在鍵值對RDD介紹中對combineByKey 操作的說明,深入地從程式實現的角度洞悉了Spark分散式運算的實質,幫助對RDD 具有濃厚興趣的讀者做進一步的擴充。最後,站在RDD 設計者的角度重新檢查RDD 快取、持久化、checkpoint 機制,進一步詮釋RDD 為什麼能夠極佳地適應大數據分析業務的特點,有天然強大的容錯性、易恢復性和高效性。

第4 章對Spark 進階模組--Spark SQL, 也就是本書的主題, 進行簡明扼要的概述,並說明對應的Spark SQL 程式設計基礎。先是透過與前一章所學的Spark 對資料的核心抽象--RDD 的比較,引出Spark SQL 中核心的資料抽象--DataFrame,說明兩者的異同,點明Spark SQL 是針對結構化資料處理的進階模組的原因,在於其內建豐富結構資訊的資料抽象。後一部分透過豐富的範例說明如何利用Spark SQL 模組來程式設計的主要步驟,舉例來說,從結構化資料來源中建立DataFrames、DataFrames 基本操作以及執行SQL 查詢等。

第5、6 章屬於Spark SQL 程式設計的進階內容,也是我們將Spark SQL 應用於生產、科學研究計算環境下,真正開始分析多類別資料來源、實現各種複雜業務需求必須要掌握的知識。第5 章,以包含簡單且典型的學生資訊表的JSON 檔案作為資料來源,深入對DataFrame 豐富強大的API 進行研究,以操作說明加範例的形式涵蓋DataFrame 中每一個常用的行動、轉化操作,進而幫助讀者輕鬆高效率地組合使用DataFrame 所提供的API 來實現業務需求。第6章,介紹Spark SQL 可處理的各種資料來源,包含Hive 表、JSON 和Parquet檔案等,從廣度上讓讀者了解Spark SQL 在大數據領域對典型結構化資料來源的皆可處理性,進一步讓讀者真正在工作中掌握一種結構化資料的分析利器。

第三部分 實作篇(第7、8 章)

第7 章透過說明大型商業實例專案(以WiFi 探針為基礎的商業大數據分析技術)的功能需求、系統架構、功能設計、資料庫結構,幫助讀者了解如何在實際開發中應用Spark SQL 處理結構化資料,加強讀者的工程思維,同時為第8章的學習做好準備。

第8 章透過說明分散式環境架設以及專案程式的解析,幫助讀者進一步了解Spark SQL 應用程式的執行過程,在後一部分介紹Spark SQL 程式的遠端偵錯方法和Spark 的Web 介面,幫助讀者更加方便地了解程式的執行狀態。

第四部分 最佳化篇(第9 章)

最佳化篇由第9 章組成,本篇從Spark 的執行流程到記憶體以及工作的劃分,再到Spark 應用程式的撰寫技巧,接著到Spark 本身的最佳化,最後引出資料傾斜的解決想法,層層遞進,逐步解析Spark 的最佳化思想。最後,以對Spark 執行引擎Tungsten 與Spark SQL 的解析引擎Catalyst 的介紹作為本部分的結尾。筆者將在本篇中帶領讀者掌握Spark 的最佳化方式以及思想,讓Spark 程式再快一點。
  
繁體中文版注意事項

為維持原作者內容,本書部分畫面會保留原作者之簡體中文介面,請讀者自行參照內文對照。
  
本書適合讀者

本書適合於學習資料採擷、有巨量結構化資料分析需求的大數據從業者及同好閱讀,也可以作為大專院校相關科系的教材。建議在學習本書內容的過程中,理論結合實務,獨立進行一些程式的撰寫,採取開放式的實驗方法,即讀者自行準備實驗資料和實驗環境,解決實際問題,最後達到理論結合實務的目的。

本書在寫作過程中獲得家人以及編輯的大力支持,在此對他們一併表示感謝。本書由紀涵(負責基礎篇的撰寫)主筆,其他參與著作的還有靖曉文(負責實作篇的撰寫)、趙政達(負責入門篇、最佳化篇的撰寫),排名不分先後。

詳細資料

詳細資料

    • 編/譯者
    • 語言
    • 中文繁體
    • 規格
    • 平裝
    • ISBN
    • 9789863797814
    • 分級
    • 普通級
    • 開數
    • 18開17*23cm
    • 頁數
    • 272
    • 出版地
    • 台灣
    • 適讀年齡

訂購須知

下載『金石堂APP』並開啟推播設定,隨時掌握出貨動態:

Google play
App Store

    商品運送說明:

  • 本公司所提供的產品配送區域範圍目前僅限台灣本島。注意!收件地址請勿為郵政信箱。
  • 商品將由廠商透過貨運或是郵局寄送。消費者訂購之商品若無法送達,經電話或 E-mail無法聯繫逾三天者,本公司將取消該筆訂單,並且全額退款。
  • 當廠商出貨後,您會收到E-mail及APP出貨通知,您也可透過【訂單查詢】確認出貨情況。
  • 建議您可下載『金石堂APP』並開啟推播設定,即可收到出貨通知。
  • 產品顏色可能會因網頁呈現與拍攝關係產生色差,圖片僅供參考,商品依實際供貨樣式為準。
  • 如果是大型商品(如:傢俱、床墊、家電、運動器材等)及需安裝商品,請依商品頁面說明為主。訂單完成收款確認後,出貨廠商將會和您聯繫確認相關配送等細節。
  • 偏遠地區、樓層費及其它加價費用,皆由廠商於約定配送時一併告知,廠商將保留出貨與否的權利。

提醒您!!
金石堂及銀行均不會請您操作ATM! 如接獲電話要求您前往ATM提款機,請不要聽從指示,以免受騙上當!

退換貨須知

  • 依據「消費者保護法」第19條及行政院消費者保護處公告之「通訊交易解除權合理例外情事適用準則」,以下商品購買後,除商品本身有瑕疵外,將不提供7天的猶豫期:
    1. 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮食品)
    2. 依消費者要求所為之客製化給付。(客製化商品)
    3. 報紙、期刊或雜誌。(含MOOK、外文雜誌)
    4. 經消費者拆封之影音商品或電腦軟體。
    5. 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書、電子雜誌、下載版軟體、虛擬商品…等)
    6. 已拆封之個人衛生用品。(如:內衣褲、刮鬍刀、除毛刀…等)
  • 若非上列種類商品,均享有到貨7天的猶豫期(含例假日)。
  • 辦理退換貨時,商品(組合商品恕無法接受單獨退貨)必須是您收到商品時的原始狀態(包含商品本體、配件、贈品、保證書、所有附隨資料文件及原廠內外包裝…等),請勿直接使用原廠包裝寄送,或於原廠包裝上黏貼紙張或書寫文字。
  • 退回商品若無法回復原狀,將請您負擔回復原狀所需費用,嚴重時將影響您的退貨權益。
預計 2019/11/13 出貨 參考庫存量:5 查詢門市庫存?

31