精通 Spark 數據科學
[美]安德魯·摩根(Andrew Morgan)
- 出版商: 人民郵電
- 出版日期: 2020-09-01
- 定價: $654
- 售價: 8.5 折 $556
- 語言: 簡體中文
- 頁數: 430
- ISBN: 7115541566
- ISBN-13: 9787115541567
-
相關分類:
Spark、Data Science
- 此書翻譯自: Mastering Spark for Data Science
立即出貨 (庫存=1)
買這商品的人也買了...
-
$280$252 -
$530$477 -
$580$568 -
$301構建實時機器學習系統
-
$534$507 -
$880$695 -
$600$468 -
$301PySpark 機器學習、自然語言處理與推薦系統 (Machine Learning with PySpark: With Natural Language Processing and Recommender Systems)
-
$980$774 -
$454超大流量分佈式系統架構解決方案:人人都是架構師2.0
-
$374$356 -
$780$702 -
$780$663 -
$680$537 -
$403基於完全互補序列的 MIMO 雷達與 5G MIMO 通信
-
$550$435 -
$680$612 -
$980$774 -
$680$530 -
$600$468 -
$1,200$1,020 -
$680$537 -
$980$774 -
$7045G 通道編解碼:算法與實現
相關主題
商品描述
Apache Spark是專為大規模數據處理而設計的快速通用的計算引擎。這是一本專門介紹Spark的圖書,旨在教會讀者利用Spark構建實用的數據科學解決方案。
本書內容包括14章,由淺入深地介紹了數據科學生態系統、數據獲取、輸入格式與模式、探索性數據分析、利用Spark進行地理分析、採集基於鏈接的外部數據、構建社區、構建推薦系統、新聞詞典和實時標記系統、故事除重和變遷、情感分析中的異常檢測、趨勢演算、數據保護和可擴展算法。
本書適合數據科學家以及對數據科學、機器學習感興趣的讀者閱讀,需要讀者具備數據科學相關的基礎知識,並通過閱讀本書進一步提升Spark運用能力,從而創建出高效且實用的數據科學解決方案。
作者簡介
安德鲁·摩根(Andrew Morgan)是数据战略及其执行方面的专家,在支持技术、系统架构和实现数据科学方面拥有丰富的经验。他在数据行业拥有20多年的经验,曾为一些久负盛名的公司及其全球客户设计系统——通常是大型、复杂和国际性的项目。2013年,他创办了数据科学和大数据工程咨询公司ByteSumo,目前在与欧洲和美国的客户进行合作。Andrew是一位活跃的数据科学家,也是趋势演算(TrendCalculus)算法的发明者。该算法是他为自己的研究项目而开发的,该项目旨在研究基于机器学习的长期预测,这些预测可以在不断变化的文化、地缘政治和经济趋势中发现规律。他还是Hadoop Summit EU数据科学委员会的成员,并在许多会议上就各种数据主题发表过演讲。他也活跃于他的居住地伦敦的数据科学和大数据社区。
安托万·阿门德(Antoine Amend)是一位对大数据工程和可扩展计算充满热情的数据科学家。这本书的主题是“折腾”天文数字量级的非结构化数据以获得新的见解,这主要源于Antoine的理论物理学背景。他于2008年毕业并获得天体物理学硕士学位。在Hadoop的早期阶段,在大数据的概念普及之前,他曾在瑞士的一家大型咨询公司工作。从那时起,他就开始接触大数据技术。现在他在巴克莱银行担任网络安全数据科学部门的主管。通过将科学方法与核心IT技能相结合,Antoine连续两年获得了在得克萨斯州奥斯汀举行的大数据世界锦标赛决赛资格。他在2014年和2015年都名列前12位(超过2 000多名竞争对手),这两次比赛中他还使用了本书介绍的方法和技术赢得了创新奖。
大卫·乔治(David George)是一位杰出的分布式计算专家,拥有超过15年的数据系统从业经验,主要服务于全球闻名的IT咨询机构和品牌。他很早以前就开始使用Hadoop核心技术,并做过大规模的实施。David总是采用务实的方法进行软件设计,并重视简约中的优雅。
如今,他继续作为首席工程师为金融行业客户设计可扩展的应用,并满足一些较为严苛的需求。他的新项目侧重于采用先进的人工智能技术来提高知识产业的自动化水平。
马修·哈利特(Matthew Hallett)是一名软件工程师和计算机科学家,拥有超过15年的从业经验。他是一名面向对象的“专家级程序员”和系统工程师,拥有丰富的底层编程范式知识。在过去的几年里,他在Hadoop和关键业务环境中的分布式编程方面积累了丰富的专业知识,这些环境由数千节点的数据中心组成。Matthew在分布式算法和分布式计算体系结构的实施方面拥有多种语言的咨询经验,目前是“四大审计公司”数据科学与工程团队的数据工程师顾问。
目錄大綱
第 1章 數據科學生態系統 1
1.1 大數據生態系統簡介 1
1.1.1 數據管理 2
1.1.2 數據管理職責 2
1.1.3 合適的工具 4
1.2 數據架構 4
1.2.1 數據採集 5
1.2.2 數據湖 6
1.2.3 數據科學平臺 7
1.2.4 數據訪問 8
1.3 數據處理技術 8
1.4 配套工具 10
1.4.1 Apache HDFS 10
1.4.2 亞馬遜S3 12
1.4.3 Apache Kafka 13
1.4.4 Apache Parquet 14
1.4.5 Apache Avro 15
1.4.6 Apache NiFi 16
1.4.7 Apache YARN 17
1.4.8 Apache Lucene 18
1.4.9 Kibana 19
1.4.10 Elasticsearch 20
1.4.11 Accumulo 21
1.5 小結 22
第 2章 數據獲取 23
2.1 數據管道 23
2.1.1 通用採集框架 24
2.1.2 GDELT數據集簡介 25
2.2 內容登記 32
2.2.1 選擇和更多選擇 32
2.2.2 隨流而行 32
2.2.3 元數據模型 33
2.2.4 Kibana儀表盤 35
2.3 質量保證 36
2.3.1 案例1——基本質量檢查,無爭用用戶 36
2.3.2 案例2——進階質量檢查,無爭用用戶 36
2.3.3 案例3——基本質量檢查,50%使用率爭用用戶 37
2.4 小結 37
第3章 輸入格式與模式 39
3.1 結構化的生活是美好的生活 40
3.2 GDELT維度建模 40
3.3 加載數據 48
3.3.1 模式敏捷性 49
3.3.2 GKG ELT 51
3.4 Avro 54
3.4.1 Spark-Avro方法 55
3.4.2 教學方法 57
3.4.3 何時執行Avro轉換 61
3.5 Apache Parquet 62
3.6 小結 63
第4章 探索性數據分析 64
4.1 問題、原則與規劃 65
4.1.1 理解EDA問題 65
4.1.2 設計原則 65
4.1.3 探索的總計劃 66
4.2 準備工作 67
4.2.1 基於掩碼的數據剖析簡介 67
4.2.2 字符類掩碼簡介 71
4.2.3 構建基於掩碼的剖析器 73
4.3 探索GDELT 86
4.4 小結 107
第5章 利用Spark進行地理分析 108
5.1 GDELT和石油 108
5.1.1 GDELT事件 109
5.1.2 GDELT GKG 110
5.2 制訂行動計劃 110
5.3 GeoMesa 111
5.3.1 安裝 112
5.3.2 GDELT採集 112
5.3.3 GeoMesa採集 113
5.3.4 GeoHash 117
5.3.5 GeoServer 120
5.4 計量油價 123
5.4.1 使用GeoMesa查詢API 123
5.4.2 數據準備 125
5.4.3 機器學習 130
5.4.4 樸素貝葉斯 131
5.4.5 結果 132
5.4.6 分析 133
5.5 小結 134
第6章 採集基於鏈接的外部數據 135
6.1 構建一個大規模的新聞掃描器 135
6.1.1 訪問Web內容 136
6.1.2 與Spark集成 138
6.1.3 創建可擴展的生產準備庫 139
6.2 命名實體識別 142
6.2.1 Scala庫 143
6.2.2 NLP攻略 143
6.2.3 構建可擴展代碼 146
6.3 GIS查詢 148
6.3.1 GeoNames數據集 148
6.3.2 構建高效的連接 149
6.3.3 內容除重 153
6.4 名字除重 154
6.4.1 用Scalaz進行函數式編程 155
6.4.2 簡單清洗 158
6.4.3 DoubleMetaphone算法 158
6.5 新聞索引儀表板 160
6.6 小結 162
第7章 構建社區 163
7.1 構建一個人物圖譜 163
7.1.1 聯系鏈 164
7.1.2 從Elasticsearch中提取數據 166
7.2 使用Accumulo數據庫 168
7.2.1 設置Accumulo 168
7.2.2 單元級安全 169
7.2.3 迭代器 170
7.2.4 從Elasticsearch到Accumulo 170
7.2.5 從Accumulo讀取 173
7.2.6 AccumuloGraphxInputFormat和EdgeWritable 175
7.2.7 構建圖 175
7.3 社區發現算法 177
7.3.1 Louvain算法 177
7.3.2 加權社區聚類 178
7.4 GDELT數據集 193
7.4.1 Bowie 效應 194
7.4.2 較小的社區 195
7.4.3 使用Accumulo單元級的安全性 196
7.5 小結 197
第8章 構建推薦系統 198
8.1 不同的方法 198
8.1.1 協同過濾 199
8.1.2 基於內容的過濾 199
8.1.3 自定義的方法 199
8.2 信息不完整的數據 200
8.2.1 處理字節 200
8.2.2 創建可擴展的代碼 203
8.2.3 從時域到頻域 204
8.3 構建歌曲分析器 209
8.4 構建一個推薦系統 214
8.4.1 PageRank算法 214
8.4.2 構建個性化的播放列表 217
8.5 擴大“蛋糕廠”規模 217
8.5.1 構建播放列表服務 217
8.5.2 應用Spark任務服務器 219
8.5.3 用戶界面 223
8.6 小結 224
第9章 新聞詞典和實時標記系統 226
9.1 土耳其機器人 226
9.1.1 人類智能任務 227
9.1.2 引導分類模型 227
9.1.3 懶惰、急躁、傲慢 233
9.2 設計Spark Streaming應用 234
9.2.1 兩個架構的故事 234
9.2.2 Lambda架構的價值 237
9.2.3 Kappa架構的價值 239
9.3 消費數據流 240
9.3.1 創建GDELT數據流 240
9.3.2 創建Twitter數據流 242
9.4 處理Twitter數據 243
9.4.1 提取URL和主題標簽 244
9.4.2 保存流行的主題標簽 245
9.4.3 擴展縮短的URL 246
9.5 獲取HTML內容 248
9.6 使用Elasticsearch作為緩存層 249
9.7 分類數據 252
9.7.1 訓練樸素貝葉斯模型 253
9.7.2 確保線程安全 254
9.7.3 預測GDELT數據 255
9.8 Twitter土耳其機器人 256
9.9 小結 258
第 10章 故事除重和變遷 260
10.1 檢測近似重復 260
10.1.1 從散列開始第 一步 262
10.1.2 站在“互聯網巨人”的肩膀上 263
10.1.3 檢測GDELT中的近似重復 266
10.1.4 索引GDELT數據庫 271
10.2 構建故事 275
10.2.1 構建詞頻向量 275
10.2.2 維度災難,數據科學之痛 277
10.2.3 優化KMeans 278
10.3 故事變遷 281
10.3.1 平衡態 281
10.3.2 隨時間追蹤故事 283
10.3.3 構建故事的關聯 290
10.4 小結 294
第 11章 情感分析中的異常檢測 295
11.1 在Twitter上追蹤美國大選 296
11.1.1 流式獲取數據 296
11.1.2 成批獲取數據 297
11.2 情感分析 300
11.2.1 格式化處理Twitter數據 300
11.2.2 使用斯坦福NLP 302
11.2.3 建立管道 304
11.3 使用Timely作為時間序列數據庫 306
11.3.1 存儲數據 306
11.3.2 使用Grafana可視化情感 309
11.4 Twitter與戈德溫(Godwin)點 311
11.4.1 學習環境 311
11.4.2 對模型進行可視化 314
11.4.3 Word2Graph和戈德溫點 315
11.5 進入檢測諷刺的一小步 320
11.5.1 構建特徵 320
11.5.2 檢測異常 324
11.6 小結 325
第 12章 趨勢演算 326
12.1 研究趨勢 327
12.2 趨勢演算算法 328
12.2.1 趨勢窗口 328
12.2.2 簡單趨勢 331
12.2.3 用戶定義聚合函數 332
12.2.4 簡單趨勢計算 337
12.2.5 反轉規則 339
12.2.6 FHLS條狀圖介紹 341
12.2.7 可視化數據 343
12.3 實際應用 351
12.3.1 算法特性 352
12.3.2 潛在的用例 352
12.4 小結 353
第 13章 數據保護 354
13.1 數據安全性 354
13.1.1 存在的問題 355
13.1.2 基本操作 355
13.2 認證和授權 356
13.3 訪問 358
13.4 加密 359
13.4.1 數據處於靜態時 359
13.4.2 數據處於傳輸時 368
13.4.3 混淆/匿名 369
13.4.4 遮罩 372
13.4.5 令牌化 375
13.5 數據處置 377
13.6 Kerberos認證 378
13.6.1 用例1:Apache Spark在受保護的HDFS中訪問數據 379
13.6.2 用例2:擴展到自動身份驗證 381
13.6.3 用例3:從Spark連接到安全數據庫 381
13.7 安全生態 383
13.7.1 Apache Sentry 383
13.7.2 RecordService 384
13.8 安全責任 385
13.9 小結 386
第 14章 可擴展算法 387
14.1 基本原則 387
14.2 Spark架構 390
14.2.1 Spark的歷史 390
14.2.2 動態組件 391
14.3 挑戰 395
14.3.1 算法復雜性 395
14.3.2 數值異常 395
14.3.3 洗牌 398
14.3.4 數據模式 398
14.4 規劃你的路線 399
14.5 設計模式和技術 409
14.5.1 Spark API 410
14.5.2 摘要模式 411
14.5.3 擴展並解決模式 411
14.5.4 輕量級洗牌 412
14.5.5 寬表模式 414
14.5.6 廣播變量模式 415
14.5.7 組合器模式 416
14.5.8 集群優化 420
14.5.9 再分配模式 422
14.5.10 加鹽鍵模式 423
14.5.11 二次排序模式 424
14.5.12 過濾過度模式 426
14.5.13 概率算法 426
14.5.14 選擇性緩存 427
14.5.15 垃圾回收 428
14.5.16 圖遍歷 429
14.6 小結 430