programmering/klog på sas netværk...• excel til sas • eksempler på import, ods, xlxs libname...

85
Copyright © SAS Institute Inc. All rights reserved. Programmering/Klog på SAS Netværk 4/3-2020 - Aarhus

Upload: others

Post on 02-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Programmering/Klog på SAS Netværk4/3-2020 - Aarhus

Page 2: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

• Velkomst

• Nyheder i SAS • v. Frans Holm, SAS

• Fordele ved de forskellige editorer (display manager, EG, SAS Studio)• v. Barbara Olsen, SAS

• Vlatin1/9 vs. UTF8• Kodeeksempler på hvad det kan betyde for dit output

• v. Barbara Olsen, SAS

• Secure - hvad betyder det for din kode (sftp, https)• v. Sara Armandi, SAS

• Excel til SAS• Eksempler på Import, ODS, xlxs libname

• v. Sara Armandi, SAS

• Afslutning

• Frokost

• Hvordan koder man i Viya – lidt teori og eksempler? • v. Frans Holm, SAS

Dagsorden

Page 3: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Hvorfor FANS?

• Netværk

• Vidensdeling

• Vise Nyheder

• Vise muligheder

• ”Best” Practice

• Inspiration

• Øge værdien & anvendelsen af SAS (ROI – ROY)

• Hyggeligt/sjovt/spændende

SAS

&

JER

Page 4: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

LodtrækningVind en sas-ting

Page 5: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Nyheder i SASFrans Holm (SAS)

Page 6: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Nyt fra SAS

• EG kursus - What's New

• 3 timer in-house eller on-site

• Ny e-bog : https://support.sas.com/en/books/free-books.html

• sas.com/fans-dk

• Folkemødet

• What’s new in SAS 9.4 M6…

• AD synkronisering – Microsoft opdatering

• SAS dag – hos jer

Page 7: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Fordele ved de forskellige editorer (display manager, EG, SAS Studio)

Barbara Olsen (SAS)

Page 8: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Agenda

• Editors:

o SAS

o EG

o SAS Studio

o Notepad++(+)

o https://blogs.sas.com/content/sasdummy/2017/08/25/npp-with-sas/

Page 9: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

PAUSEVi begynder igen kl. 10:15

Page 10: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Vlatin1/9 vs. UTF8Barbara Olsen (SAS)

Page 11: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Agenda

• Encoding – hvor støder man på det?

• DBCS (DoubleByteCharacterSystem) (MBCS (MultiByteCharacterSystem)) vs SBCS (SingleByteCharacterSystem)

Page 12: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Encoding – hvor støder man på det?

Page 13: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Encoding – hvor støder man på det?

Page 14: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Encoding – hvor støder man på det?

Page 15: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Encoding – hvor støder man på det?

Page 16: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Encoding – hvor støder man på det?

Page 17: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

DBCS (MBCS) vs SBCS

Page 18: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

DBCS(MBCS) vs SBCS

Windows std. Wlatin-1 /Windows-1252

UnixLatin1

Unix (sas install standard)Latin9

Page 19: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Et par eksemplerTekst filer

• Session WLatin1 • Session UTF-8data navne;

Infile "<TextFileANSI.txt>";

length Navn $20;

input navn $;

LNavn = length(navn);

run;

data navne;

infile "<TextFileUTF8.txt>";

length Navn $20;

input navn $;

LNavn = length(navn);

run;

data navne;

Infile "<TextFileANSI.txt>";

length Navn $20;

input navn $;

LNavn = length(navn);

run;

data navne;

infile "<TextFileUTF8.txt>";

length Navn $20;

input navn $;

LNavn = length(navn);

run;

INFILE WLatin1.sas

Page 20: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Et par eksemplerTekst filer - Fixed

• Session WLatin1 • Session UTF-8data navne;

Infile "<TextFileANSI.txt>";

length Navn $20;

input navn $;

LNavn = length(navn);

run;

data navne;

infile "<TextFileUTF8.txt>";

length Navn $20;

input navn $;

LNavn = length(navn);

run;

data navne;

infile "<TextFileANSI.txt>"

encoding='wlatin1';

length Navn $20;

input navn $;

KLNavn = Klength(navn);

LNavn = length(navn);

run;

data navne;

infile "<TextFileUTF8.txt>";

length Navn $20;

input navn $;

LNavn = length(navn);

KLNavn = Klength(navn);

run;

INFILE UTF-8.sas

Page 21: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Et par eksemplerSAS Data

• Session WLatin1 • Session UTF-8data navne;

set fans.navne_wlatin;

LNavn = length(navn);

KLNavn = KLength(navn);

run;

data navne;

set fans.navne_utf8;

LNavn = length(navn);

KLNavn = KLength(navn);

run;

data navne;

set fans.navne_wlatin;

LNavn = length(navn);

KLNavn = KLength(navn);

run;

data navne;

set fans.navne_utf8;

LNavn = length(navn);

KLNavn = KLength(navn);

run;

SET WLatin1.sas

Page 22: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Et par eksemplerSAS Data – pas på længder

• Session WLatin1 • Session UTF-8data frugt;

set fans.frugt_L1;

run;

data frugt;

set fans.frugt_u8;

run;

data frugt;

set fans.frugt_L1;

run;

data frugt;

set fans.frugt_u8;

run;

SET2 WLatin1.sas

Page 23: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Et par eksemplerSAS Data – pas på længder – måske løsning

• Session WLatin1 • Session UTF-8data frugt;

set fans.frugt_L1;

run;

data frugt;

set fans.frugt_u8;

run;

/* CVP: Character Variable Padding */

/* Default CVPMULTIPLIER = 1,5 */

libname t cvp '<path>';

data frugt;

set t.frugt_L1;

run;

data frugt;

set fans.frugt_u8;

run;

SET2 UTF-8.sas

Page 24: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

DBCS(MBCS) vs SBCS

Page 25: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

PAUSEVi begynder igen kl. 11:20

Page 26: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Secure - hvad betyder det for din kode(sftp, https)Sara Armandi (SAS)

Page 27: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

– Hvad betyder det for din kode (SFTP, HTTPS)

Sara Armandi

SecureSara Armandi

Page 28: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 29: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

HTTP

HTTPSFTP

SFTP

Encryption

Authorization

SSL

SSH

TLS

Page 30: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 31: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 32: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 33: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 34: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 35: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 36: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 37: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 38: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 39: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 40: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 41: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 42: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 43: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 44: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 45: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

HTTP Procedure: Using HTTPS

• In SAS 9.4M3, the FTP access method also supports Secure FTP (FTPS). FTPS includes full support for the Transport Layer Security (TLS) and Secure Socket Layer (SSL) cryptographic protocols, including the use of server-side public key authentication certificates and client-side authorization certificates.

• https://go.documentation.sas.com/?docsetId=lestmtsglobal&docsetTarget=p0v0ijxl1k6d4bn16cshtic7u4i3.htm&docsetVersion=9.4&locale=en#n0ypyegm0s59vln1wc9ghi3krygu

• Details

Page 46: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

FILENAME Statement: FTP vs FTPS

• For both SAS 9.4 (beginning with SAS 9.4M3) and the full SAS Viya deployment, secure communication over HTTP (HTTPS) is provided globally by default.

• https://go.documentation.sas.com/?docsetId=proc&docsetTarget=p19qqqyq9te9u3n1oq8fbdta7dqt.htm&docsetVersion=9.4&locale=en

Page 47: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

More Info

• https://blogs.sas.com/content/sgf/2013/11/20/how-to-use-encryption-in-base-sas-9-4/

• https://www.youtube.com/watch?v=EDvARXCu3VQ

Page 48: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Excel til SASEksempler på Import, ODS, xlxs libname

Sara Armandi (SAS)

Page 49: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Agenda

• Import

• Peg-klik

• Kode

• Libname Engine

• Export

• Peg-klik

• Kode

• Libname Engine

• Rapporter ODS

Page 50: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Importer Excel – Enterprise GuidePeg-Klik

• File -> Import Data:

Page 51: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Importer Excel – Enterprise GuideKode

• PROC IMPORT

• Datafile=

• Out=

• DBMS=

• REPLACE

• GETNAMES=YES

Page 52: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Importer Excel – Enterprise GuideLibname Engine

• LIBNAME Engine:

• EXCEL

• XLSX

Page 53: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Exporter til Excel – Enterprise GuidePeg-Klik

• Export Data:

Page 54: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Exporter til Excel – Enterprise GuideKode

• PROC EXPORT

• Data=

• Outfile=

• DBMS=

• LABEL

• REPLACE

Page 55: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Exporter til Excel – Enterprise GuideLibname Engine

• LIBNAME Engine:

• EXCEL

• XLSX

Page 56: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Exporter til Excel – Enterprise GuideODS

• ODS EXCEL

• FILE=

• OPTIONS(

- Froozen_headers

- Sheet_name

- Autofilter

- …….

• Excel formatering

• Excel formler

Page 57: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

AfslutningFrans Holm (SAS)

Page 58: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Netværksmødersas.com/fans -> Network Meetings

2020

- 4/3 Programmerings netværk – Aarhus

- 12/3 Visual Analytics netværk - København

- 13/3 Visual Analytics netværk – Aarhus

- 25/3 Webinar - SAS Data preparation & SAS studio Features and Functions

- 29/3 SAS Global Forum – Washington DC

- 23/4 Sådan anvender vi SAS – Aarhus

- 29/4 Webinar - Walkthrough of the Local SAS Forum programs. 2 divided tracks FI/SE

- 13/5 Webinar - Walkthrough of the Local SAS Forum programs. 2 divided tracks DK/NO

- 27/5 SAS Forum - København

- 17/6 Webinar - Version Control

Page 59: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Hvordan anvender jeg SAS?5 min. oplæg…

Page 60: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 61: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

SAS Global Forum 2020

• Events

• Welcome reception – Sunday afternoon

• Nordic dinner – Monday evening

• Knowledge Sharing

• Lunch – knowledge sharing

• Meeting with R&D

• Meet Ron Agresta – Director R&D Data Management

• Sightseeing

• Sunday: Arlington & National Mall

• Running: Saturday and Monday morning

Nordic Add-ons

Page 62: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Page 63: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

• Support• https://support.sas.com

• Dokumentation• https://support.sas.com/en/documentation.html

• Youtube• https://www.youtube.com/user/SASsoftware

• https://www.youtube.com/sasusers (NYHED)

• Webinar – Nordisk vs. Globale• https://www.sas.com/sas/events/nordic/nordic-webinars.html

• https://www.sas.com/da_dk/webinars.html

• https://www.sas.com/en_us/learn/ask-the-expert-webinars.html

• Proceedings Global forum• https://www.sas.com/en_us/events/sas-global-forum/program/proceedings.html

• https://www.lexjansen.com/cgi-bin/xsl_transform.php?x=sgf2018

• SAS Nyhedsbreve• https://www.sas.com/da_dk/news/e-newsletters.html

• FANS• sas.com/fans

• https://www.sas.com/sas/events/nordic/fans-nordic-sas-user-group.html#

• LinkedIN• https://www.linkedin.com/learning/topics/sas

• Uddannelse• https://www.sas.com/da_dk/training/overview.html

Hvor kan du finde viden om

SAS software?

Page 64: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

LodtrækningVind en sas-ting

Page 65: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

sas.com

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Tak for i dagvi ses fans

Husk evaluering

Page 66: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Hvordan koder man i Viya?Frans Holm (SAS)

Page 67: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Emner

• SAS beregningsmotorer/runtime environments

• 4 Rules to Understand CAS Management of In-Memory Data

• Lidt teori om CAS/CASLIB

• Programmering i CAS

• CAS

• CASLIB

• Proc CASUTIL

Page 68: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Arkitektur overblik

Application Services (Microservices)

Runtime Environments

APIs /UIs

MVA CAS ESP In-DB

Data Access

Security, Governance, Administration

Host Environments

Products / SolutionsPython

RJavaLua

REST APIs

SAS codeSAS interfaces

Streaming

Cloud

Hadoop

Database

Customer IntelligenceRisk

Fraud & Security

AnalyticsVisualization

Data Management

On-Premises, Private, Public, Hybrid Cloud

...

Page 69: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

SAS Viya

Servers

Programming run-time

Services

Infrastructure Servers

Analytic Engines

CAS

ESP

SPRE

Microservices

Web Applications

SAS Cache Locator

SAS Cache Server

SAS Configuration Server

Apache HTTP Server

SAS Infrastructure Data Server

SAS Message Broker

SAS Secret Manager

SAS Workspace

Server and SAS

Object Spawner

SAS/CONNECT

Server & Spawner

Embedded Web

Application Server

SAS Launcher

Server

SAS Compute

Server

MAS

ElasticSearch

Components & Services

69

Page 70: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Analytic Engines

70

The Analytic Engines:

• CAS: Cloud Analytic Services

• SPRE: SAS Programming Runtime Environment

• ESP: Event Stream Processing

• MAS: Micro Analytic Scoring

• Elastic Search: OpenSource search and indexing

Analytic Engines

CAS

ESP

SPRE

MAS

ElasticSearch

Page 71: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

SAS Launcher Server and Service

• The SAS Launcher Server is used to start processes in a SAS Viya environment - just as the SAS Object Spawner is used to start processes in SAS 9

• The SAS Launcher Service is a SAS Viya microservice that exposes a REST interface to - start processes using a launcher server

- define launcher contexts

Page 72: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

SAS Compute Server and Service

• The SAS Compute Server is a back-end server process that provides access to SAS Foundation in a SAS Viya environment - just as a Workspace Server does with SAS 9

• The SAS Compute Service is a SAS Viya microservice that exposes a REST interface to - talk to a compute server

- define compute contexts

Page 73: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

4 Rules to Understand CAS Management of In-Memory Data

• № 1. CAS analyzes data in SASHDAT format, regardless of the original source

• № 2. All in-memory data is memory mapped to a locally-accessible backing store

• № 3. The OS, not CAS, moves data to/from the backing store

• № 4. CAS_DISK_CACHE is where all replicated copies of data are stored

Page 74: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

CAS/CASLIB

Page 75: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

REST OF THE DISK

OS SWAP

Memory & CAS

• When CAS writes to memory, it actually writes to “buffer cache*” as opposed to writing to a dedicated memory space

• CAS data in memory is not static, data moves from disk in and out of memory as required

• This means CAS:

• Will never run out of memory

• Won't waste memory

• Could thrash if memory is tight

• Always has to have the data on "local" disk for reloading data blocks that are no longer in memory

CAS Disk CacheOr SASHDAT

RAM (buffer cache)

Disk

RAM (dedicated)Physical memory

*buffer cache=file cache=page cache

CAS

Page 76: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

CAS_DISK_CACHEDefault Use

• CAS_DISK_CACHE:

• Acts a part of CAS’ total memory space for working with data

• Enables flexibility to work with data over time as well as failure resilience

• Is used (or not) depending on many factors including: data provider, data format, encryption, programming directives, etc.

• Rule of thumb:

• If the original source is unencrypted SASHDAT which can be m-mapped by the Workers on locally accessible disk, then CAS_DISK_CACHE is not used as an in-memory backing store for that data load.

Page 77: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Data MovementSerial transfer with data from a SAS runtime CAS client

CONTROLLER WORKER WORKER WORKER

cas1.site.com cas2.site.com cas3.site.com cas4.site.comviya1.site.com

Infrastructure services

SPRE

SAS Viya

A B C

CAS_DISK_CACHE

In memory (RAM)

CAS

A TableB C

Communication

Data transfer

C A B

Page 78: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

In memory tables

Page 79: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

CASLIB

Page 80: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Programmering i Viya

Page 81: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Programmering i Viya

• Intet nyt – du kan det samme

• Datastep & Proc’s

• Og alligevel …

• Regler:

• Data skal være i CAS for at kunne bruge CAS

• Ikke alt gøres på samme måde i CAS

Page 82: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Kode

• CAS

• CASLIB

• Proc CASUTIL

• List

• Load

• Save

• Deletesource

• Contents

• Se: ”Viya_kode_eksempler.sas”

Page 83: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Spørgsmål?????

• Hvorfor bliver et CASlib ikke allokeret til et Libname?

• Hvilke filer er på disk under CASUSER?

• Gemmer LOAD filerne?

• Loader SAVE tabellen i memory?

• Hvilke datasæt er tilgængelige på CASUSER in-memory?

• efter start af ny session?

• Hvilke datasæt kan jeg se i Visual Analytics?

• Hvor mange rækker er der i outputtet?

• Hvordan er outputtet sorteret?

Page 84: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Viya tegning

Data

Data

CAS

ComputeServer

Visual Analytics

SASStudio

CAS_DISK_CACHECAS CAS_DISK_CACHECAS CAS_DISK_CACHE

Page 85: Programmering/Klog på SAS Netværk...• Excel til SAS • Eksempler på Import, ODS, xlxs libname • v. Sara Armandi, SAS • Afslutning • Frokost • Hvordan koder man i Viya

Copyright © SAS Inst itute Inc. A l l r ights reserved.

Links

• https://support.sas.com//en/software/sas-viya.html

• https://go.documentation.sas.com/?cdcId=pgmsascdc&cdcVersion=9.4_3.5&docsetId=pgmsashome&docsetTarget=home.htm&locale=en

• https://communities.sas.com/t5/SAS-Communities-Library/CAS-data-distribution-DUPLICATE-a-REPLICATION-using-COPIES-Can/ta-p/368796