什么是大數(shù)據(jù)批狱?必看》》形象描述大數(shù)據(jù)技術(shù)生態(tài)圈?
一、大數(shù)據(jù)在線分析處理和常用工具
??? 1盐数、大數(shù)據(jù)在線分析和處理特點:
?????? * 數(shù)據(jù)源源不斷到來埂淮;
?????? * 數(shù)據(jù)需要盡快處理姑隅,不能積壓;
?????? * 處理后的數(shù)據(jù)依然是TB或PB級的數(shù)據(jù)量同诫;
?????? * 處理結(jié)果盡快展現(xiàn);
? 總結(jié)為:數(shù)據(jù)的收集-——數(shù)據(jù)傳輸——數(shù)據(jù)處理——數(shù)據(jù)展現(xiàn)(可視化)樟澜,其中误窖,數(shù)據(jù)處理一般涉及數(shù)據(jù)的聚合,數(shù)據(jù)處理和數(shù)據(jù)展現(xiàn)能夠在秒級得到響應(yīng)秩贰。
2霹俺、工具:
(1) flume?? 主要用于數(shù)據(jù)的收集和傳輸。類似的大數(shù)據(jù)開源系統(tǒng)有 Logstash和Fluentd毒费。
?? 三者區(qū)別:
?? * Logstash主要和Elasticsearch丙唧、Kibana結(jié)合使用,即ELK框架觅玻;Logstash主要負責(zé)將數(shù)據(jù)源的數(shù)據(jù)轉(zhuǎn)換成Elasticsearch認識的索引結(jié)構(gòu)供Kibana查詢想际。
? *? Fluentd逐漸被Flume代替。
? * Flume能夠支持多種數(shù)據(jù)源溪厘,并且輸出到多種輸出源胡本,支持多種格式的數(shù)據(jù)。
Flume的架構(gòu)主要有一下幾個核心概念:
? Event:一個數(shù)據(jù)單元畸悬,帶有一個可選的消息頭
? Flow:Event從源點到達目的點的遷移的抽象
? Client:操作位于源點處的Event侧甫,將其發(fā)送到Flume Agent
? Agent:一個獨立的Flume進程,包含組件Source蹋宦、Channel披粟、Sink
? Source:用來消費傳遞到該組件的Event。連接的輸入源可以有Avro冷冗、Thrift守屉、Exec(Unix command output)、JMS(Java Message Service)蒿辙、Kafka胸梆、NetCat(可以使用nc -lk port 測試)敦捧、Syslog.....
Channel:中轉(zhuǎn)Event的一個臨時存儲,flume內(nèi)部數(shù)據(jù)傳輸通道碰镜,保存有Source組件傳遞過來的Event兢卵。主要包括Memory Channel和File Channel。
Sink:從Channel中讀取并移除Event绪颖,將Event傳遞到Flow Pipeline中的下一個Agent(如果有的話)秽荤。連接的輸出源可以有Hdfs、Hive柠横、Avro窃款、Thrift、File Roll 牍氛、Hbase晨继、Kafka......
?? Flume NG架構(gòu):
多個Agent連接形成Agent鏈:
多個Agent進行數(shù)據(jù)源的合并:
多路Agent:
實現(xiàn)load balance功能:
(2)kafka??? 主要用于前端日志的存儲,用作緩沖
(3)Storm /Spark? 專注于將數(shù)據(jù)按照時間窗口進行聚合處理搬俊,被稱為流式處理框架紊扬。
??????? * Storm提供比Spark更加實時的流式處理;
?????? * Spark提供比Storm更多的服務(wù)唉擂,Spark 已經(jīng)形成類似Hadoop的生態(tài)圈餐屎。
Spark 生態(tài)圈如下所示:
目前,Spark 有三種集群管理模式:
? * Standalone :一種簡單的集群管理玩祟,其包括一個很容易搭建集群的Spark;
? * Apache Mesos:一種通用的集群管理模式腹缩,可以運行Hadoop Mapreduce和服務(wù)應(yīng)用的模式;
? * Hadoop YARN : Hadoop 2.0中的資源管理模式空扎;
(4)Hbase /Redis?? 提供大數(shù)據(jù)存儲和提供查詢藏鹊。類似的大數(shù)據(jù)開源系統(tǒng)有Cassandra.
?? * Cassandra 滿足可用性和分區(qū)容忍性,允許數(shù)據(jù)的不一致(不同的客戶端可能看到不一樣的情況)转锈,提供了類似SQL的CQL查詢語言伙判,查詢方便;
? * Hbase 滿足一致性和分區(qū)容忍性黑忱,擁有強大的記錄一致性宴抚,但是不支持SQL,需要使用第三方服務(wù)來支持SQL(如 Apache Phoenix);
未完待續(xù)甫煞。菇曲。。抚吠。
?????????
二常潮、大數(shù)據(jù)離線處理和常用工具
未完待續(xù)。楷力。喊式。孵户。