[大數據學習]如何解決大數據的處理問題?

大數據技術關注的是數據,如何存儲、計算、傳輸大規模的數據是要考慮的核心要素。


我們傳統的計算模型是:輸入->計算->輸出,就是程序放在那裡,我們去拉數據過來,給它輸入然後計算,最後產生輸出結果。但在互聯網時代,需要處理的數據實在膨脹太過急速,所以傳統的計算模型已經不適合於大數據的處理,這時我們可以採用一種新的思路。既然數據是龐大的,而程序小的多,將數據輸入到程序是不划算的,是不是可以把程序分發到數據所有的地方再進行計算,然後把結果彙總呢?答案是肯定的。

但是,又引申出新的問題,不同的兩臺計算機之間,如何進行協作才能完成計算和彙總呢,這時必須在技術上重新架構。MapReduce是一種處理大型及超大型數據集並生成相關執行的編程模型,最早由Google在2003年到2004年公佈了關於GFS、MapReduce和BigTable三篇技術論文中出現。

[大數據學習]如何解決大數據的處理問題?


如何實現?

  • 將待處理的數據存儲在集群服務器上,主要使用HDFS將文件分塊存儲
  • 大數據引擎根據不同服務器的處理能力,在每臺服務器上啟動任務執行進程並等待任務分配
  • 使用大數據計算支持的編程模型進行編程,比如hadoop的mapreduce模型,或spark的RDD模型,程序編寫好了打包jar包
  • 用hadoop或spark啟動命令執行jar包,執行引擎會根據數據路徑將數據分片並分配給每個任務執行進程處理
  • 任務執行進程收到分配的任務後,自動加載程序jar包,並通過反射方式運行程序
  • 任務執行進程根據分配的數據片的地址和數據文件的偏移量讀取數據進行處理

大數據技術的編程模型和編程框架,使得開發人員只需要關注大數據的算法實現,而不必關心這個算法如何在分佈式環境中運行,極大簡化大數據開發的難度和門檻。

最後說一下,想要學習大數據的限時領取免費資料及課程

領取方法:

還是那個萬年不變的老規矩

1.評論文章,沒字數限制,一個字都行!

3.私信小編:“大數據開發教程”即可!

謝謝大家,祝大家學習愉快!(拿到教程後一定要好好學習,多練習哦!)


分享到:


相關文章: