您好,登錄后才能下訂單哦!
小編給大家分享一下能處理大數據的技術有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
能處理大數據的技術:
Hadoop離線計算 spark實時計算 strom流式計算
一、hadoop背景
Apache Hadoop 是一個可靠的,可擴展的分布式計算開發軟件
Apache Hadoop 可以理解為一個框架. 它允許使用簡單的編程模型來計算分布式的大型數據集合(海量數據)
包括哪些模塊:
Hadoop Common : Hadoop的一些模塊工具
Hadoop分布式文件系統(HDFS):是一種分布式文件系統,可以提供應用程序數據的高吞吐量的訪問
Hadoop YARN:作業調度和集群資源管理的框架
Hadoop MapReduce:一種用于處理大型數據集的基于YARN的系統(分布式計算框架)
ps:MapReduce論計算能力 很一般而且數據慢
上述的每個模塊都有自己獨立的功能,而模塊和模塊之間又有一定的聯系
二、
Hadoop在大數據,云計算中位置和關系
云計算是分布式計算,并行技術,網絡計算,多核計算,網絡存儲,虛擬化,負載均衡等傳統的計算機技術和互聯網技術融合的一個產物
現階段云計算的底層兩大技術支撐"虛擬化"和"大數據技術"
而Hadoop則是云計算平臺即服的解決方案
ps:laaS(基礎設施即服務) PaaS(平臺即服務) S aaS(軟件即服務)
三、Hadoop案例:
1. 大型網站web服務器的日志分析:一個大型網站的web服務器,每5分鐘就收錄的點擊量就高達800GB,峰值點擊可以達到每秒900萬次每隔5分鐘將數據裝載到內存中,高速計算網站的熱點url,并將這些信息反饋給前端緩存服務器,以提高緩存命中率
2. 運營商流量分析:每天的流量數據在2TB-5TB之間,拷貝到HDFS上,通過交互式分析引擎模板,能夠進行幾百個復雜的數據清洗和報表任務,總時間類似的硬件配置的小集群(DB2)要快2-3倍
3. 城市交通卡口視頻監控信息實時分析:采用基于流式進行全省范圍的交通卡口的視頻監控的信息進行實時的分析,警告和統計,可以對全省范圍內未年檢和套牌車輛進行300毫秒左右就可以得到結論并實時進行警告
四、Hadoop生態圈
重要組件
1. HDFS:分布式文件系統
2. MapReduce:分布式計算框架
3. Hive:基于大數據技術的SQL數據倉庫工具(文件系統+運算框架)
4. HBase:基于Hadoop的分布式海量數據數據庫(NOSQL非關系型數據庫,列式存儲)
5. Zookeeper:分布式協調服務基礎組件
6. Oozie:工作流調度框架
7. Sqoop:數據導入導出工具
8. Flume:日志數據采集框架
9. Mahout:基于Mapreduce/Spark/flink等分布式框架的機器學習算法庫
分布式系統
一、分布式軟件系統
分布式軟件系統是由一組通過網絡進行通信,為了完成共同的任務而協調工作的計算機節點所組成的系統. 分布式系統的出現為了用廉價,普通的機器完成單個計算機完成的計算/存儲等任務,其目的就是充分利用計算機來處理更多的任務
二、常用的分布式軟件系統的案例:
Web服務器集群,單臺服務器的性能和資源時優先,支持的連接并發數也是有上限,因此必須采用多態服務器集群的方式才能提供并發數據和計算機計算速度
每臺web服務器會分配一個域名,肯定是同一個域名的進入的是同一個入口
百度有上千(甚至更多)臺web服務器,此時我們使用www.baidu.com一個入口進行訪問,至于哪臺服務器提供我們服務,具體的就需要底層實現一個技術,負載均衡
離線數據的分析流程
web日志數據挖掘
案例分析:
網站點擊流量日志數據挖掘系統
需求:
web點擊流日志,包含著網站運營的重要信息,通過日志的分析,我們可以知道網站的訪問量,那個網頁訪問人數的最多,那個網頁最有價值,廣告轉換率,訪客的來源信息,訪客的終端信息
數據來源:
獲取方式,在頁面預處理一段js程序,為了頁面想要堅挺的標簽綁定時間,只要用戶點擊或觸發,就可以得到用戶的信息,并產生日志文件
數據處理流程:
1. 數據采集:定制開發程序或使用Flume
2. 數據預處理:定制開發MapReduce程序運行在Hadoop計算
3. 數據倉庫計算:基于Hadoop智商使用hive技術完成數倉 數倉中會完成數據清洗(ETL)
4. 數據導出:需要使用sqoop將數據導出
5. 數據可視化:就由web人員完成 ps:可以使用Oozie來輔助開發
HDFS分布式文件系統
HDFS的源于Google的一篇技術論文GFS,HDFS時GFS的一個克隆 HDFS全稱 Hadoop Distributed /d?'str?bj?t?d/(分布式) File System HDFS易于擴展的分布式文件系統,運行在大量普通廉價的機器上,提供內容錯機制,為大量用戶提供性能不錯的文件 存取服務
HDFS的優點和缺點
優點:
1.高可靠性:Hadoop按位存儲和處理數據的能力強
2.高擴展性:Hadoop是在可用的計算機集群中分配數據完成計算計算任務
3.高效性: Hadoop能夠站在節點之間動態的移動數據,并保證每個節點的動態平衡
4.高容錯性: Hadoop能夠自動保存數據的多個副本,并且能夠自動將失敗的任務重新分配
缺點:
1.不適合低延遲訪問
2.無法高效存儲大量小文件
3.不支持多用戶寫入即任意修改文件
HDFS的重要特性
1.HDSF中文件在物理上是分塊存儲(block),塊的大小可以通過參數(dfs.blocksize)來設置, 默認大小Hadoop2.x版本中默認大小128M , hadoop1.x版本即使64M
2.HDFS文件系統會給客戶端提供一個統一的抽象目錄樹,通過客戶端對相應路徑下的文件進行訪問
3.目錄結構及文件的分塊信息(元數據)都由NameNode節點承擔 NameNode是HDFS集合中的主節點,負責維護整個HDFS文件系統的目錄樹,以及每一個路徑所對應的Block塊信息 (block是id以及所在DataNode服務器)
4.文件的各個block塊存儲的管理DataNode來節點進行管理 DataNode是HDFS集群的從節點,每一個Block都可以在多個DataNode上存儲多個副本(副本數量是可以設置 dfs.replication)
HDSF在Hadoop中的存儲模型
HDSF是面向文件, 文件會線性切割成塊(Block) 每一個塊都有一個偏移量offset(byte),偏移量是描述這個塊是屬于這個文件的那一個部分 一個大文切分成很多塊,每 個塊面臨是這個文件的位置,也就是說每一個塊的第一個字節對應著這個大文件某個位置的字 節,這個字節就是偏移量 Block分散存儲到集群節點中 單一文件block的大小是一致的,也就是說一個大的文件,定義的每個塊的大小是固定的,所有切出來的文件大小也是固定的.但若文件最后剩余大小和塊的大小不一致,那么會按照塊的大小占位,實際存儲剩余文件的大小,也就是說在內存中開辟的空間是實際文件的大小Block可以設置的副本數,副本分散在不同的節點中,副本數不要超過節點的數量 副本相當于一個備份(拷貝),HDFS的默認副本數量是3,副本的額作用就是保證文件丟失的情況下,可以在其他節點中 得到同一個信息,所以絕對不能出現副本和塊出現在同一個節點 文件上傳的時候可以設置Block塊的大小和副本的而數量,已經上傳的block副本數可以調整,但是塊的是不變,只支持 一寫入 但是可以多次讀取,若想追加數據只能在最后一個節點中添加
HDFS讀寫流程
hdfs讀流程 :
1.client鏈接namenode,查看元數據,找到數據的存儲位置。
2.client通過hdfs的api并發讀取數據。
3.關閉連接。
hdfs寫流程 :
1.client鏈接namenode存數據
2.namenode記錄一條數據位置信息(元數據),告訴client存哪。
3.client用hdfs的api將數據塊(默認是64M)存儲到datanode上。
4.datanode將數據水平備份。并且備份完將反饋client。
5.client通知namenode存儲塊完畢。
6.namenode將元數據同步到內存中。
7.另一塊循環上面的過程。
HDFS文件系統存在讀寫權限
r --> read w --> writer x --> execute
--- | --- | --- 可以看成是一個八進制 1代表有權限 0代表沒有權限
rxw | r-- | -w- --> 數字的形式 111 | 100 | 010 ---> 742
HDFS的Shell命令:
ps:無論看到是hdfs dfs 形式還是 hadoop fs這種形式 都可以 完成對HDFS的操作
1.向HDSF上傳文件
put: 從本地文件系統賦值單個或多個原路徑目標文件到HDFS文件系統中
hdfs dfs -put 本地文件路徑 HDFS文件系統路徑
2.將HDFS文件系統中的文件下載回來
get:從HDFS文件系統中將文件復制到本地文件系統中
hdfs dfs -get HDFS文件系統路徑 本地文件系統路徑
ps:HDFS有一個和put和get類似的而方法 copyFromlocal 相當于put 和 copyTolocal 相當于 get
3.查看HDFS文件系統中的文件內容
cat:查看HDFS文件系統中的文件內容
hdfs dfs -cat HDFS文件系統中文件的路徑
ps:不要查看非文件 在查看文件的同時追加文件到本地路徑
4.HDFS文件系統中進行復制操作
cp:將HDFS文件系統中的文件進行復制,復制到HDFS系統中
hdfs dfs -cp 源HDFS文件系統中的文件路徑 目標HDFS文件系統中的路徑
5.HDFS文件系統中的文件進行移動操作
mv:將源文件移動目標路徑,這個命令可允許有多個源路徑,此時目標路徑必須是一個文件夾(目錄) 不允許不同的文件系統互相移動文件
hdfs dfs -mv 源HDFS文件系統中的文件路徑 目標HDFS文件系統中的路徑
相當于剪切
6.查看HDFS文件系統中文件的大小
hdfs dfs -du HDFS文件系統中路徑中的一個文件
7.在HDSF系統中創建文件夾
mkdir 創建文件夾
hdfs dfs -mkdir HDFS文件系統中的路徑
8.查看HDFS文件系統下的所有文件
hdfs dfs -ls HDFS文件系統路徑
9.刪除HDFS文件系統中的目錄或文件
ps:只能是單個文件 或 空目錄
hdfs dfs -rm HDFS文件系統路徑
若參數文件夾中有多個文件 加 -r hdfs dfs -rm -r HDFS文件系統路徑
10.更改文件的權限
r可讀 w可寫 x可執行
--- | ---| --- 1代表有權 0代表沒有權限 所有每三位可以作為一個八進制處理
例如 rwx | rwx | rwx
111 | 111 | 111
=========================
7 7 7
hdfs dfs -chmod 權限值 HDFS文件系統路徑
若需要更改目錄下權限都需要修改
hdfs dfs -chmod -R 權限值 HDFS文件系統路徑下的文件夾
ps:并且文件夾下的所有子文件和文件夾都會被修改
11.回收站
Hadoop回收站trash,默認是關閉的,建議開啟
[]:
ps:默認為是沒有權限操作回收站的,所以操作之前開啟權限
hdfs dfs -chmod -R 777 HDFS文件系統中回收站的路徑
例子:hdfs dfs -chmod -R 777 /user 刪除文件后,發現誤刪了,恢復文件
hdfs dfs -mv HDFS文件系統中回收站的路徑下的文件 HDFS文件系統路徑
清空回收站
hdfs dfs -rm -r HDFS文件系統中回收站的路徑
例如:hdfs dfs -rm -r /user/root/.Trash
以上是“能處理大數據的技術有哪些”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。