Leo Yeh's Blog

SAS 資料管理 (10)

教學目標

初步了解 SAS 平台中分散式平行分析的基本概念。

重點概念

首先在 SAS 平台進行分散式平行分析主要有兩種類型,分別為:

  1. SAS High-Performance:主要是針對統計、預測、最佳化、…等進行分散式的平行處理。
  2. SAS LASR Analytic Server:主要是針對 SAS Visual Analytics、SAS Visual Statistics 和 SAS In-Memory Statistics 進行分散式的平行處理。

接著 SAS LASR Analytic Server 主要是個分析平台,並且能夠同時讓多個使用者平行存取 In-Memory 中的資料。像是 SAS In-Memory Statistics 主要就會需要 SAS LASR Analytics Server 進行分散式的資料平行處理,並且在 SAS In-Memory Statistics 的資料引擎,主要有三種類型,請參考下表:

SASHDAT HADOOP SASIOLA
In-Memory Analytics Base SAS In-Memory Analytics
PROC LASR PROC SQL PROC IMSTAT
HDFS - SAS Data Set HDFS - Hive Table HDFS - Hive Table/Text File

請注意 SASHDAT 和 HADOOP 皆是資料永久儲存在 HDFS 資料節點中,至於 SASIOLA 則是當將資料載入至記憶體中,以利多個使用者或處理程序進行使用。

再來當我們需要操作 In-Memory 中的資料時,主要有三個主要的操作,分別為:

  1. 探索資料表:主要是透過 WHERE 子句將資料表中的資料進行篩選。
  2. 建立新變數:主要是透過 COMPUTE 陳述式增加永久計算欄位至 In-Memory 資料表中,並且透過 FETCH 從 In-Memory 資料表中中取得資料。
  3. 關聯資料表:主要是透過 SCHEMA 陳述式在伺服器中根據單一事實資料表和一至多個維度資料表定義星形綱要,並且透過 PROMOTE 陳述式將暫存 In-Memory 資料表轉換為永久 In-Memory 資料表。

最後除了 SAS LASR Analytic 產品主要提供 In-Memory 統計之外 SAS High-Performance 產品也主要提供分析服務,但是它不會將資料持續保留至記憶體中,而是當需要進行分析時,才將資料載入記憶體中進行運算,當完成之後就會關閉和釋放資源,像是透過 HPIMPUTE 處理遺失值、HPSAMPLE 處理樣本資料、HPSUMMARY 產生摘要報表、… 等 SAS High-Performance 的分析操作。

相關資源

⬅️ Go back