挑戰大數據: Facebook、Google、Amazon.com怎麼處理Big Data? 用NoSQL搞定每年100億顆硬碟資料 (第2版)
作者 | 陸嘉恒 |
---|---|
出版社 | 佳魁資訊股份有限公司 |
商品描述 | 挑戰大數據: Facebook、Google、Amazon.com怎麼處理Big Data? 用NoSQL搞定每年100億顆硬碟資料 (第2版):◎NoSQL不是產品,而是一個當紅的概念,為雲端時代不間斷資料的儲 |
作者 | 陸嘉恒 |
---|---|
出版社 | 佳魁資訊股份有限公司 |
商品描述 | 挑戰大數據: Facebook、Google、Amazon.com怎麼處理Big Data? 用NoSQL搞定每年100億顆硬碟資料 (第2版):◎NoSQL不是產品,而是一個當紅的概念,為雲端時代不間斷資料的儲 |
內容簡介 ◎NoSQL 不是產品,而是一個當紅的概念,為雲端時代不間斷資料的儲存基礎◎NoSQL 不是 No SQL,而是 Not Only SQL,不但保留了 SQL 的高邏輯性,更加上了分散式架構的強項◎傳統關聯式資料庫(SQL)已存在30年,再面對全球每年100億顆硬碟的增長量已完全無法承載負擔◎使用 NoSQL,用成千上萬的廉價 PC,就能保存及處理大數據,隨時擴充,不怕電腦當機◎介紹全球目前當紅的各個 NoSQL,Cassendra (Facebook 使用)、BigTable(Google使用)、Redis(Flickr及新浪使用)面對全球每年將近100億顆資料的成長,大數據的資料處理早已成為顯學。隨著大數據的概念興起,各行各業也面臨到保存各種資料的難題。資料的保存不只是保存而已,還必須成為資料倉儲(Data Warehouse)、資料分析、全文檢索、行為預測等功能的基礎。在傳統的關聯式資料庫(Oracle、MySQL、SQL Server)已老態龍鍾,或是需要高成本的伺服器來執行時,NoSQL 類的資料挾其水平擴充性(Scale out),使用一般PC就可擴充其功能的優勢,逐漸成為全球新寵。NoSQL 這個新興的觀念,已成為雲端時代的基本知識,本書可讓你快速上手大數據及 NoSQL,幫你成為雲端時代最性感行業(Sexiest Industry)的一員!適合:對資料庫知識有一定了解者、或有較好的程式設計基礎和閱讀程式的能力、有一定Linux作業系統的基礎知識者
作者介紹 ■作者簡介陸嘉恒
產品目錄 前言01 概論1.1 引子1.2 巨量資料挑戰1.3 巨量資料的儲存和管理1.3.1 平行資料庫 1.3.2 NoSQL資料管理系統1.3.3 NewSQL資料管理系統1.3.4 雲端資料管理1.4 巨量資料的處理和分析1.5 小結參考文獻 02 資料一致性理論2.1 CAP理論2.2 資料一致性模型 2.3 ACID與BASE2.4 資料一致性實現技術 2.4.1 Quorum系統NRW策略2.4.2 兩階段傳送協定2.4.3 時間戳記策略 2.4.4 Paxos 2.4.5 向量時鐘 2.5 小結 參考文獻 03資料儲存模型3.1 總論3.2 鍵值儲存 3.2.1 Redis 3.2.2 Dynamo3.3 列式儲存 3.3.1 Bigtable3.3.2 Cassandra與HBase3.4 文件儲存3.4.1 MongoDB3.4.2 CouchDB3.5 圖形儲存 3.5.1 Neo4j 3.5.2 GraphDB3.6 小結 參考文獻 04 資料分區與放置策略4.1 分區的意義4.1.1 為什麼要分區4.1.2 分區的優點4.2 範圍分區4.3 列表分區4.4 雜湊分區 4.5 三種分區的比較 4.6 放置策略 4.6.1 一致性雜湊演算法 4.6.2 容錯性與可擴充性分析4.6.3 虛擬節點 4.7 小結參考文獻 05 巨量資料處理方法5.1 MapReduce簡介5.2 MapReduce資料流程 5.3 MapReduce資料處理5.3.1 傳送作業5.3.2 初始化作業 5.3.3 分配工作 5.3.4 執行工作 5.3.5 更新工作執行進度和狀態5.3.6 完成作業 5.4 Dryad簡介5.4.1 DFS Cosmos介紹 5.4.2 Dryad執行引擎 5.4.3 DryadLINQ解釋引擎 5.4.4 DryadLINQ程式設計 5.5 Dryad資料處理步驟 5.6 MapReduce vs Dryad 5.7 小結參考文獻 06 資料複製與容錯技術6.1 巨量資料複製的作用和代價 6.2 巨量資料複製的策略 6.2.1 Dynamo的複寫原則 6.2.2 CouchDB的複寫原則6.2.3 PNUTS的複寫原則 6.3 巨量資料的故障發現與處理 6.3.1 Dynamo的故障發現與處理 6.3.2 CouchDB的故障發現與處理 6.3.3 PNUTS的故障發現與處理6.4 小結參考文獻07 資料壓縮技術7.1 資料壓縮原理 7.1.1 資料壓縮的定義 7.1.2 資料為什麼可以壓縮 7.1.3 資料壓縮分類 7.2 傳統壓縮技術[1] 7.2.1 霍夫曼編碼7.2.2 LZ77演算法7.3 巨量資料帶來的3V挑戰7.4 Oracle混合列壓縮 7.4.1 倉庫壓縮 7.4.2 歸檔壓縮 7.5 Google資料壓縮技術 7.5.1 尋找長的重複串7.5.2 壓縮演算法 7.6 Hadoop壓縮技術7.6.1 LZO簡介7.6.2 LZO原理[5] 7.7 小結 參考文獻 08 快取技術8.1 分散式快取簡介 8.1.1 分散式快取的產生 8.1.2 分散式快取的應用 8.1.3 分散式快取的效能8.1.4 衡量可用性的標準 8.2 分散式快取的內部機制8.2.1 生命期機制8.2.2 一致性機制 8.2.3 直接讀取與直接寫入機制 8.2.4 查詢機制8.2.5 事件觸發機制 8.3 分散式快取的拓撲結構8.3.1 複製式拓撲8.3.2 分割式拓撲 8.3.3 用戶端快取拓撲 8.4 小結 參考文獻 09 key-value資料庫9.1 key-value模型綜述 9.2 Redis9.2.1 Redis概述 9.2.2 Redis下載與安裝9.2.3 Redis入門操作 9.2.4 Redis在業內的應用9.3 Voldemort9.3.1 Voldemort概述 9.3.2 Voldemort下載與安裝 9.3.3 Voldemort設定 9.3.4 Voldemort開發介紹[3]9.4 小結 參考文獻 10 Column-Oriented資料庫10.1 Column-Oriented資料庫簡介 10.2 Bigtable資料庫 10.2.1 Bigtable資料庫簡介10.2.2 Bigtable資料模型10.2.3 Bigtable基礎架構 10.3 Hypertable資料庫 10.3.1 Hypertable簡介 10.3.2 Hypertable安裝 10.3.3 Hypertable架構10.3.4 Hypertable中的基本概念和原理10.3.5 Hypertable的查詢10.4 Cassandra資料庫 10.4.1 Cassandra簡介10.4.2 Cassandra設定10.4.3 Cassandra資料庫的連接 10.4.4 Cassandra叢集機制 10.4.5 Cassandra的讀 寫機制10.5 小結參考文獻 11 文件資料庫11.1 文件資料庫簡介 11.2 CouchDB資料庫 11.2.1 CouchDB簡介 11.2.2 CouchDB安裝 11.2.3 CouchDB入門11.2.4 CouchDB查詢 11.2.5 CouchDB的儲存結構 11.2.6 SQL和CouchDB 11.2.7 分散式環境中的CouchDB11.3 MongoDB資料庫 11.3.1 MongoDB簡介 11.3.2 MongoDB的安裝11.3.3 MongoDB入門 11.3.4 MongoDB索引11.3.5 SQL與MongoDB11.3.6 MapReduce與MongoDB11.3.7 MongoDB與CouchDB比較11.4 小結 參考文獻 12 圖型資料庫12.1 圖型資料庫的由來及基本概念12.1.1 圖型資料庫的由來 12.1.2 圖型資料庫的基本概念 12.2 Neo4j圖型資料庫12.2.1 Neo4j簡介 12.2.2 Neo4j使用教學12.2.3 分散式Neo4j — Neo4j HA 12.2.4 Neo4j工作機制及優缺點淺析12.3 GraphDB12.3.1 GraphDB簡介 12.3.2 GraphDB的整體架構 12.3.3 GraphDB的資料模型 12.3.4 GraphDB的安裝12.3.5 GraphDB的使用12.4 OrientDB12.4.1 背景12.4.2 OrientDB是什麼12.4.3 OrientDB的原理及相關技術 12.4.4 Windows下OrientDB的安裝與使用12.4.5 相關Web應用 12.5 三種圖型資料庫的比較 12.5.1 特徵比較表 12.5.2 分散式模式及應用比較 12.6 小結 參考文獻 13 以Hadoop為基礎的資料管理系統13.1 Hadoop簡介13.2 HBase 13.2.1 HBase系統結構 13.2.2 HBase資料模型13.2.3 HBase的安裝和使用13.2.4 HBase與RDBMS13.3 Pig13.3.1 Pig的安裝和使用13.3.2 Pig Latin語言 13.3.3 Pig實例13.4 Hive13.4.1 Hive的資料儲存13.4.2 Hive的中繼資料儲存13.4.3 安裝Hive 13.4.4 HiveQL簡介13.4.5 Hive的網路介面(WebUI)13.4.6 Hive的JDBC介面 13.5 小結 參考文獻 14 NewSQL資料庫14.1 NewSQL資料庫簡介14.2 MySQL Cluster14.2.1 概述 14.2.2 MySQL Cluster的層次結構 14.2.3 MySQL Cluster的優勢和應用 14.2.4 巨量資料處理中的sharding技術14.2.5 單機環境下MySQL Cluster的安裝14.2.6 MySQL Cluster的分散式安裝與設定指導 14.3 VoltDB 14.3.1 傳統關聯式資料庫與VoltDB 14.3.2 VoltDB的安裝與設定14.3.3 VoltDB元件 14.3.4 Hello World 14.3.5 使用Generate指令稿14.3.6 Eclipse整合開發 14.4 小結參考文獻15 分散式快取系統15.1 Memcached快取技術15.1.1 背景介紹15.1.2 Memcached快取技術的特點15.1.3 Memcached安裝[3] 15.1.4 Memcached中的資料操作 15.1.5 Memcached的使用15.2 Microsoft Velocity分散式快取系統15.2.1 Microsoft Velocity簡介15.2.2 資料分類 15.2.3 Velocity核心概念 15.2.4 Velocity安裝 15.2.5 一個簡單的Velocity用戶端應用 15.2.6 擴充型和可用性 15.3 小結 參考文獻16 企業應用16.1 Instagram 16.1.1 Instagram如何應對資料的急劇增長16.1.2 Instagram的資料分割策略 16.2 Facebook對Hadoop以及HBase的應用 16.2.1 工作負載型態16.2.2 為什麼採用Apache Hadoop和HBase 16.2.3 即時HDFS 16.2.4 Hadoop HBase的實現 16.3 淘寶巨量資料解決之道 16.3.1 淘寶資料分析 16.3.2 淘寶巨量資料挑戰 16.3.3 淘寶OceanBase資料庫16.3.4 淘寶將來的工作16.4 小結 參考文獻
書名 / | 挑戰大數據: Facebook、Google、Amazon.com怎麼處理Big Data? 用NoSQL搞定每年100億顆硬碟資料 (第2版) |
---|---|
作者 / | 陸嘉恒 |
簡介 / | 挑戰大數據: Facebook、Google、Amazon.com怎麼處理Big Data? 用NoSQL搞定每年100億顆硬碟資料 (第2版):◎NoSQL不是產品,而是一個當紅的概念,為雲端時代不間斷資料的儲 |
出版社 / | 佳魁資訊股份有限公司 |
ISBN13 / | 9789863791270 |
ISBN10 / | 986379127X |
EAN / | 9789863791270 |
誠品26碼 / | 2681010055006 |
頁數 / | 528 |
開數 / | 18K |
注音版 / | 否 |
裝訂 / | P:平裝 |
語言 / | 1:中文 繁體 |
級別 / | N:無 |
內文 : 推薦序
你知道自己一天產生多少資料嗎?是的,你的活動和古時候的人沒什麼兩樣,當然你可以走的比古時候的人遠,因為有了高科技的交通工具,也因為高科技的影音及娛樂,你的日常生活也比古時候的人更豐富,但不管如何,還是脫離不了食衣住行育樂。
但你和古時候人最大的不同,就是他的一天過完就沒了,但你的一天卻產生了大量的「數位」資料。古時候的人頂多寫日記,這篇日記在以文字檔為主的資料庫中可能佔的空間接近0。但你我呢?
就不要說照相攝影打卡這麼主動產生的資料了。你的上網記錄(IP、網站、停留時間、在頁面上駐點的位置);你的行動記錄(GPS位置經緯度、行車記錄器的影像、到達處附近的景點、餐廳、銀行....)。你的購買記錄(金額、時間、消費種類、發生地點...)。全世界70億人每天活動的資料,早就因為數位化及網路普及的關係,點點滴滴都以位元的方式存入「某個」儲存空間了。
根據Google前執行長史密特的說法,人類在2003年之後,每年產生的資料量,是人類歷史活動的總合至前一年的資料。換句話說,每年產生出有用沒用資料的數量是成指數成長的,如此一來,資料「放在哪」、「放得下」、「不會掉」,這三點非常重要!
我們早就習慣雲端時代了,東西只要「放在雲端上」就好了。但從硬體的角度來看,資料還是放硬碟、光碟,資料的存取還是「電腦」,這些基本的硬體設備幾十年來除了容量速度之外,原理還是沒什麼變,那我們要怎麼樣利用「軟體」的技術,將這些硬體重新排列組合,來應付每天產生2.5EB(2012年時的統計)的資料呢?
以每年產生10ZB(2.5EB x 365天),又以指數方式成長的速度來看,人類的資料量在2020年前會到達YB等級,什麼是YB?
這麼說吧,以目前大家常用的硬碟為1TB,那麼10ZB就是100億顆這個容量的硬碟,而且是每年100億顆。100顆硬碟有多少呢?可以繞地球4000圈!這麼多硬碟,這麼多資料,還要備份,還要隨時可存取,還要從這麼多資料中找出有意義的資訊,這件事怎麼看,都是人類有史以來最大的工程!怎麼辦呢?
這本書有你想知道的所有答案。
胡嘉璽