stored process kjort fra va - analytics, business … stp og va innledning • en stored process...
TRANSCRIPT
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
STORED PROCESS KJØRT FRA
SAS VISUAL ANALYTICS
FANS I STAVANGER - 10.03.2016, MARIT FISKAAEN
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
2
STP OG VA INNLEDNING
• En stored process (STP) er et SAS program som er lagret på en server.
• I SAS Visual Analytics (VA) kan man kjøre stored processer.
• I VA er det ikke et eget kodevindu, men med denne muligheten har man stor
fleksibilitet om man f.eks. har komplekse beregninger og vil at man fra VA skal kunne
vise resultat av beregningene kjørt med ulike parameterverdier.
• Man kan så laste datasettet laget med et gitt parametervalg til LASR og så bruke VA
til å lage rapporter
• Datasettet som brukes av STP’er trenger ikke å være lastet til LASR selv om STP’en
kjøres fra VA
STP
kode EG
Link STP
VA
VA
rapport
- Beregninger,
selekteringer,…
- Kode last til LASR
- Når STP kjøres fra
VA, laste datasett til
LASR
- VA rapport basert på
datasettet lastet til
LASR
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
3
STP OG VA INNLEDNING
Vi skal se på flg.
1. STP uten prompt
2. STP med prompt
3. STP som laster datasett til LASR
4. Vi lager histogram med nye LASR data
5. STP basert på listetabell.
6. STP som inneholder egendefinerte funksjoner
7. «Stored Process Reports» fra SAS 9.3
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
STP UTEN PROMPT
STP OG VA
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
5
STP UTEN PROMPT LAGER STP I EG
Eksempel – kode EG:
Høyreklikk på Program og velg «Create Stored Process».
proc print data=sashelp.CARS
label noobs;
var Make Model Invoice;
run;
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
6
STP UTEN PROMPT SETT INN STP I VA
I VA «Rapportdesigner» velg objektet «Stored Process» og dra det over til
høyre. Velg aktuell STP og åpne.
Laget rapporten kalt:
20151215_STP_VA_rapport
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
7
STP UTEN PROMPT SETT INN STP UTEN PROMPT I VA
Rapporten som er resultat av kjøringen av STP’en åpnes så (datasett
sashelp.cars er ikke lastet til i LASR):
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
STP MED PROMPT
STP OG VA
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
9
STP MED PROMPT LAGER STP I EG
Vi setter inn STP med prompt (et så enkelt eksempel kunne
heller hatt logikk i VA, men dette er kun for illustrasjon av
muligheten for parametrisering):
Data work.CARS;
set sashelp.cars;
Invoice_ny=Invoice*&Faktor.;
run;
proc print data=work.CARS label noobs;
var Make Model Invoice Invoice_ny;
run;
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
10
STP MED PROMPT DEFINERER PROMPT I STP
Vi definerer promptet «Faktor» (numerisk) i forbindelse med at
man oppretter STP i EG:
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
11
STP MED PROMPT SETT INN STP I VA
Tilsvarende som vi gjorde for STP’en uten prompt, går vi i VA
og legger til STP
Vi ser nå at
Invoice_ny
er lik
Invoice
multiplisert
med 2.
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
STP SOM LASTER DATASETT TIL LASR
STP OG VA
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
13
STP LAST TIL LASR STP MED PROMPT SOM LASTER TIL LASR TABELL
I EG er det en egen node for
«Upload to LASR» (under «Tasks»
+ «Data»). Denne koden kan så
brukes i STP:
Dobbelklikk her,
finner kode tab
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
14
STP LAST TIL LASR SETTER INN STP I VA SOM TIDLIGERE VIST
Fyller inn prompt så kjøres STP en og vi ser at datasettet
CARS_ENDRET er lastet til LASR:
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
VA FIGUR BASERT PÅ NYTT LASR DATASETT
STP OG VA
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
16
VA FIGUR VA HISTOGRAM BASERT PÅ NY LASR TABELL
Rapporten ligger i fila «My Folder/ FANS STP/20151215_STP_VA_rapport» (sasdemo).
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
ENDRE VERDIEN FOR PROMPT I RAPPORTER
STP OG VA
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
18
ENDRE PROMPTSKJERMBILDER – VISE HVORDAN VI ENDRER VERDIENE I
PROMPT FOR RAPPORT (I RAPPORTVISNINGEN)
Fil + Vis Rapport:
Litt vanskelig å klikke på
riktig sted, for å vise
boksen. Her er det benyttet
VA 7.2.
Med VA 7.3 så må man
velge Classic design for å
endre verdi for prompt ref.
http://support.sas.com/kb/5
7/009.html
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
19
ENDRE PROMPT VA 7.3 ENDRE TIL CLASSIC DESIGN
Report viewer, application options:
Velg settings under denne:
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
STP MED PROMPT BASERT PÅ LISTETABELL
STP OG VA
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
21
VERDI FOR PROMPT
FRA LISTETABELLSTP BASERT PÅ LISTETABELL
Eksempel der vi ved å klikke i listetabell kjører STP med
parameter for raden man klikker på i listetabellen.
Kunne tenke seg at man hadde en rapport basert på en
annen tabell, der var det bilmerker med en annen type
info, så kan man klikke på rad for ytterligere informasjon
fra kjøring av STP.
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
22
VERDI FOR PROMPT
FRA LISTETABELLLAGER STP I EG
Eksempel:
1) I EG:
proc print data=sashelp.CARS
label noobs;
where make="&Merke.";
var Make Model Invoice;
run;
2) I EG - Lag STP. Her ikke lagt merke som
parameter i selve STP’en
«STP_CARS_Bilmerke». …
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
23
VERDI FOR PROMPT
FRA LISTETABELLLAGER RAPPORT I VA
4)Sett inn en listetabell – med
bilmerke3) I VA velg datasett:
I VA kalt rapporten: 20151222_STP_VA_Bilmerke
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
24
VERDI FOR PROMPT
FRA LISTETABELLKOBLING TIL STP OG PARAMETERE
Høyreklikk + Legg til kobling + Ekstern kobling:
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
25
VERDI FOR PROMPT
FRA LISTETABELLKOBLING TIL STP OG PARAMETERE
Velg «Koble til Stored Process»:
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
26
VERDI FOR PROMPT
FRA LISTETABELLKOBLING TIL STP OG PARAMETERE
Velg «Legg til en ny parameter»:
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
27
VERDI FOR PROMPT
FRA LISTETABELLKOBLING TIL STP OG PARAMETERE
Sett inn kildekolonne og makrovariabel som mål dvs. «Merke»
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
28
VERDI FOR PROMPT
FRA LISTETABELLVIS RAPPORT
I rapportvisningen ser vi om vi
dobbelklikker på et bilmerke:
Gå på file + vis rapport:
Her hadde jeg lagt inn samme link to ganger. Den ene
kan slettes.
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
29
VERDI FOR PROMPT
FRA LISTETABELLVIS RAPPORT
I report designer velg Visning + «Vis interaksjoner».
Til høyre ser vi så flg:
Resultat når
dobbelklikket:
Her kan vi slette siden fikk dobbelt med linker.
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
STP MED EGENDEFINERTE FUNKSJONER
STP OG VA
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
31STP MED
EGENDEFINERTE
FUNKSJONER
STP MED EGENDEFINERTE FUNKSJONER
• Benyttet STP med egendefinerte funksjoner
• Her forventet gjenstående levetid som er funksjon av andre funksjoner
Hvis STP feil med tomme verdier – sette
inn noe som default i STP!
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
32STP MED
EGENDEFINERTE
FUNKSJONER
EKSEMPEL PÅ FEILMELDING
Klikk her for å legge inn prompt, kjører med parameterverdier går fint. Kan
legge inn defaultverdi….
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
33STP MED
EGENDEFINERTE
FUNKSJONER
RAPPORT – SEKSJON 1
20151222_STP_VA_Etx
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
34STP MED
EGENDEFINERTE
FUNKSJONER
RAPPORT – SEKSJON 2
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
35STP MED
EGENDEFINERTE
FUNKSJONER
KODEN BRUKT TIL STP
LIBNAME LIB BASE "C:\Program Files\SASHome\SASFoundation\9.4\inttech\sample\Functions_MF";
/*
proc fcmp outlib=lib.fun.functions;
function my(a, b, logc, x) label='Dødsintensitet for en x-åring';
return ( a + b * 10 ** (logc * x));
endsub;
function lx(a, b, logc, x) label='Antall levende x-åringer';
return (10 ** (5 - b / (logc) * ((0.4342944818) ** 2) * (((10 ** logc))** (x) - 1) - (x) * a * 0.4342944818));
endsub;
function ETx(a, b, logc, x) label='Forventet gjenstående levetid for en x-åring';
omega = 110;
element = 0;
do tau = 0 To (omega - x);
element = element + my(a, b, logc, x + tau) * lx(a, b, logc, x + tau) /
lx(a, b, logc, x) * tau;
end;
return (element - 0.5 * ( my(a, b, logc, omega) * lx(a, b, logc, omega) /
lx(a, b, logc, x) * (omega - x)));
endsub;
run;
*/
/*
proc fcmp listfuncs inlib=lib.fun;
run;
*/
/*Makrovariabler, R-63 for menn:*/
/*
%let a=0;
%let b=0.000027;
%let logc=0.042;
*/
data work.aldertabell;
do alder=20 to 110 by 1;
output;
end;
run;
options cmplib=lib.fun;
data work.Forventet_rest_liv;
set work.aldertabell;
*hjlp=etx(0,0.000027,0.042,alder);
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
36STP MED
EGENDEFINERTE
FUNKSJONER
ALTERNATIVT LAGE LINK TIL STP
• Dra inn tekstboks (under «Annet»)
• Sett inn tekst
• Sett inn URL (den kan finnes f.eks. ved å søke opp STP’en fra «SAS
Stored Process Web Application»
Når man klikker på linken kommer
boksen for parametervalg fram:
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
ROW LEVEL SECURITY I VA
MAN ØNSKER KUN AT HVER GRUPPE SER EGNE TALL
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
38
ROW LEVEL
SECURITYINNLEDNING
For VA rapporter er det ofte aktuelt at kun bestemte grupper ser
egne tall (f.eks. avdeling).
Eksempel: for datasettet cars så kan det være en gruppe som kun
ser BMW:
• Opprett gruppe for BMW i SMC, Gr1_BMW
• Opprett bruker i SMC, User1_BMW
• Legge in row level security på tabellen cars_endret i VA
• Logg på med brukeren User1_BMW, ser kun rader med BMW
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
39
ROW LEVEL
SECURITYOPPRETTET GRUPPE OG BRUKER I SMC
Opprettet Gr1_BMW og User1_BMW
User1_BMW er medlem i
Gr1_BMW.
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
40
ROW LEVEL
SECURITYROW LEVEL SECURITY I VA
Fra hovedmeny velg Administrator:
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
41
ROW LEVEL
SECURITYBETINGELSE I VA
Har lagt til Gr1_BMW:
Lagt filter:
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
42
ROW LEVEL
SECURITYBETINGELSE I VA
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
43
ROW LEVEL
SECURITYEKSEMPEL PÅ RAPPORT
Har laget en rapport.
Logger på med User1_BMW
Sasdemo brukeren ser alt:
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
SCHEDULERE RAPPORT FRA VA
RAPPORT MED STP KJØRES PÅ VISSE TIDSPUNKT
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
45
SCHEDULERE
RAPPORT FRA VALAGER NY RAPPORTJOBB
Vi kan schedulere VA rapporter i rapport designer (dette kunne f.eks.
vært rapporten med STP’en vår):
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
46
SCHEDULERE
RAPPORT FRA VAVELGER MOTTAKER AV E-POST
Hvis det ikke er registrert e-
post addresser i SMC så vil
man ikke få opp mottakere.
Så lagt til e-post for
sasdemo
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
47
SCHEDULERE
RAPPORT FRA VAVELGE NÅR RAPPORTEN KJØRES
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
STP RAPPORT
NYTT FRA SAS 9.3
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
49
STP-RAPPORT INNLEDNING
• «Stored process Report» ble introdusert i SAS 9.3.
• Ny type metadataobjekt
• Stored process output er «cashed» slik at man kan se output uten
å kjøre STP’en på ny.
• Når man lager STP rapporten så kan man sette opp hvor ofte man
skal oppdatere (dvs. kjøre STP’en).
• Dette kan være nyttig om STP’en bruker lang tid på å kjøre eller
om det er data vi vet at vi ikke trenger å oppdatere mer enn på
gitte tidspunkt.
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
50
STP-RAPPORT EKSEMPEL
I SAS Management Console, SMC:
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
51
STP-RAPPORT EKSEMPEL
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
52
STP-RAPPORT EKSEMPEL
Ikonet er annerledes for en STP-rapport enn for en STP.
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
53
STP-RAPPORT EKSEMPEL
STP-Rapporten kan så legges inn i VA tilsvarende som vanlige STP’er
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
OPPSUMMERING
STP OG VA
Copyr i g ht © 2015, SAS Ins t i tu t e Inc . A l l r ights reser ve d .
55
STP OG VA OPPSUMMERT
STP’er er veldig fleksible. Kode fra et EG prosjekt kan legges inn i en
STP.
Vi har sett på noen enkle eksempler, men man kan tenke seg dette
brukt for avanserte parametriserte beregninger som er vanskelig å
legge inn i VA. Man kunne for eksempel tenke seg en stresstest av
en portefølje som gjøres basert på forskjellige parametervalg (rente,
arbeidsledighet, …).
Resultatene kan lastes til LASR tabeller. Videre kan disse tabellene
brukes til grunnlag for rapporter i VA. VA rapportene kan ha row level
security og være schedulert.
«Stored Process Report» kan brukes om man ønsker oppdatering
kun på gitte tidspunkt.