国产强奸视频网站|浮力草草影院91|亚洲一区欧美二区|国产精品美女一区|超碰人人操97碰|丁香婷婷电影网址|亚洲伊人av在线|亚州一线在线观看|日韩超清无码69|无码人妻九十九区

400-8166108
行業(yè)動態(tài)
在這里,聆聽大咖的聲音
一文看懂大數(shù)據(jù)生態(tài)圈完整知識體系
由 辰智信息 發(fā)布于2022-12-26

隨著大數(shù)據(jù)行業(yè)的發(fā)展,大數(shù)據(jù)生態(tài)圈中相關(guān)的技術(shù)也在一直迭代進(jìn)步,作者有幸親身經(jīng)歷了國內(nèi)大數(shù)據(jù)行業(yè)從零到一的發(fā)展歷程,通過本文希望能夠幫助大家快速構(gòu)建大數(shù)據(jù)生態(tài)圈完整知識體系。

目前大數(shù)據(jù)生態(tài)圈中的核心技術(shù)總結(jié)下來如圖1所示,分為以下9類,下面分別介紹。



一、數(shù)據(jù)采集技術(shù)框架

數(shù)據(jù)采集也被稱為數(shù)據(jù)同步。隨著互聯(lián)網(wǎng)、移動互聯(lián)網(wǎng)、物聯(lián)網(wǎng)等技術(shù)的興起,產(chǎn)生了海量數(shù)據(jù)。這些數(shù)據(jù)散落在各個地方,我們需要將這些數(shù)據(jù)融合到一起,然后從這些海量數(shù)據(jù)中計算出一些有價值的內(nèi)容。此時第一步需要做的是把數(shù)據(jù)采集過來。數(shù)據(jù)采集是大數(shù)據(jù)的基礎(chǔ),沒有數(shù)據(jù)采集,何談大數(shù)據(jù)!

數(shù)據(jù)采集技術(shù)框架包括以下幾種:

● Flume、Logstash和FileBeat常用于日志數(shù)據(jù)實時監(jiān)控采集,它們之間的細(xì)節(jié)區(qū)別見表1:


● Sqoop和Datax常用于關(guān)系型數(shù)據(jù)庫離線數(shù)據(jù)采集,它們之間的細(xì)節(jié)區(qū)別見表2:


● Cannal和Maxwell常用于關(guān)系型數(shù)據(jù)庫實時數(shù)據(jù)采集,它們之間的細(xì)節(jié)區(qū)別見表3:


Flume、Logstash和FileBeat的技術(shù)選型如圖2所示:



Sqoop和Datax之間的技術(shù)選型如圖3所示:



Cannal和Maxwell之間的技術(shù)選型如圖4所示:


二、數(shù)據(jù)存儲技術(shù)框架

數(shù)據(jù)的快速增長推動了技術(shù)的發(fā)展,涌現(xiàn)出了一批優(yōu)秀的、支持分布式的存儲系統(tǒng)。

數(shù)據(jù)存儲技術(shù)框架包括HDFS、HBase、Kudu、Kafka等。

● HDFS它可以解決海量數(shù)據(jù)存儲的問題,但是其最大的缺點是不支持單條數(shù)據(jù)的修改操作,因為它畢竟不是數(shù)據(jù)庫。

● HBase是一個基于HDFS的分布式NoSQL數(shù)據(jù)庫。這意味著,HBase可以利用HDFS的海量數(shù)據(jù)存儲能力,并支持修改操作。但HBase并不是關(guān)系型數(shù)據(jù)庫,所以它無法支持傳統(tǒng)的SQL語法。

● Kudu是介于HDFS和HBase之間的技術(shù)組件,既支持?jǐn)?shù)據(jù)修改,也支持基于SQL的數(shù)據(jù)分析功能;目前Kudu的定位比較尷尬,屬于一個折中的方案,在實際工作中應(yīng)用有限。

● Kafka常用于海量數(shù)據(jù)的臨時緩沖存儲,對外提供高吞吐量的讀寫能力。


三、分布式資源管理框架

在傳統(tǒng)的IT領(lǐng)域中,企業(yè)的服務(wù)器資源(內(nèi)存、CPU等)是有限的,也是固定的。但是,服務(wù)器的應(yīng)用場景卻是靈活多變的。例如,今天臨時上線了一個系統(tǒng),需要占用幾臺服務(wù)器;過了幾天,需要把這個系統(tǒng)下線,把這幾臺服務(wù)器清理出來。

在大數(shù)據(jù)時代到來之前,服務(wù)器資源的變更對應(yīng)的是系統(tǒng)的上線和下線,這些變動是有限的。隨著大數(shù)據(jù)時代的到來,臨時任務(wù)的需求量大增,這些任務(wù)往往需要大量的服務(wù)器資源。如果此時還依賴運維人員人工對接服務(wù)器資源的變更,顯然是不現(xiàn)實的。因此,分布式資源管理系統(tǒng)應(yīng)運而生,常見的包括YARN、Kubernetes和Mesos,它們的典型應(yīng)用領(lǐng)域如圖5所示。



四、數(shù)據(jù)計算技術(shù)框架

數(shù)據(jù)計算分為離線數(shù)據(jù)計算和實時數(shù)據(jù)計算。

1. 離線數(shù)據(jù)計算

大數(shù)據(jù)中的離線數(shù)據(jù)計算引擎經(jīng)過十幾年的發(fā)展,到目前為止主要發(fā)生了3次大的變更。

● MapReduce可以稱得上是大數(shù)據(jù)行業(yè)的第一代離線數(shù)據(jù)計算引擎,主要用于解決大規(guī)模數(shù)據(jù)集的分布式并行計算。MapReduce計算引擎的核心思想是,將計算邏輯抽象成Map和Reduce兩個階段進(jìn)行處理。

● Tez計算引擎在大數(shù)據(jù)技術(shù)生態(tài)圈中的存在感較弱,實際工作中很少會單獨使用Tez去開發(fā)計算程序。

● Spark最大的特點就是內(nèi)存計算:任務(wù)執(zhí)行階段的中間結(jié)果全部被放在內(nèi)存中,不需要讀寫磁盤,極大地提高了數(shù)據(jù)的計算性能。Spark提供了大量高階函數(shù)(也可以稱之為算子),可以實現(xiàn)各種復(fù)雜邏輯的迭代計算,非常適合應(yīng)用在海量數(shù)據(jù)的快速且復(fù)雜計算需求中。

2. 實時數(shù)據(jù)計算

業(yè)內(nèi)最典型的實時數(shù)據(jù)計算場景是天貓“雙十一”的數(shù)據(jù)大屏。數(shù)據(jù)大屏中展現(xiàn)的成交總金額、訂單總量等數(shù)據(jù)指標(biāo),都是實時計算出來的。用戶購買商品后,商品的金額就會被實時增加到數(shù)據(jù)大屏中的成交總金額中。

● Storm主要用于實現(xiàn)實時數(shù)據(jù)分布式計算。

● Flink屬于新一代實時數(shù)據(jù)分布式計算引擎,其計算性能和生態(tài)圈都優(yōu)于Storm。

● Spark中的SparkStreaming組件也可以提供基于秒級別的實時數(shù)據(jù)分布式計算功能。

他和Storm、Flink之間的區(qū)別見表4。



Storm、Spark、Flink 之間的技術(shù)選型如圖6所示。

目前企業(yè)中離線計算主要使用Spark,實時計算主要使用Flink。


五、數(shù)據(jù)分析技術(shù)框架

數(shù)據(jù)分析技術(shù)框架包括Hive、Impala、Kylin、Clickhouse、Druid、Drois等,它們的典型應(yīng)用場景如圖7所示。



Hive、Impala和Kylin屬于典型的離線OLAP數(shù)據(jù)分析引擎,主要應(yīng)用在離線數(shù)據(jù)分析領(lǐng)域,它們之間的區(qū)別見表5。


表5

● Hive的執(zhí)行效率一般,但是穩(wěn)定性極高;

● Impala基于內(nèi)存可以提供優(yōu)秀的執(zhí)行效率,但是穩(wěn)定性一般;

● Kylin通過預(yù)計算可以提供PB級別數(shù)據(jù)毫秒級響應(yīng)。

Clickhouse、Druid和Drois屬于典型的實時OLAP數(shù)據(jù)分析引擎,主要應(yīng)用在實時數(shù)據(jù)分析領(lǐng)域,它們之間的區(qū)別見表6。


● Druid和Doris是可以支持高并發(fā)的,ClickHouse的并發(fā)能力有限;Druid中的SQL支持是有限的,ClickHouse支持非標(biāo)準(zhǔn)SQL,Doris支持標(biāo)準(zhǔn)SQL,對SQL支持比較好。

● 目前Druid和ClickHouse的成熟程度相對比較高,Doris處于快速發(fā)展階段。


六、任務(wù)調(diào)度技術(shù)框架

包括Azkaban、Ooize、DolphinScheduler等。它們適用于普通定時執(zhí)行的例行化任務(wù),以及包含復(fù)雜依賴關(guān)系的多級任務(wù)進(jìn)行調(diào)度,支持分布式,保證調(diào)度系統(tǒng)的性能和穩(wěn)定性,它們之間的區(qū)別見表7。

它們之前的技術(shù)選型如圖8所示。


七、大數(shù)據(jù)底層基礎(chǔ)技術(shù)框架

大數(shù)據(jù)底層基礎(chǔ)技術(shù)框架主要是指Zookeeper。Zookeepe主要提供常用的基礎(chǔ)功能(例如:命名空間、配置服務(wù)等),大數(shù)據(jù)生態(tài)圈中的Hadoop(HA)、HBase、Kafka等技術(shù)組件的運行都會用到Zookeeper。


八、數(shù)據(jù)檢索技術(shù)框架

隨著企業(yè)中數(shù)據(jù)的逐步積累,針對海量數(shù)據(jù)的統(tǒng)計分析需求會變得越來越多樣化:不僅要進(jìn)行分析,還要實現(xiàn)多條件快速復(fù)雜查詢。例如,電商網(wǎng)站中的商品搜索功能,以及各種搜索引擎中的信息檢索功能,這些功能都屬于多條件快速復(fù)雜查詢的范疇。

在選擇全文檢索引擎工具時,可以從易用性、擴展性、穩(wěn)定性、集群運維難度、項目集成程度、社區(qū)活躍度這幾個方面進(jìn)行對比。Lucene、Solr和Elasticsearch的對比見表8。



九、大數(shù)據(jù)集群安裝管理框架

企業(yè)如果想從傳統(tǒng)的數(shù)據(jù)處理轉(zhuǎn)型到大數(shù)據(jù)處理,首先要做就是搭建一個穩(wěn)定可靠的大數(shù)據(jù)平臺。

一個完整的大數(shù)據(jù)平臺需要包含數(shù)據(jù)采集、數(shù)據(jù)存儲、數(shù)據(jù)計算、數(shù)據(jù)分析、集群監(jiān)控等功能,這就意味著其中需要包含F(xiàn)lume、Kafka、Haodop、Hive、HBase、Spark、Flink等組件,這些組件需要部署到上百臺甚至上千臺機器中。

如果依靠運維人員單獨安裝每一個組件,則工作量比較大,而且需要考慮版本之間的匹配問題及各種沖突問題,并且后期集群維護工作也會給運維人員造成很大的壓力。

于是,國外一些廠商就對大數(shù)據(jù)中的組件進(jìn)行了封裝,提供了一體化的大數(shù)據(jù)平臺,利用它可以快速安裝大數(shù)據(jù)組件。目前業(yè)內(nèi)最常見的是包括CDH、HDP、CDP等。

● HDP:全稱是 Hortonworks Data Platform。它由 Hortonworks 公司基于 Apache Hadoop 進(jìn)行了封裝,借助于 Ambari 工具提供界面化安裝和管理,并且集成了大數(shù)據(jù)中的常見組件, 可以提供一站式集群管理。HDP 屬于開源版免費大數(shù)據(jù)平臺,沒有提供商業(yè)化服務(wù);

● CDH:全稱是 Cloudera Distribution Including Apache Hadoop。它由 Cloudera 公司基于 Apache Hadoop 進(jìn)行了商業(yè)化,借助于 Cloudera Manager 工具提供界面化安裝和管理,并且集成了大數(shù)據(jù)中的常見組件,可以提供一站式集群管理。CDH 屬于商業(yè)化收費大 數(shù)據(jù)平臺,默認(rèn)可以試用 30 天。之后,如果想繼續(xù)使用高級功能及商業(yè)化服務(wù),則需要付費購買授權(quán),如果只使用基礎(chǔ)功能,則可以繼續(xù)免費使用;

● CDP:Cloudera 公司在 2018 年 10 月份收購了 Hortonworks,之后推出了新一代的大數(shù)據(jù)平臺產(chǎn)品 CDP(Cloudera Data Center)。CDP 的版本號延續(xù)了之前 CDH 的版本號。從 7.0 版本開始, CDP 支持 Private Cloud(私有云)和 Hybrid Cloud(混合云)。CDP 將 HDP 和 CDH 中比較優(yōu)秀的組件進(jìn)行了整合,并且增加了一些新的組件。

三者的關(guān)系如圖9所示。


以上內(nèi)容出自于《大數(shù)據(jù)技術(shù)及架構(gòu)圖解實戰(zhàn)派》一書。


請?zhí)峁┱鎸嵭畔⒁员阄覀兣c您聯(lián)系
公司信息
聯(lián)系人信息
留言及疑問