flink time and watermark

来源:https://www.cnblogs.com/zgq25302111/archive/2019/12/21/12077853.html
-Advertisement-
Play Games

流處理中時間本質上就是一個普通的遞增欄位(long型,自1970年算起的微秒數),不一定真的表示時間。 watermark只是應對亂序的辦法之一,大多是啟髮式的,在延遲和完整性之間抉擇。(如果沒有延遲,就不夠完整;如果有延遲,極端情況就是批處理,當然完整性足夠高) org.apache.flink. ...


流處理中時間本質上就是一個普通的遞增欄位(long型,自1970年算起的微秒數),不一定真的表示時間。

watermark只是應對亂序的辦法之一,大多是啟髮式的,在延遲和完整性之間抉擇。(如果沒有延遲,就不夠完整;如果有延遲,極端情況就是批處理,當然完整性足夠高)

 

org.apache.flink.streaming.api.watermark
Class Watermark
  java.lang.Object
  org.apache.flink.streaming.runtime.streamrecord.StreamElement
  org.apache.flink.streaming.api.watermark.Watermark

@PublicEvolving
public final class Watermark extends StreamElement

  A Watermark tells operators that no elements with a timestamp older or equal to the watermark timestamp should arrive at the operator. Watermarks are emitted at the sources and propagate through the operators of the topology. Operators must themselves emit watermarks to downstream operators using Output.emitWatermark(Watermark). Operators that do not internally buffer elements can always forward the watermark that they receive. Operators that buffer elements, such as window operators, must forward a watermark after emission of elements that is triggered by the arriving watermark.
  In some cases a watermark is only a heuristic and operators should be able to deal with late elements. They can either discard those or update the result and emit updates/retractions to downstream operations.
  When a source closes it will emit a final watermark with timestamp Long.MAX_VALUE. When an operator receives this it will know that no more input will be arriving in the future.

Modifier and Type     Field and Description
static Watermark      MAX_WATERMARK
             The watermark that signifies end-of-event-time.

reference:

https://www.bilibili.com/video/av53193640/

https://ci.apache.org/projects/flink/flink-docs-release-1.9/api/java/


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在上一篇文章abp(net core)+easyui+efcore實現倉儲管理系統——ABP WebAPI與EasyUI結合增刪改查之四(三十) 中我們實現了新增組織部門信息功能,不過還存在一些BUG,如下圖。“自動展開和子級”沒有顯示,“上級組織”下拉框中沒有數據顯示。今天我們來繼續完善組織部門信... ...
  • 16.1.1 進程與程式 ·程式 (program):通常為 binary program ,放置在儲存媒體中 (如硬碟、光碟、軟盤、磁帶等), 為實體文 件的型態存在; ·進程 (process):程式被觸發後,執行者的許可權與屬性、程式的程式代碼與所需數據等都會被載入記憶體中, 操作系統並給予這個內 ...
  • 電子產品要正常工作,就離不開電源。像手機、智能手環這種消費類電子,其充電介面都是標準的接插件,不存在接線的情況,更不會存在電源接反的情況。但是,在工業、自動化應用中,有很多產品是需要手動接線的,即使操作人員做事情再認真,也難免會出錯。如果把電源線接反了,可能會導致產品被燒掉。 圖1 - 手工接線 那 ...
  • 最近發現一個問題,ps命令輸出裡面進程狀態為S+的含義,網上好多文章都說是表明進程“位於在後臺進程組”。 例如下麵這個ps命令輸出說明: 但其實這是不對的,後面有加號說明進程是“位於在前臺進程組”。也就是進程可以使用鍵盤輸出。下麵做一個試驗證明這點: 首先,在終端一個會話執行一個sleep命令,讓其 ...
  • 有些時候,一些很好的開源產品有很好的功能特征,並且能夠提供很好的服務,下麵我進行簡要記錄,以後建立新的環境的時候,可以參考: 私有雲: Seafile: https://www.seafile.com/home/ Owncloud: https://owncloud.org/ 保持更新: 保持更新, ...
  • 為了方便使用,一般伺服器都會通過配置遠程訪問來保證隨時配置伺服器,但是不正確的遠程訪問配置會對系統產生安全隱患,產生被入侵的風險。 使用安全的登錄認證方式 現代伺服器環境往往需要用戶遠程登錄,而遠程登錄本身就具有一定的安全風險————中間人攻擊。 在早期,telnet是一種常用的登錄方式,但它過於古 ...
  • 更好的樣式前往 我的Github筆記 查看 <md文檔排版不好> 數據模型 組合鍵:Table + HashKey + SortKey Table實現業務數據的隔離 HashKey決定數據在那個分片 SortKey決定數據在分片內的排序 一致性協議 使用PacificA協議,保證多副本數據的一致性。 ...
  • 最近需要更換mysql資料庫的版本,寫一篇文章,記錄一下 一、下載mysql資料庫 mysql的下載共有兩種,一種是zip壓縮文件,另一種是msi安裝程式 "官方5.7版本zip壓縮文件下載頁面" "官方5.7版本msi安裝程式下載頁面" 我這裡選擇5.7.28 Windows64位 點擊左下角直接 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...