Leo Yeh's Blog

SAS Viya (47)

教學目標

初步了解如何透過 SAS Enterprise Guide 工具軟體連線至 SAS Viya 3.4 平台進行商業分析的相關應用開發。

重點概念

首先許多使用 SAS 的客戶大都已經使用 SAS Enterprise Guide 工具軟體進行商業分析,同時企業也有導入 SAS Viya 3.4 平台時,我們該如何透過 SAS Enterprise Guide 工具軟體連線至 SAS Viya 3.4 平台中的 CAS 呢?對於使用者而言,其實僅需要在 SAS Enterprise Guide 工具軟體新增程式,並且輸入以下指令就夠正常連線至 CAS 進行商業分析的相關應用開發,請注意版本必須為 SAS 9.4M5 平台以上才能夠支援。

連線至 CAS 的程式

1
2
options casport=5570 cashost="SAS Viya 3.4 平台網址";
cas casauto;

但是企業環境中通常會產生例外事件,像是以下錯誤訊息,導致 SAS Enterprise Guide 工具軟無法正常與 CAS 建立連線。

憑證錯誤訊息

1
2
3
4
ERROR: The TCP/IP negClientSSL support routine failed with status 807ff008.
ERROR: Failed to connect to host 'SAS Viya 3.4 平台網址', port 5570.
ERROR: Unable to connect to Cloud Analytic Services SAS Viya 3.4 平台網址 on port 5570. Verify connection parameters and
retry.

接著當我們碰到類似的問題資訊時別害怕,請先檢查 SAS Viya 3.4 平台的防火牆連接埠 5570 和企業負載平衡器的防火牆連接埠 5570 是否皆已經正常開通,若是已經正常開通下一步就是需要將 SAS Viya 3.4 平台中「/opt/sas/viya/config/etc/SASSecurityCertificateFramework/cacerts/」目錄下的「vault-ca.crt」憑證檔,透過 SAS 部署工具將憑證匯入至 SAS 9.4M5 平台中,請注意「vault-ca.crt」憑證檔主要包括根憑證和中繼憑證,因此主要有兩組「——-BEGIN CERTIFICATE——-」和「——-END CERTIFICATE——」,所以需要先將「vault-ca.crt」憑證檔透過文字工具分割為二個憑證檔案,並且按照根憑證和中繼憑證的順序進行匯入即可。當憑證檔匯入至 SAS 9.4M5 平台中時理應就能夠正常連線至 CAS 進行商業分析的相關應用開發。

但是企業環境中通常會產生例外事件,像是以下錯誤訊息,導致 SAS Enterprise Guide 工具軟無法正常與 CAS 建立連線。

帳號錯誤訊息

1
2
3
ERROR: Connection failed. Server returned: SAS Logon Manager authentication failed: Access denied.
ERROR: Unable to connect to Cloud Analytic Services SAS Viya 3.4 平台網址 on port 5570. Verify connection parameters and
retry.

再來當我們碰到類似的問題資訊時別害怕,請先檢查 SAS Viya 3.4 平台中是否已經有建立對應 SAS 9.4M5 平台登入帳號的 LDAP 帳號和作業系統帳號,若是沒有請建立帳號和密碼完全一模一樣的 LDAP 帳號和作業系統帳號,此時就能夠正常連線至 CAS 進行商業分析的相關應用開發。

成功連線訊息

1
2
3
4
5
NOTE: The session CASAUTO connected successfully to Cloud Analytic Services SAS Viya 3.4 伺服器網址 using port 5570. The UUID 
is 2960e957-5705-ee43-9970-f48620fe19bd. The user is sasdemo01 and the active caslib is CASUSER(sasdemo01).
NOTE: The SAS option SESSREF was updated with the value CASAUTO.
NOTE: The SAS macro _SESSREF_ was updated with the value CASAUTO.
NOTE: The session is using 0 workers.

最後我們就透過 SAS Enterprise Guide 工具軟體連線至 CAS 執行 DATA STEP 程式,請參考以下程式碼,因此若是既有 SAS 使用者,若是已經升級至 SAS 9.4M5 平台,此時就能夠透過 SAS Enterprise Guide 工具軟體連線至 CAS 執行 DATA STEP 程式,以利進行商業分析的相關應用開發。

CAS 程式碼

1
2
3
4
5
6
7
8
9
10
11
12
13
14
options casport=5570 cashost="SAS Viya 3.4 伺服器網址";
cas casauto sessopts=(caslib='casuser');
libname mycas cas;
caslib _all_ assign;
proc casutil outcaslib='casuser';
load data=sashelp.cars;
run;

data mycas.cars2 / sessref=casauto;
set mycas.cars;
if mpg_city > 25 then eff='Y';
else eff='N';
put 'Thread number: ' _threadid_

'on worker node ' _hostname_;
run;

總結既有 SAS 使用者建議升級至 SAS 9.4M5 平台之後,同時導入 SAS Viya 3.4 平台,除了能夠進行商業分析的相關應用開發之外,更能夠透過 SAS Viya 3.4 平台中人工智慧應用為企業帶來更多的商業價值。

相關資源

⬅️ Go back