CSA1.4:支援SQL流批一體化

2020 年 10 月 Cloudera 收購了 Eventador,Cloudera Streaming Analytics (CSA) 1。3。0 於 2021 年初發布,該版本是從收購中合併 SQL Stream Builder (SSB) 的第一個版本,它將豐富的 SQL 處理帶到已經很強大的 Apache Flink 產品中。

團隊的重點轉向將 Flink 資料定義語言( DDL) 和批處理介面帶入 SSB。我們希望利用最新的上游 Flink 版本中令人興奮的發展,併為 SSB 新增重要的功能。對於客戶而言,這在 Cloudera 堆疊中開闢了大量新機會,以將現有資料足跡與流媒體資料來源相結合。

我們很高興地宣佈 CSA 1。4。0 – 具有統一的流媒體和批處理介面。我們相信這項新功能將為物聯網、金融、製造等領域的用例開啟全新的功能。這使客戶能夠建立獨特的 ETL 流、實時資料倉庫和建立有價值的資料來源,而無需大規模重新設計基礎設施。

為什麼是批處理+流媒體?

長期以來,我們一直被告知批處理和流(有界和無界系統)是正交技術——一種參考架構,其中流媒體為資料湖提供養料,僅此而已。其中批處理用於檢查流的有效性(lambda),或者我們需要將所有內容都考慮為流(kappa)。

但在戰壕中,作為資料從業者,我們想要更多。我們希望能夠在我們的邏輯中處理批處理源和流媒體源,並擁有工具和 (SQL) 語法來輕鬆處理它們。我們希望能夠以簡單的方式輕鬆整合現有企業資料來源和高速/低延遲資料流。我們需要靈活地處理批處理 API 和流 API 以及無縫讀取和寫入它們的連線性。我們需要進行試驗、迭代,然後部署無需大量資料重放即可擴充套件和恢復的處理器。我們希望在可能的情況下自動推斷模式,並在需要時使用豐富的工具來構建它們。

最終,業務並不關心源資料的形式,我們需要一個框架來快速輕鬆地交付資料產品,而無需新增大量基礎設施或需要下游資料庫。這種架構沒有一個花哨的名字——主要是因為它應該一直是這樣運作的。因此,CSA 1。4 使構建這些資料產品變得輕而易舉。

CSA1.4:支援SQL流批一體化

Flink 的一點歷史

Cloudera Steaming Analytics 由 Apache Flink 提供支援,包括 SQL Stream Builder 和核心 Flink 引擎。但是,您可能不知道 Apache Flink 從一開始就是一個批處理框架。然而,Flink 很早就透過兩個獨立的 API 接受了批處理和流媒體。Flink 改進提案 131重新定義了 Flink API,重點關注同一 API 下有界/無界處理的統一。以前,必須選擇一個API或另一個 API。隨著 Flip-131 的引入,處理模式將完全從 table API 下的程式中抽象出來——允許開發人員編寫將兩種處理正規化巧妙結合的程式。Flink 一直專注於正確的結果,並支援一次處理。將引擎的強大功能與限時連線語法相結合,為我們提供了使用簡單連線語法查詢有界和無界資料的選項。這是一個完整而徹底的遊戲規則改變者。

SQL Stream Builder 滿足有界查詢

與 Flink 本身相比,SQL Stream Builder 最初是作為一個純粹的流介面。從 CSA 1。4 開始,SSB 允許執行查詢以連線和豐富來自有界和無界源的流。SSB 可以從 Kudu、Hive 和 JDBC 源加入以豐富流。隨著時間的推移,我們將繼續新增更多有界的源和接收器。SSB 一直能夠加入多個數據流,但現在它也可以透過批處理源進行豐富。

資料定義語言 (DDL)

新功能的核心是將 Flink DDL 併入 SSB。表是用Schema(推斷的或指定的)定義的,然後可以像任何其他源一樣在它們上執行連續 SQL。此外,可以自動訪問 Cloudera Data Platform 中的源。

讀取和豐富批處理資料

例如,我們在這裡豐富了測量製造系統測試狀態的資料流。我們用來自 (b) 的員工資料豐富了流 (a)。我們利用 Flink 語法為表指定時間(proctime()),並指定一個連線鍵。

還可以在一個語句中加入多個源,包括流到流的連線:

寫入批處理系統

SSB 也可以作為接收器寫入批處理系統。這不僅可以用於儲存某些計算的結果,還可以保持計算的邏輯狀態。例如,為您因欺詐而關閉的帳戶保留分類帳 - 這樣您就不會重新發送未來的請求。要寫入接收器,就像定義一個表並將其選擇為接收器一樣簡單。

CSA1.4:支援SQL流批一體化

CSA1.4:支援SQL流批一體化

解鎖新的用例和架構

藉助 CSA 1。4 提供的新功能,新的用例以及降低延遲和加快上市時間的新功能成為可能。

分散式實時資料倉庫

——透過物化檢視將流資料作為事實與批次資料作為維度進行連線。例如,執行豐富的點選流分析,或將感測器資料與歷史測量值結合起來。SSB 中的新 DDL 介面提供了從CDP 堆疊中的任何位置定義流和批處理源並使用連續 SQL 連線它們的功能。

資料科學

——分析需要上下文。例如,透過使用筆記本中 Python 模型的歷史記錄豐富行為流,為客戶實時提供個性化體驗。SQL Stream Builder 為物化檢視提供了一個簡單的 REST 介面,可以輕鬆地與筆記本內的 Python 和 Pandas 整合- 因此資料科學家可以專注於本地工具中的小而有價值的資料集,而不必解析流資料的流水。

實時製造能力

——在製造中,能夠無縫地處理來自整個企業的資料來源,然後實現儀表板的檢視可以消除浪費、控制成本並提高質量。例如,將歷史站故障率與當前遙測相結合,以在Cloudera Dataviz或 Grafana 中顯示預測輸出。

總結

我們希望您和我們一樣對流資料的未來感到興奮。該團隊不知疲倦地將Cloudera Streaming Analytics 1。4推向市場,並釋放出將批處理和流相結合的新功能。您還可以在我們的部落格上深入瞭解該版本的一些細節。

我們還很高興地宣佈,我們在 2021 年第二季度的最新 Forrester Wave 流分析中被評為表現強勁的公司。

立即下載您的報告副本。

原文作者:Kenny Gorman

TAG: 批處理FlinkSQLSSBapi