分布式的並行計算技術


大數據主要環節:

  數據准備--->數據存儲和管理--->計算處理--->數據分析--->知識展現

在數據存儲和管理中,GFS(谷歌文件系統,GOOGLE FILE SYSTEM)和HDFS(Hadoop的分布式文件系統)是奠定了大數據存儲技術的基礎。GFS/HDFS能避免在數據密集計算中容易形成的輸入/輸出吞吐量限制,且有較高的並發訪問能力,能在大文件的追加寫入和讀取時能獲得很高的性能,但隨機訪問、海量小文件的頻繁寫入性能較低。當然除了GFS/HDFS,是針對海量數據的文件系統,還有BigTable和Hadoop Hbase等非關系型數據庫,它們針對非結構化的數據存儲管理。

批計算:

  Hadoop:是一個提供分布式存儲和計算的軟件框架,它具有無共享、高可用、彈性可擴展的特點,非常適合處理海量數據,先存儲再計算。包含計算框架MapReduce(Google File System的開源實現)和分布式文件系統HDFS(Google MapReduce的開源實現),更廣泛的說還包括其生態系統上的其他系統,如Hbase、Hive等。

  Apache Hadoop MapReduce 大數據計算軟件架構能滿足“先存儲再計算”的離線批量計算,但時延過大,在機器學習迭代、流處理、大規模圖數據處理方面很有局限性。但在Hadoop 2.0 中推出的新一代MapReduce 架構將原來MapReduce中的任務調度和資源管理功能分離,形成與任務無關的資源管理層(YARN)。 YARN對上支持批處理、流處理、圖計算等新結構模型,對下負責物理資源的統一管理。

實時批計算:

  Spark:基於內存計算、支持快速迭代的的大數據並行計算框架。 適用於一切的分布式處理方案。

  Spark比MapReduce更加高效,數據處理速度更快。可以作為MapReduce的替代方案,並且兼容HDFS、Hive等分布式存儲層,可以融入Hadoop的生態系統,可以彌補MapReduce的不足。

流計算:

  Strom:針對“邊達到邊計算”的實時流計算框架,可在一個時間窗口上對數據流進行在線實時分析。

  同樣的還有Yahoo提出的S4系統也是針對流計算的。

圖計算:

  Pregel:主要用於繪制大量網上信息之間關系的“圖形數據庫”。是面向圖結構優化,一個可伸縮的分布式迭代圖處理系統計算框架,靈感來自 BSP (bulk synchronous parallel) 和 Google 的 Pregel。

交互查詢:

  Dremel:Google 的“交互式”數據分析系統。可以組建成規模上千的集群,處理PB級別的數據,可實現快速交互查詢。

  Drill是Dremel的開源實現。

在數據分析中,機器學習毫無疑問是最佳的實現方法,其中最核心的為算法。

算法:

  有工程學方法和模擬法兩種。

  模擬法又分為進化算法人工神經網絡算法兩種。

進化算法以達爾文的進化思想為基礎,通過選擇、重組、變異三種操作方法優化問題求解。

人工神經網絡算法是根據邏輯規則進行推理的過程。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM