google在Big Data 應用上的技術與論文介紹

转载 2013年12月04日 18:12:49

转载自:http://techorange.com/2013/05/14/big-data-beyond-mapreduce/

目前 Big Data 的相關應用有不少都是從 MapReduce 衍生而出的,但,若把焦點移到即時資料(Real-Time Data)的需求上時就會發現它的不足之處。

因此,本篇文章將與各位讀者分享,從 Google 發佈 GFS、Big Data 與 MapReduce 這些技術開始,到這些技術發展的現況與其所遭遇到的瓶頸,以及 Google 為了解決這些問題提出了哪些因應的技術。

  • MapReduce,GFS 與 Bigtable,帶動了 Big Data 應用技術的發展

Google 在 2003 年發表了第一篇論文 〈The Google File System〉。文中敘述,GFS(Google File System)是一個分散式檔案系統,由數百個叢集(Cluster)所組成。簡單來說,儲存在 GFS 的檔案會被切割成  64 MB 左右的資料塊(Chunk),其利用重複的方式(Redundant Fashion)儲存在叢集中。

2004 年,Google 發表了 MapReduce 論文 〈MapReduce: Simplified Data Processing on Large Clusters〉,如今,MapReuce 可以說幾乎已經跟 Big Data 劃上等號了。

Google 利用 MapReuce 演算法來計算查詢索引(Search Index),讓使用者能在最短的時間內從 Internet 上找到自己所需要/查詢的資料。

2006 年,Google 發表了 Bigtable 論文 〈Bigtable: A Distributed Storage System for Structured Data〉,而 Bigtable 帶領了許多 NoSQL 資料庫的技術應用發展,像是 Cassandra、HBase 等等。

其中,Cassandra 的架構就整合了 Bigtable(資料模型、SSTables 及 Write-Through-Logs)與 Amazon 的 Dynamo 資料庫(Peer-to-Peer Clustering Model)。

  • Percolator,能夠解決 MapReduce 無法處理個別更新的問題

隨著 Internet 的網頁呈現指數增加,MapReduce 每次都要全面地重新計算查詢索引是非常不切實際的。因此,Google 為了提升系統的效能,開發了一個更有價值的分散式計算系統:Percolator。

Google 在 2010 年發表了相關的論文 〈 Large-scale Incremental Processing Using Distributed Transactions and Notifications〉,文中敘述 Google 如何在網路搜尋索引(Web Search Index)的技術持續地維持精進。例如,MapReduce 做計算時無法處理局部的更新,因此,在效能的改善部份是很有限的,而 Percolator 則彌補了這個弱點。

但是,各位讀者千萬不要誤以為 Percolator 是用來取代  MapReduce 的。

Percolator 是建立於 Bigtable 之上的應用,它加入了對表(Table)與紀錄(Row)的交易(Transaction)與鎖定(Lock)機制,也就是當 GFS 做表的掃描時,一旦發現有更新過的紀錄,就會透過觸發程序(Trigger)告知這個改變,再依據讀取(Read)或寫入(Write)的請求,在不同階段的工作過程中,針對資料表或記錄做鎖定或釋放的管理機制。透過這樣子的方式,來完成局部個體的更新。

  • Pregel:用來處理網絡社交關係的圖型結構計算

Google 為了做網路社交關係的圖型結構分析,開始針對圖型結構探勘做相關的研究與發展,並在 2010 年發表了相關的論文 〈Pregel: A System for Large-Scale Graph Processing〉。

由於針對大型的圖型結構做處理是非常複雜也具有挑戰性的,尤其是網路的分散式處理讓難度又提高了許多,因此,Pregel 的計算要比MapReduce 的計算要複雜許多,其主要是利用BSP(Bluk Synchronous Parallell)、PageRank、Bipartite Matching 等演算法來做計算的實踐。而在論文中你也可以看到上述這些方法的實踐。

  • Dremel:只要花幾秒鐘時間就可以分析 PB 等級的數據

在 2010 年,Google 還同時發表了一篇關於 Dremel 的論文,內容敘述 Dremel 是一個利用 SQL-like Language 的互動式資料庫系統,用來儲存結構化資料。

Dremel 的特色是,以列儲存為主,以減少 CPU 與磁碟的讀取,進而達到快速讀取局部資料的目的;將查詢的任務切割成多個小任務,以達到平行處理的目的;支援 Nested 數據模型,但只提供唯讀功能。

  • Big Data 的相關應用,需要的不只是 MapReduce

Google 並沒有在提出 MapReduce 之後,就停止了查詢技術的發展,他們不斷地發展新的技術以補強 MapReduce 的不足之處,這對 Big Data 的發展是有益的。

畢竟,MapReduce 不是萬能的,以目前的狀況來說,還是有許多的問題尚待解決,不過,Google 所發展出來的技術,帶領了許多其他自由軟體的發展,像 Apache Drill、Apache Giraph 以及 Stanford’s GPS 等等,這或許是身為使用者的我們最樂於見到的發展。

相关文章推荐

NSDI'17-论文阅读[CherryPick:Adaptively Unearthing the Best Cloud Configurations for Big Data Analytics]

CherryPick是在刚过去的NSDI2017上发表的一篇文章。很欣喜地看到顶会论文作者上出现了阿里的身影。虽然不知道阿里在里面是什么角色……不过相对于只能看到微软或者谷歌的好多了 这两年,不管是N...

BigDansing: A System for Big Data Cleansing论文笔记

这是BigDansing这篇论文的一些笔记,希望对您有所帮助。 1.基础 Semantics                Detect    ...

从谷歌(google)到Hadoop,再到大数据商业智能(Big Data BI)

从Google到Hadoop 谷歌(google)在成立公司的第一天起,就面对着大数据的问题。谷歌在大数据技术开发上,投入大量的资金和人才,其成就一直领先业界。谷歌对于核心技术也从不掩盖,积极在学术...

Big Data 技术综述 大数据 研究 大数据 综述

Big Data 技术综述 大数据 研究 大数据 综述 2011-08-27 1:30 此文BY CSDN 蒋杰 Big Data是近来的一个技术热点,但从名字就能判断它...

Big Data技术综述

Big Data作为一个专有名词成为热点,主要应归功于近年来互联网、云计算、移动和物联网的迅猛发展。无所不在的移动设备、RFID、无线传感器每分每秒都在产生数据,数以亿计用户的互联网服务时时刻刻在产生...

Big Data技术综述

Big Data是近来的一个技术热点,但从名字就能判断它并不是什么新词。毕竟,大是一个相对概念。历史上,数据库、数据仓库、数据集市等信息管理领域的技术,很大程度上也是为了解决大规模数据的问题。被誉为数...

big data相关的技术文章

Spark分布式计算平台 来自于:大数据技术 作者:hzguoding 2014-08-13 14:24 Spark简介 UC伯克利 AMP实验室(2011) 当前版本0....

Big Data 暨IBM BigInsight 应用行业总结分析

Normal 0 7.8 pt 0 2 false false false MicrosoftI...
  • linhx
  • linhx
  • 2011-06-20 16:35
  • 1531
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)