近些年來,大資料這個詞頻繁出現在我們的生活中。那麼大資料到底是什麼呢,讓我們一起來看一下。
通俗來說。大資料是乙個概念也是一門技術,是在以hadoop為代表的大資料平台框架上進行各種資料分析的技術。大資料報括了以hadoop和spark為代表的基礎大資料框架。還包括了資料探勘、資料分析、實時資料處理、離線資料處理、利用機器學習演算法進行**分析等技術。
好了,大體了解了大資料的概念之後,我們首先就進入hadoop的世界一**竟吧。
the apache hadoop project develops open-source software for reliable, scalable, distributed computing.
//hadoop是乙個開源的、高可靠的、可以擴充套件的分布式計算的解決方案。
the project includes these modules:
hadoop common: the common utilities that support the other hadoop modules. //提供了一系列的工具類,對hadoop其它框架的支援。hadoop distributed file system (hdfs): a distributed file system that provides high-throughput access to application data. //hadoop的分布式的檔案系統,簡稱hdfs,對資料的訪問而言,它提供了高的儲存量。hadoop yarn: a framework for job scheduling and cluster resource management. //yarn是用來進行作業的排程、集群資源的管理。hadoop mapreduce: a yarn-based system for parallel processing of large data sets. //執行在yarn之上,用來計算大資料集的框架。
可見,hadoop裡面主要有三個主要模組,hdfs負責檔案儲存,yarn負責任務排程、資源管理,mapreduce負責並行處理資料。
我們可以用來搭建大型資料倉儲,pb級資料的儲存、處理、分析、統計等業務。比如:日誌分析、搜尋引擎、資料探勘、商業報表的產生等等。
hdfs是可以擴充套件的,是容錯的,是有海量資料儲存功能的。
在hdfs中上傳檔案,它會將檔案切分成指定大小的資料塊(預設是128m)並以多副本的方式儲存在多個機器上。對於資料切分、多副本、容錯等操作對使用者是透明,不需要我們使用者手動去操作,這些都是由hdfs底層實現完成的。
yarn是負責整個集群資源的管理和排程的。
yarn是可擴充套件的、是容錯的、支援多框架資源統一排程。我們可以在yarn上跑mapreduce作業或者是spark作業等等。
mapreduce是可擴充套件的、是容錯的、可以進行海量資料離線處理。
資料塊以多副本的方式存在hdfs中,如果節點發生異常的話,也不會影響整個檔案資料塊的丟失。
對於資料計算,如果發生了異常,hadoop可以重新排程作業進行計算。
儲存、計算資源不夠的時候,我們可以橫向的線性增加機器,提公升儲存計算資源。
乙個集群中可以包含成千上萬個節點。
可以儲存在廉價的機器上,成本比較低。
hadoop具有成熟的生態圈。
可見,mapreduce可以從hdfs中獲取資料檔案,然後在yarn上執行計算作業。由於mapreduce對我們來說門檻是比較高的,所以還有在yarn之上我們還可以執行一些別的框架,進行資料計算等任務。我們來簡單介紹一下。
hive:hive是基於hadoop的乙個資料倉儲工具,可以將結構化的資料檔案對映為一張資料庫表,並提供簡單的sql查詢功能,可以將sql語句轉換為mapreduce任務進行執行。
r connectors:r語言,可以進行一些資料的統計分析。
mahout:機器學習的庫。
pig:指令碼性語言,通過寫指令碼的方式,就可以轉換成mapreduce提交到集群上執行,如果底層是mapreduce的話,那麼就可以進行資料的離線處理。
oozie:工作流排程引擎。
zookeeper:分布式協調服務。可以用zookeeper把各種框架管理起來。
sqoop:關係型資料庫和hadoop的資料傳輸。可以把資料庫中的資料抽取到hdfs中來。也可以把統計分析的結果匯出到關係型資料庫中。資料交換的乙個工具。
hbase:列式儲存的乙個資料庫,可以理解為hbase就是hadoop中的乙個資料庫,我們可以將海量資料存入hbase中,借助hbase的一些特性,我們可以實現在秒級別查詢上億的資料量。
走向雲計算之Hadoop基本介紹及生態系統
hadoop有許多發行版本,基本可以分為1.x版本和2.x版本。兩者基本組成如下 其基本思想源自於google的gfs hdfs是gfs轉殖版。其設計理念源自於google的mapreduce hadoop mapreduce是google mapreduce轉殖版。mapreduce特點 1 良好...
大資料生態之起源 Hadoop
說起大資料生態體系的起源,不得不提doug cutting,這位大資料技術始祖級的人物,在google的影響下為我們帶來了大資料生態體系中最原始也最重要的部分 hadoop。doug cutting,上圖居中著,身高一公尺八往上,其貌不揚,為人謙遜,因其兒子喜歡的玩具為技術發明命名。1985,畢業於...
大資料入門基礎Hadoop生態圈介紹 HDFS
由於單機的儲存能力有限,難以儲存日益增長的資料,於是我們便將資料分配到多個機器中進行儲存,因此我們迫切需要一種系統方便管理和維護多台機器上的儲存資料的檔案,這就是分布式檔案系統。hdfs只是分布式檔案系統中的一種。優點 1 高容錯性 1 資料自動儲存多個副本。它通過增加副本的形式,提高容錯性。2 某...