0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Spark結(jié)構(gòu)化流中的加水位線方法

汽車玩家 ? 來源:今日頭條 ? 作者:聞數(shù)起舞 ? 2020-05-03 17:28 ? 次閱讀

對于流處理引擎來說,處理延遲到達(dá)的事件是至關(guān)重要的功能。 解決這個問題的方法是加水位線的概念。 從Spark 2.1開始,結(jié)構(gòu)化流API就支持它。

什么是水位線?

加水位線是一種有用的方法,可幫助流處理引擎處理延遲。 基本上,水印是一個閾值,用于指定系統(tǒng)等待延遲事件的時間。 如果到達(dá)事件位于水位線之內(nèi),它將用于更新查詢。 否則,如果它早于水位線,它將被丟棄,并且流引擎不會對其進(jìn)行進(jìn)一步處理。

> Flooding watermarks

如何使用它?

自Spark 2.1起,水位線被引入到結(jié)構(gòu)化流API中。 您可以通過將withWatermark-Operator添加到查詢中來啟用它:

withWatermark(eventTime:String,delayThreshold:String):數(shù)據(jù)集[T]

它需要兩個參數(shù),a)一個事件時間列(必須與聚合正在處理的列相同)和b)一個閾值,用于指定應(yīng)處理多長時間的延遲數(shù)據(jù)(以事件時間為單位)。 然后,Spark將維持聚合狀態(tài),直到max eventTime — delayThreshold> T,其中max eventTime是引擎看到的最新事件時間,T是窗口的開始時間。 如果后期數(shù)據(jù)落入此閾值之內(nèi),則查詢將最終得到更新(下圖中的右圖)。 否則,它將被丟棄,并且不會觸發(fā)任何重新處理(下圖中的左圖)。

Spark結(jié)構(gòu)化流中的加水位線方法

Spark結(jié)構(gòu)化流中的加水位線方法

> Late donkey in structured word count: event dropped (left), event within watermark updates Window

值得一提的是,查詢的輸出模式必須設(shè)置為"追加"(默認(rèn))或"更新"。完全模式不能與設(shè)計中的水印結(jié)合使用,因為它需要所有 要保存的數(shù)據(jù),用于將整個結(jié)果表輸出到接收器。

可以在這里找到如何在簡單的Spark結(jié)構(gòu)化流應(yīng)用程序中使用該概念的快速演示-它是字?jǐn)?shù)統(tǒng)計(對NLP進(jìn)行了一些小的增強(qiáng)),還有其他:D

但是,為什么我要關(guān)心?

在分布式和聯(lián)網(wǎng)的系統(tǒng)中,總會有中斷的機(jī)會-節(jié)點故障,傳感器丟失連接等等。 因此,不能保證數(shù)據(jù)將按創(chuàng)建順序到達(dá)流處理引擎。 為了容錯,因此有必要處理此類亂序數(shù)據(jù)。

為了解決此問題,必須保留聚合狀態(tài)。 如果發(fā)生延遲事件,則可以重新處理查詢。 但這意味著所有聚合的狀態(tài)必須無限期地保持,這也導(dǎo)致內(nèi)存使用量也無限期地增長。 除非系統(tǒng)具有無限的資源(即無限的預(yù)算),否則在現(xiàn)實世界中這是不切實際的。 因此,加水位線是一個有用的概念,可以通過設(shè)計約束系統(tǒng)并防止其在運(yùn)行時爆炸。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    1465

    瀏覽量

    61681
  • SPARK
    +關(guān)注

    關(guān)注

    1

    文章

    105

    瀏覽量

    19845
收藏 人收藏

    評論

    相關(guān)推薦

    基于分布式對象存儲WDS的信托非結(jié)構(gòu)化數(shù)據(jù)整合平臺

    基于分布式對象存儲WDS的信托非結(jié)構(gòu)化數(shù)據(jù)整合平臺
    的頭像 發(fā)表于 08-28 09:56 ?200次閱讀
    基于分布式對象存儲WDS的信托非<b class='flag-5'>結(jié)構(gòu)化</b>數(shù)據(jù)整合平臺

    spark運(yùn)行的基本流程

    前言: 由于最近對spark的運(yùn)行流程非常感興趣,所以閱讀了《Spark大數(shù)據(jù)處理:技術(shù)、應(yīng)用與性能優(yōu)化》一書。通過這本書的學(xué)習(xí),了解了spark的核心技術(shù)、實際應(yīng)用場景以及性能優(yōu)化的方法
    的頭像 發(fā)表于 07-02 10:31 ?303次閱讀
    <b class='flag-5'>spark</b>運(yùn)行的基本流程

    Spark基于DPU的Native引擎算子卸載方案

    1.背景介紹 Apache Spark(以下簡稱Spark)是一個開源的分布式計算框架,由UC Berkeley AMP Lab開發(fā),可用于批處理、交互式查詢(Spark SQL)、實時
    的頭像 發(fā)表于 06-28 17:12 ?424次閱讀
    <b class='flag-5'>Spark</b>基于DPU的Native引擎算子卸載方案

    定期維護(hù)結(jié)構(gòu)化布線對于辦公室得重要性

    最大限度地減少網(wǎng)絡(luò)停機(jī)時間,確保最佳性能,并延長基礎(chǔ)設(shè)施的使用壽命。忽視維護(hù)可能會導(dǎo)致連接問題、數(shù)據(jù)傳輸速度變慢,甚至整個系統(tǒng)故障。 投入時間和資源進(jìn)行結(jié)構(gòu)化布線維護(hù)是一種積極主動的方法,從長遠(yuǎn)來看,可以節(jié)省
    的頭像 發(fā)表于 06-14 10:44 ?198次閱讀

    什么是結(jié)構(gòu)化網(wǎng)絡(luò)布線?結(jié)構(gòu)化網(wǎng)絡(luò)布線有哪些好處?

    在電纜領(lǐng)域,結(jié)構(gòu)化網(wǎng)絡(luò)布線這個術(shù)語經(jīng)常被提及。人們將其用作流行語,但它的真正含義是什么?結(jié)構(gòu)化布線到底是什么? 為了了解真正的含義,讓我們看它的一些相關(guān)定義。 根據(jù)光纖協(xié)會的說法,結(jié)構(gòu)化布線是由
    的頭像 發(fā)表于 04-11 11:54 ?414次閱讀

    結(jié)構(gòu)化布線的好處多嗎

    結(jié)構(gòu)化布線是網(wǎng)絡(luò)系統(tǒng)的重要組成部分,因為它為數(shù)據(jù)傳輸提供了強(qiáng)大、可擴(kuò)展且可靠的基礎(chǔ)。通過遵守全球公認(rèn)的標(biāo)準(zhǔn),結(jié)構(gòu)化布線可促進(jìn)高速連接、簡化故障排除并確保未來的可擴(kuò)展性??紤]到這些優(yōu)勢,企業(yè)應(yīng)優(yōu)先
    的頭像 發(fā)表于 04-07 11:15 ?375次閱讀

    什么是網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)化布線?

    。 什么是結(jié)構(gòu)化布線? 結(jié)構(gòu)化布線是指旨在支持網(wǎng)絡(luò)性能和可靠性的建筑基礎(chǔ)設(shè)施。它包含許多標(biāo)準(zhǔn)的較小元件(結(jié)構(gòu)化)和各種組件,包括電纜、連接器、機(jī)架和接線板,所有這些都安裝在預(yù)定義的分
    的頭像 發(fā)表于 04-07 10:58 ?306次閱讀

    Spark基于DPU Snappy壓縮算法的異構(gòu)加速方案

    Spark 在某些工作負(fù)載方面表現(xiàn)得更加優(yōu)越。換句話說,Spark 啟用了內(nèi)存分布數(shù)據(jù)集,除了能夠提供交互式查詢外,它還可以優(yōu)化迭代工作負(fù)載。Spark SQL是Spark的計算模塊
    的頭像 發(fā)表于 03-26 17:06 ?675次閱讀
    <b class='flag-5'>Spark</b>基于DPU Snappy壓縮算法的異構(gòu)加速方案

    基于DPU和HADOS-RACE加速Spark 3.x

    、Python、Java、Scala、R)等特性在大數(shù)據(jù)計算領(lǐng)域被廣泛使用。其中,Spark SQL 是 Spark 生態(tài)系統(tǒng)的一個重要組件,它允許用戶以結(jié)構(gòu)化數(shù)據(jù)的方式進(jìn)行數(shù)據(jù)處理
    的頭像 發(fā)表于 03-25 18:12 ?1204次閱讀
    基于DPU和HADOS-RACE加速<b class='flag-5'>Spark</b> 3.x

    科通技術(shù)推出基于FPGA的應(yīng)用設(shè)計結(jié)構(gòu)化技術(shù)

    隨著汽車技術(shù)的飛速發(fā)展,汽車功能的復(fù)雜性對處理芯片的算力及IO端口數(shù)量提出了更高的要求。作為一家正在進(jìn)行IPO排隊的公司,深圳市科通技術(shù)股份有限公司(以下簡稱:科通技術(shù))積極應(yīng)對市場挑戰(zhàn),針對新一代汽車輔助駕駛的需求,研發(fā)了一系列基于FPGA的應(yīng)用設(shè)計結(jié)構(gòu)化技術(shù)。
    的頭像 發(fā)表于 02-02 09:34 ?465次閱讀

    CFD 設(shè)計利器:結(jié)構(gòu)化和非結(jié)構(gòu)化網(wǎng)格的組合使用

    在CFD的發(fā)展歷史,結(jié)構(gòu)化網(wǎng)格出現(xiàn)最早,至今仍在使用。結(jié)構(gòu)化網(wǎng)格有幾個主要優(yōu)點,如精度高、生成速度快、單元分布均勻。有些工具擅長繪制這類網(wǎng)格,例如CadenceFidelityAutomesh
    的頭像 發(fā)表于 12-23 08:12 ?1493次閱讀
    CFD 設(shè)計利器:<b class='flag-5'>結(jié)構(gòu)化</b>和非<b class='flag-5'>結(jié)構(gòu)化</b>網(wǎng)格的組合使用

    使用關(guān)系數(shù)據(jù)庫的半結(jié)構(gòu)化數(shù)據(jù)

    NoSQL革命已經(jīng)進(jìn)入了關(guān)系世界。您可能正在使用關(guān)系數(shù)據(jù)庫,但仍必須查詢和理解隱藏在文本列、JSON或 XML文檔的半結(jié)構(gòu)化數(shù)據(jù)。
    的頭像 發(fā)表于 12-20 10:46 ?569次閱讀
    使用關(guān)系數(shù)據(jù)庫<b class='flag-5'>中</b>的半<b class='flag-5'>結(jié)構(gòu)化</b>數(shù)據(jù)

    基于體系結(jié)構(gòu)和基于的DFT方法

    基于架構(gòu)和基于的DFT方法 ASIC設(shè)計平均門數(shù)的增加迫使設(shè)計團(tuán)隊花費(fèi)20%到50%的ASIC開發(fā)工作量測試相關(guān)的問題,以實現(xiàn)良好的測試覆蓋率。雖然遵循設(shè)計測試規(guī)則被認(rèn)為是一種良好的做法,但是
    的頭像 發(fā)表于 11-10 17:01 ?480次閱讀

    分布式融合存儲解決方案驅(qū)動非結(jié)構(gòu)化數(shù)據(jù)多模計算

    隨著5G、AI、大數(shù)據(jù)等新一代信息技術(shù)在千行百業(yè)深度應(yīng)用,非結(jié)構(gòu)化數(shù)據(jù)呈來源多樣、維度豐富、數(shù)據(jù)量爆炸式增長的特征,數(shù)據(jù)體量從早期的TB級、PB級過渡到現(xiàn)今的EB級。據(jù)IDC預(yù)測
    的頭像 發(fā)表于 10-30 19:45 ?631次閱讀
    分布式融合存儲解決方案驅(qū)動非<b class='flag-5'>結(jié)構(gòu)化</b>數(shù)據(jù)多模計算

    對與性能比較低的51單片機(jī),結(jié)構(gòu)化編程性能提升多少?

    對與性能比較低的51單片機(jī),結(jié)構(gòu)化編程性能提升多少
    發(fā)表于 10-26 06:21