SAS Viya (91)

教學目標

初步了解 SAS Event Stream Processing 的基本概念。

重點概念

首先靜態和動態串流資料之間的操作差異主要在於資料儲存和分析的時間,靜態資料在處理之前皆會先儲存在資料庫中,並且會將資料分析的結果作為記錄儲存在資料庫或檔案中,以利提供更進一步的處理和分析,而動態串流資料在儲存之前會先針對事件進行處理,當每個事件在讀取時被處理和分析,並且將事件處理和分析的結果儲存在資料庫中時,並且在處理之後事件將會被丟棄。靜態和串流資料可以來自同一個資料來源,它們可以使用相同的分析進行處理,並且與相同的儲存服務一起儲存,當資料量很大,並且儲存空間有限時,分析串流資料就會非常有效。

接著所謂事件主要是組成串流資料的單個記錄, SAS Event Stream Processing 模型中的資料來源視窗會使用連接器或適配器,以及發布或訂閱 API 讀取事件,事件主要由中繼資料和欄位資料所組成,中繼資料控制載入模型的新事件如何與模型中目前的事件進行互動。而中繼資料主要由操作碼和標誌組成,欄位資料必須符合模型資料來源視窗中指定的模式。

再來所謂連接器向視窗發佈或從視窗發佈/訂閱事件串流,連接器主要在 SAS Event Stream Processing 引擎中定義和執行,至於未在模型中定義,它主要是從命令行啟動的獨立可執行程序,與連接器一樣,皆能夠在視窗中發佈或訂閱事件串流,同時發佈/訂閱 API 能夠讓我們從相同機器或網路上的另一台機器訂閱事件串流,並且 API 能夠將事件發佈到其它事件串流處理引擎、本地目錄或資料庫中。至於所謂適配器文件。此外我們可能決定使用適配器而不是連接器來發布和訂閱,主要原因可能為我們能夠在單獨的主機上執行適配器,以利減輕執行 SAS Event Stream Processing 處理模型的 CPU 負載,並且當資料以非常高的速度串流傳輸時,適配器就會是最佳的選擇。

最後模型主要定義了資料串流的處理方式,模型可以執行任務,像是計算串流資料間隔的匯總統計資訊或在儲存之前過濾的資料,模型主要使用 XML 或 C++ 撰寫,或透過 SAS Event Stream Processing Studio 建立模型。此外在模型層次結構的頂部主要是引擎,其實例化並執行項目中包含的元件,而一個引擎可以包含一個或多個項目,用於組織連續查詢,一個專案包含一個或多個連續查詢,主要提供功能模塊化,一個連續查詢包含執行資料轉換和分析的視窗,並且每個連續查詢皆包含一個或多個資料來源視窗,資料來源視窗通常連接到一個或多個衍生視窗,主要傳遞事件,延遲視窗主要檢測資料中的模式、轉換、匯總、計算和分析,並且它們可以連接到其它衍生視窗,也可以在模型外部發佈事件。

相關資源