前言
前 言 幾年之內,雲計算已從新興技術發展成為當今的熱點技術。從2003年穀歌公開發布的核心檔案到2006年Amazon EC2(亞馬遜彈性計算雲)的商業化套用,再到美國電信巨頭AT&T(美國電話電報公司)推出的Synaptic Hosting(動態託管)服務,雲計算從節約成本的工具到盈利的推動器,從ISP(網路服務提供商)到電信企業,已經成功地從內置的IT 系統演變成公共的服務。
內容簡介
通俗地闡述了什麼是雲,什麼是大數據,雲與大數據有什麼關係;介紹了相關的各項技術,以及在商業中怎樣套用大數據。 本書系統性強,表述清晰,能將概念闡釋和技術套用很好地融合。 本書以雲計算為基石,從概念、研究、套用角度出發,系統地介紹了數據爆炸時代下的大數據。首先介紹了雲計算及大數據的基礎知識,讓讀者對雲計算及大數據有概要認識;然後根據需要介紹了Hadoop軟體下的MapReduce、HDFS及HBase這幾個組件;接著全面、系統地介紹了雲時代下的大數據,主要包括大數據的連結、聚類、項集、系統、相似項挖掘及數據量化等內容,讓讀者挖掘雲時代大數據體系下的效益、價值及研究方向。【作者簡介】 周品,西北工業大學研究生畢業後,一直從事計算機方面科研與教學工作。廣東省計算機協會會員。校優秀教師,自然科學優秀學術著作(佛山)。著作方向:計算機套用技術,MATLAB。
作者簡介
周品,西北工業大學研究生畢業後,一直從事計算機方面科研與教學工作。廣東省計算機協會會員。校優秀教師,自然科學優秀學術著作(佛山)。著作方向:計算機套用技術,MATLAB。
目 錄
第1章 雲時代概述 (1)
1.1 “雲”概述 (1)
1.1.1 什麼是雲計算 (2)
1.1.2 給雲計算一個說法 (3)
1.1.3 雲計算的使用範圍 (3)
1.1.4 雲計算與一般託管環境的差別 (4)
1.2 雲產生的背景 (4)
1.2.1 經濟方面 (4)
1.2.2 社會層面 (5)
1.2.3 政治層面 (6)
1.2.4 技術方面 (6)
1.3 雲計算特點 (7)
1.4 雲時代的七大益處 (8)
1.5 雲計算與其他超級計算的區別 (11)
1.5.1 雲計算與格線計算的區別 (11)
1.5.2 雲計算系統與傳統超級計算機的區別 (12)
1.6 雲計算的關鍵性技術 (12)
1.6.1 虛擬化 (12)
1.6.2 分散式檔案系統 (14)
1.6.3 分散式資料庫 (15)
1.6.4 資源管理技術 (15)
1.6.5 能耗管理技術 (16)
1.7 雲計算基礎 (18)
1.7.1 雲計算的定義 (18)
1.7.2 雲計算的特徵 (19)
1.7.3 交付模式 (19)
1.7.4 部署模式 (21)
1.7.5 新的套用機遇 (23)
1.8 從傳統IT到雲 (23)
1.9 雲計算的研究進展 (27)
1.10 雲計算的生成系統 (28)
1.11 雲計算時代對就業的影響 (29)
1.12 大數據中的雲 (30)
第2章 大數據概述 (33)
2.1 大數據概念 (33)
2.1.1 大數據的套用 (33)
2.1.2 大數據的戰略意義 (34)
2.1.3 大數據的作用 (34)
2.1.4 大數據與傳統資料庫 (34)
2.1.5 大數據與Web (34)
2.2 大數據的理解與實踐 (35)
2.2.1 理解大數據 (35)
2.2.2 實踐大數據 (36)
2.3 大數據的發展趨勢 (36)
2.3.1 大數據對社會的影響 (36)
2.3.2 雲平台數據更加完善 (38)
2.4 大數據的挑戰、現狀與展望 (38)
2.4.1 概述 (38)
2.4.2 期望特性 (40)
2.4.3 並行資料庫 (42)
2.4.4 MapReduce (43)
2.4.5 並行資料庫和MapReduce的混合架構 (47)
2.4.6 研究現狀 (49)
2.4.7 MapReduce與關係資料庫技術的融合 (50)
2.4.8 展望研究 (52)
2.5 大數據行業套用及未來熱點 (53)
2.5.1 分析大數據市場 (53)
2.5.2 分析大數據套用需求 (53)
2.6 大數據2012年回顧 (54)
2.6.1 2012年大數據新特徵 (54)
2.6.2 進軍大數據 (55)
2.6.3 新興企業不斷湧現 (56)
2.7 大數據引導IT支出 (56)
2.8 數據將變得更加重要 (57)
2.9 盤點全球13個大數據公司 (59)
第3章 數據挖掘 (65)
3.1 數據挖掘的定義 (65)
3.1.1 技術上的定義及含義 (65)
3.1.2 商業角度的定義 (66)
3.2 數據挖掘概述 (66)
3.2.1 數據挖掘的起源 (66)
3.2.2 數據挖掘方法論 (67)
3.2.3 數據挖掘常用方法 (69)
3.2.4 數據挖掘的實現步驟 (71)
3.2.5 數據挖掘的功能 (71)
3.2.6 數據挖掘常用技術 (72)
3.2.7 數據挖掘與傳統分析方法的異同 (78)
3.2.8 數據挖掘和數據倉庫 (78)
3.2.9 數據挖掘的套用 (79)
3.3 數據挖掘相關知識 (80)
3.3.1 詞語的重要性 (81)
3.3.2 哈希函式 (82)
3.3.3 索引 (84)
3.3.4 二維存儲器 (85)
3.3.5 自然對數的底e (85)
3.3.6 冪定律 (86)
第4章 數據量化 (87)
4.1 量化分析簡介 (87)
4.2 規劃優質量化分析 (91)
4.2.1 量化分析開發規劃的構成 (91)
4.2.2 文檔 (95)
4.3 答案綱要 (96)
4.4 三角交叉法 (103)
4.5 高級量化分析 (105)
4.5.1 其他象限 (106)
4.5.2 量化分析未成熟組織的益處 (106)
4.5.3 重複業務流程 (107)
4.5.4 其他象限的量化分析 (107)
4.6 創建服務目錄 (110)
4.7 構建標準和基準 (113)
4.8 量化數據談投資 (114)
第5章 大規模檔案系統MapReduce (115)
5.1 分散式檔案系統 (115)
5.1.1 NFS和AFS的區別 (118)
5.1.2 計算節點的物理結構 (118)
5.2 MapReduce模型 (119)
5.2.1 Map任務 (120)
5.2.2 分組與聚合 (120)
5.2.3 Reduce任務 (120)
5.3 MapReduce使用算法 (123)
5.3.1 向量乘法實現 (123)
5.3.2 記憶體處理 (123)
5.3.3 關係運算 (124)
5.3.4 分布檔案系統實例 (128)
5.4 MapReduce複合鍵值對的使用 (138)
5.4.1 合併鍵值 (138)
5.4.2 用複合鍵排序 (139)
5.5 連結MapReduce作業 (142)
5.5.1 順序連結MapReduce作業 (142)
5.5.2 複雜的MapReduce連結 (143)
5.5.3 前後處理的連結 (143)
5.5.4 連結不同的數據 (145)
5.6 MapReduce遞歸擴展 (152)
5.7 集群計算算法的效率問題 (154)
5.7.1 集群計算的通信開銷模型 (154)
5.7.2 多路連線 (155)
第6章 相似項挖掘 (157)
6.1 近鄰搜尋的套用 (157)
6.1.1 Jaccard相似度 (157)
6.1.2 文檔相似度 (157)
6.2 文檔的shingling算法 (162)
6.2.1 k-shingle (162)
6.2.2 大小選擇 (163)
6.2.3 對shingle進行哈希 (163)
6.3 最小哈希 (164)
6.3.1 矩陣表示集合 (164)
6.3.2 最小哈希概述 (164)
6.3.3 Jaccard相似度 (165)
6.3.4 最小哈希簽名 (165)
6.3.5 簽名計算 (166)
6.4 語音文檔局部敏感哈希算法 (168)
6.4.1 局部敏感哈希概述 (168)
6.4.2 行條化策略的分析 (172)
6.5 距離測試 (174)
6.5.1 距離測度的定義 (174)
6.5.2 歐氏距離 (174)
6.5.3 Jaccard距離 (175)
6.5.4 餘弦距離 (175)
6.5.5 編輯距離 (176)
6.5.6 海明距離 (177)
6.6 其他距離測度的LSH函式族 (178)
6.6.1 海明距離的LSH函式族 (178)
6.6.2 隨機超平面與餘弦距離 (179)
6.6.3 歐氏距離的LSH函式族 (180)
6.7 LSH函式的套用 (181)
6.7.1 實體關聯 (181)
6.7.2 指紋匹配 (183)
6.7.3 論文相似性檢測服務 (185)
6.8 高相似度方法 (186)
6.8.1 相等項發現 (186)
6.8.2 集合字串表示法 (187)
6.8.3 長度過濾 (187)
6.8.4 前綴索引 (188)
6.8.5 位置信息使用 (188)
6.8.6 使用位置和長度信息的索引 (190)
第7章 HDFS存儲海量數據 (192)
7.1 HDFS簡介 (192)
7.1.1 HDFS的特點 (192)
7.1.2 HDFS的設計需求 (193)
7.1.3 HDFS體系結構 (195)
7.1.4 HDFS的可靠性措施 (196)
7.1.5 數據均衡 (200)
7.2 HDFS存取機制 (200)
7.3 圖像存儲 (202)
7.3.1 圖像存儲基本思想 (202)
7.3.2 圖像存儲設計目標 (202)
7.3.3 圖像存儲體系結構 (203)
7.3.4 系統功能結構 (204)
7.4 HDFS管理操作 (205)
7.4.1 許可權管理 (205)
7.4.2 配額管理 (207)
7.4.3 檔案歸檔 (207)
7.5 FS Shell使用指南 (208)
7.6 API使用 (214)
7.7 HDFS的缺點 (216)
7.8 HDFS存儲海量數據 (217)
第8章 HBase存儲百科數據 (219)
8.1 HBase的系統框架 (219)
8.2 HBase基本特徵 (222)
8.2.1 RDBMS與HBase (222)
8.2.2 NoSQL資料庫 (223)
8.2.3 HBase的特點 (225)
8.3 HBase的基本接口 (226)
8.3.1 HBase訪問接口 (226)
8.3.2 HBase的存儲格式 (227)
8.3.3 HBase的讀寫流程 (227)
8.4 模組總體設計 (228)
8.4.1 資料庫模組總體設計 (228)
8.4.2 模組詳細設計 (229)
8.4.3 資料庫模組互動設計 (233)
8.5 HBase數據模型 (234)
8.6 HBase的安裝與配置 (238)
8.7 HBase實例分析 (240)
8.7.1 HBase的HFileOutputFormat (240)
8.7.2 HBase的TableOutputFormat (243)
第9章 大數據連結分析 (247)
9.1 連結分析中的數據採集研究 (247)
9.1.1 連結分析概述 (247)
9.1.2 相關研究 (248)
9.1.3 系統功能設計 (249)
9.1.4 實驗 (251)
9.1.5 結論 (252)
9.2 PageRank工具 (252)
9.2.1 PageRank概述 (253)
9.2.2 PageRank定義 (253)
9.2.3 相關算法 (255)
9.2.4 避免終止點 (256)
9.2.5 採集器陷阱及“抽稅”法 (258)
9.2.6 影響PageRank的因素 (259)
9.3 PageRank算法 (259)
9.4 搜尋引擎研究 (262)
9.4.1 搜尋引擎未來的發展方向 (262)
9.4.2 通用型搜尋引擎 (264)
9.4.3 主題型搜尋引擎 (268)
9.4.4 性能指標 (270)
9.5 連結作弊 (270)
9.5.1 垃圾農場的架構 (270)
9.5.2 垃圾農場的分析 (271)
9.5.3 TrustRank (272)
9.5.4 垃圾質量 (273)
9.6 導航頁和權威頁 (273)
第10章 聚類 (276)
10.1 聚類概述 (276)
10.1.1 聚類的典型套用 (276)
10.1.2 聚類的典型要求 (276)
10.1.3 聚類的計算方法 (277)
10.1.4 聚類分析的特徵 (278)
10.2 聚類技術 (279)
10.2.1 點、空間和距離 (279)
10.2.2 維數災難 (279)
10.3 層次聚類 (280)
10.3.1 歐氏空間下的層次聚類 (281)
10.3.2 控制層次聚類的其他規則 (284)
10.3.3 非歐空間下的層次聚類 (284)
10.4 K-均值算法 (285)
10.4.1 K-均值算法的簇初始化 (285)
10.4.2 K值的選擇 (286)
10.4.3 BFR算法 (287)
10.4.4 BFR算法中的數據處理 (288)
10.5 CURE算法 (290)
10.5.1 CURE算法流程 (290)
10.5.2 CURE算法設計 (290)
10.5.3 數據取樣算法 (293)
10.6 流聚類及並行化 (293)
10.6.1 流計算模型 (294)
10.6.2 二次聚類算法 (294)
10.7 非歐空間下的聚類 (297)
10.7.1 GRGPF算法的簇表示 (297)
10.7.2 簇樹的初始化 (297)
10.7.3 算法中加入點 (298)
10.7.4 分裂與合併 (299)
第11章 項集與系統 (301)
11.1 項集與系統概述 (301)
11.2 項集 (302)
11.2.1 規則 (303)
11.2.2 記憶體使用 (304)
11.2.3 單調性 (305)
11.2.4 二元組計數 (305)
11.2.5 A-Priori算法 (306)
11.2.6 頻繁項集上的A-Priori算法 (307)
11.3 更大數據集處理 (308)
11.3.1 PCY算法 (309)
11.3.2 多階段算法 (310)
11.3.3 多哈希算法 (311)
11.4 有限掃描算法 (312)
11.4.1 隨機算法 (312)
11.4.2 SON算法 (313)
11.4.3 MapReduce算法 (313)
11.4.4 Toivonen算法 (314)
11.5 流中的頻繁項 (315)
11.5.1 抽樣法 (315)
11.5.2 衰減視窗的頻繁項集 (316)
11.5.3 混合方法 (316)
11.6 推薦模型系統 (317)
11.6.1 效用矩陣 (317)
11.6.2 長尾現象 (317)
11.6.3 效用矩陣的填充 (318)
11.7 內容的推薦 (318)
11.7.1 項模型 (319)
11.7.2 項模型的表示 (319)
11.7.3 分類算法 (320)
11.8 協同過濾 (321)
11.8.1 協同過濾的優缺點 (321)
11.8.2 協同過濾案例 (321)
11.9 降維處理 (322)
11.9.1 基於中心流形理論的降維方法 (322)
11.9.2 Lyapunov-Schmidt(L-S)方法 (323)
11.9.3 Galerkin方法 (324)
11.9.4 正交分解技術的降維方法 (327)
11.9.5 其他降維方法 (328)
11.10 Netflix大獎賽與推薦系統 (331)
參考文獻 (336)
主要內容
本書以雲計算為基石,從概念、研究、套用角度出發,系統地介紹了數據爆炸時代下的大數據。首先介紹了雲計算及大數據的基礎知識,讓讀者對雲計算及大數據有概要認識;接著全面、系統地介紹了雲時代下的大數據,主要包括大數據的連結、聚類、項集、系統、相似項挖掘及數據量化等內容,讓讀者挖掘雲時代大數據體系下的效益、價值及研究方向。