最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

阿里巴巴工程師告訴你Flink 可以做什么?它為什么這么火?

2020-07-09 16:39 作者:自學(xué)Python的小姐姐呀  | 我要投稿


什么?你還不知道啥是Flink?那么通過(guò)下面這篇他的經(jīng)歷,一起了解一下Flink吧!

不知道你是否有過(guò)和我類似的經(jīng)歷?

我是 2018 年 6 月加入公司,一直負(fù)責(zé)監(jiān)控平臺(tái)的告警系統(tǒng)。之后,我們的整個(gè)監(jiān)控平臺(tái)架構(gòu)中途換過(guò)兩次,其中一次架構(gòu)發(fā)生了巨大的變化。我們監(jiān)控告警平臺(tái)最早的架構(gòu)如下圖所示:


這個(gè)架構(gòu)的挑戰(zhàn)難點(diǎn)在于:

  • 海量的監(jiān)控?cái)?shù)據(jù)(Metric & Log & Trace 數(shù)據(jù))實(shí)時(shí)寫(xiě)入 ElasticSearch;

  • 多維度的監(jiān)控指標(biāo)頁(yè)面展示(Dashboard) 查 ElasticSearch 的數(shù)據(jù)比較頻繁;

  • 不斷遞增的告警規(guī)則需要通過(guò)查詢 ElasticSearch 數(shù)據(jù)來(lái)進(jìn)行判斷是否要告警。

從上面的幾個(gè)問(wèn)題我們就可以很明顯的發(fā)現(xiàn)這種架構(gòu)的瓶頸就在于 ElasticSearch 集群的寫(xiě)入和查詢能力,在海量的監(jiān)控?cái)?shù)據(jù)(Metric & Log & Trace 數(shù)據(jù))下實(shí)時(shí)的寫(xiě)入對(duì) ElasticSearch 有極大的影響。

我依然清楚記得,當(dāng)時(shí)經(jīng)常因?yàn)閷?xiě)入的問(wèn)題導(dǎo)致 ElasticSearch 集群掛掉,從而讓我的告警和監(jiān)控頁(yè)面(Dashboard)歇菜(那會(huì)老被噴:為啥配置的告警規(guī)則沒(méi)有觸發(fā)告警?為啥查看應(yīng)用的 Dashboard 監(jiān)控頁(yè)面沒(méi)數(shù)據(jù))。我也很無(wú)奈啊,只想祈禱我們的 ElasticSearch 集群穩(wěn)一點(diǎn)。


01

初次接觸 Flink

在如此糟糕的架構(gòu)情況下,我們挺過(guò)了幾個(gè)月,后面由于一些特殊的原因,我們監(jiān)控平臺(tái)組的整體做了一個(gè)很大的架構(gòu)調(diào)整,如下圖:


主要做了四點(diǎn)改變:

  • 接入 Flink 集群去消費(fèi) Kafka 數(shù)據(jù),告警的 Flink Job 消費(fèi) Kafka 數(shù)據(jù)去判斷異常點(diǎn),然后做告警

  • Metric & Trace 數(shù)據(jù)存儲(chǔ)到 ElasticSearch,之前還存儲(chǔ)在 ElasticSearch 中的有 Log 數(shù)據(jù)

  • Log 數(shù)據(jù)存儲(chǔ)到 Cassandra

  • Dashboard 查詢數(shù)據(jù)增加 API 查詢 Cassandra 的日志數(shù)據(jù)


原先因?yàn)?Metric & Trace & Log 的數(shù)據(jù)量一起全部實(shí)時(shí)寫(xiě)入到 ElasticSearch 中,對(duì) ElasticSearch 的壓力很大,所以我們將 Log 的數(shù)據(jù)拆分存儲(chǔ)到 Cassandra 中,分擔(dān)了一些 ElasticSearch 的寫(xiě)入壓力。但是過(guò)后我們發(fā)現(xiàn)偶爾還會(huì)出現(xiàn)數(shù)據(jù)實(shí)時(shí)寫(xiě)入到 ElasticSearch 集群把 ElasticSearch 寫(xiě)掛的情況。所以那會(huì)不斷調(diào)優(yōu)我們的寫(xiě)入數(shù)據(jù)到 ElasticSearch 的 Flink Job,然后也對(duì) ElasticSearch 服務(wù)端做了不少的性能調(diào)優(yōu)。另外那會(huì)我們的監(jiān)控?cái)?shù)據(jù)是以 10s 一次為單位將采集的數(shù)據(jù)發(fā)上來(lái)的,后面我們調(diào)整了下數(shù)據(jù)采集的策略(變成 30s 一次為單位采集數(shù)據(jù)),采取多種調(diào)優(yōu)策略后,終于將我們的 ElasticSearch 弄穩(wěn)定了。


02

遇到 Flink 相關(guān)的挑戰(zhàn)


替換成這種新架構(gòu)后,由于組里沒(méi)人熟悉 Flink,再加上那會(huì)兒 Flink 的資料真的很少很少,所以當(dāng)時(shí)在組里對(duì) Flink 這塊大家都是從 0 開(kāi)始學(xué)習(xí),于大家而言挑戰(zhàn)還挺大的。


那時(shí)候我們跑在 Flink 上面的 Job 也遇到各種各樣的問(wèn)題:

  • 消費(fèi) Kafka 數(shù)據(jù)延遲

  • checkpoint 失敗

  • 窗口概念模糊、使用操作有誤

  • Event Time 和 Processing Time 選擇有誤

  • 不知道怎么利用 Watermark 機(jī)制來(lái)處理亂序和延遲的數(shù)據(jù)

  • Flink 自帶的 Connector 的優(yōu)化

  • Flink 中的 JobManager 和 TaskManager 經(jīng)常掛導(dǎo)致 Flink Job 重啟

  • Flink 集群模式的選型

...


因?yàn)榕龅降母鞣N各樣的問(wèn)題,所以才會(huì)促使我們不斷地學(xué)習(xí) Flink 的原理和內(nèi)部機(jī)制,然后慢慢去解決上面遇到的各種問(wèn)題,并逐步穩(wěn)定我們監(jiān)控平臺(tái)運(yùn)行的 Flink Job。

03

為什么要學(xué)習(xí) Flink?

隨著大數(shù)據(jù)的不斷發(fā)展,對(duì)數(shù)據(jù)的及時(shí)性要求越來(lái)越高,實(shí)時(shí)場(chǎng)景需求也變得越來(lái)越多,主要分下面幾大類:



那么為了滿足這些實(shí)時(shí)場(chǎng)景的需求,衍生出不少計(jì)算引擎框架,現(xiàn)有市面上的大數(shù)據(jù)計(jì)算引擎的對(duì)比如下:



可以發(fā)現(xiàn)無(wú)論從 Flink 的架構(gòu)設(shè)計(jì)上,還是從其功能完整性和易用性來(lái)講都是領(lǐng)先的,再加上?Flink 是阿里巴巴主推的計(jì)算引擎框架,所以從去年開(kāi)始就越來(lái)越火了!雖然市面上講 Flink 的太少太少,國(guó)內(nèi)的中文資料太欠缺,已有的幾本書(shū)籍也不甚詳盡,但是國(guó)內(nèi)在阿里的推動(dòng)下,我相信 Flink 會(huì)越來(lái)越火的,并且阿里內(nèi)部也將 Flink 做了一定的優(yōu)化和修改,叫 Blink,今年年初也將源碼貢獻(xiàn)到 Flink 上面,后面在 Flink 1.9 版本會(huì)將 Blink 的功能進(jìn)行合并到 Flink 上去。目前,阿里巴巴、騰訊、美團(tuán)、華為、滴滴出行、攜程、餓了么、愛(ài)奇藝、有贊、唯品會(huì)等大廠都已經(jīng)將 Flink 實(shí)踐于公司大型項(xiàng)目中,帶起了一波 Flink 風(fēng)潮,勢(shì)必也會(huì)讓 Flink 人才市場(chǎng)產(chǎn)生供不應(yīng)求的招聘現(xiàn)象。


04

我為什么要寫(xiě) Flink 專欄?


在這個(gè)過(guò)程中我持續(xù)記錄自己的 Flink 學(xué)習(xí)之路,目前已經(jīng)對(duì)外公布了 20+ 篇 Flink 的個(gè)人學(xué)習(xí)博客,同時(shí)好多對(duì) Flink 感興趣的童鞋也加我一起討論問(wèn)題。每天群里的童鞋會(huì)提很多遇到的 Flink 問(wèn)題,但是我發(fā)現(xiàn)得到的回答比較少,其實(shí)這并不是因?yàn)槿豪锎罄胁换钴S,而是因?yàn)榇蠹覍?duì) Flink 的了解還不是很多,比如有的是大數(shù)據(jù)工程師但之前是搞 Spark 這塊的,有的是轉(zhuǎn)大數(shù)據(jù)開(kāi)發(fā)的后端開(kāi)發(fā)工程師,有的是對(duì) Flink 這塊比較感興趣的研究生等。因?yàn)樽约壕褪菑?Flink 小白過(guò)來(lái)的,所以知道初學(xué)者可能會(huì)遇到的哪些問(wèn)題。當(dāng)你回首的時(shí)候,你可能會(huì)發(fā)現(xiàn),這么簡(jiǎn)單的問(wèn)題自己當(dāng)時(shí)那么費(fèi)力地折騰了半天都出不來(lái)。這種時(shí)候要是有人指點(diǎn)一下,可以節(jié)省多少功夫??!所以自己在心里萌生了一個(gè)想法:寫(xiě)一個(gè) Flink 專欄幫助大家盡快地從小白階段過(guò)渡到入門階段,然后再?gòu)娜腴T到能夠?qū)?Flink 用上,在生產(chǎn)環(huán)境真正把你的 Flink Job 運(yùn)行起來(lái),再做到能夠根據(jù)你生產(chǎn)環(huán)境出現(xiàn)的錯(cuò)誤進(jìn)行排查并解決,還能根據(jù)你的 Job 的運(yùn)行狀況進(jìn)一步優(yōu)化!



阿里巴巴工程師告訴你Flink 可以做什么?它為什么這么火?的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
静宁县| 奉新县| 武威市| 莫力| 施秉县| 织金县| 白朗县| 道孚县| 土默特左旗| 沙雅县| 永仁县| 富锦市| 民乐县| 邵东县| 三明市| 米脂县| 巴南区| 民勤县| 灵宝市| 尚志市| 深州市| 青河县| 宾阳县| 龙州县| 宜君县| 梁河县| 宿迁市| 张家川| 湖南省| 奉节县| 墨竹工卡县| 图木舒克市| 海城市| 临猗县| 民权县| 铜山县| 大冶市| 类乌齐县| 上蔡县| 独山县| 新民市|