SAS Viya -vaihtoehto isännöityyn työhön

Viya-vaihtoehtoa etsivä ei yleensä etsi jotain asennettavaa kannettavalle. Hänellä on SAS-kielistä työtä, joka ajetaan jossain keskitetysti — selaimessa, johon joku kirjautuu, tai putkessa, joka kutsuu alustaa ja odottaa tuloksia. Jenner kattaa molemmat: isännöidyn JupyterLab-työtilan ja HTTP-päätepisteen, joka ajaa ohjelman ja palauttaa sen tulosteen.

Lyhyt vastaus

Jenner on SAS 9.4 -kielen puhdastilatoteutus, kirjoitettu Rustilla, ja se on isännöity. Tiimi kirjautuu selaimessa JupyterLab-työtilaan, avaa ohjelman, joka sillä jo on, ja ajaa sen — mitään ei asenneta kenenkään koneelle eikä SAS-lisenssiä tarvita millään kerroksella. Sama moottori vastaa HTTP:n yli, joten ajastettu työ tai tekoälyagentti voi lähettää ohjelman ja lukea takaisin lokin, tulosteen ja ajon tuottamat aineistot.

Kuka kirjautuu ja mikä ajetaan

Työtila on jaettu: analyytikko, tarkastaja ja tilastotieteilijä työskentelevät samojen tiedostojen parissa sen sijaan, että lähettelisivät aineistoja. Ohjelmat pysyvät SAS-syntaksissa — DATA-askeleet, PROC SQL, makrokieli — ja työtila lukee SAS7BDAT- ja XPT-tiedostoja suoraan, samoin CSV:tä ja Parquetia. Siellä missä kannettava todella on oikea paikka osalle työstä, sama moottori on olemassa natiivina Mac-sovelluksena: isännöity ja paikallinen eivät sulje toisiaan pois.

Mitä isännöity puoli antaa

Kolme reittiä yhteen moottoriin. Valinta on käyttöönoton kysymys, ei uudelleenkirjoituksen.

JupyterLab-työtila selaimessa

Kirjautuminen vie sinut JupyterLabiin, jossa organisaatiosi tiedostot ja Jenner-ydin ovat jo kiinni. Mitään ei asenneta kenenkään koneelle, ja siinä on yleensä koko pointti: uusi kollega saa toimivan ympäristön yhdestä selainvälilehdestä, ja lukittu yrityskannettava on yhtä hyvä asiakaspääte kuin työasema.

HTTP:n yli ajettavat ohjelmat

Moottori vastaa myös HTTP-pyyntöihin. Lähetä ohjelma ja sen syötteet, niin saat takaisin tulosteen, lokin, paluukoodin ja jokaisen ajon tuottaman aineiston jäsenneltynä JSON-muodossa. Juuri se tekee siitä käyttökelpoisen orkestroijalle, jatkuvan integraation työlle tai tekoälyagentille — yksikään niistä ei voi istua vuorovaikutteisen istunnon ääressä odottamassa, että ihminen klikkaa.

100 dokumentoitua proseduuria

Luettelo on julkaistu proseduuri kerrallaan, kullakin viitesivu, joka nimeää hyväksytyt lauseet ja valinnat. Isännöidyllä alustalla se painaa enemmän kuin otsikkoluku: ennen kuin kuorma siirtyy, kysymys on siitä, onko juuri se PROC juuri niillä valinnoilla olemassa — ja se ratkeaa lukemalla, ennen kuin kukaan allekirjoittaa mitään.

Tiedostot, jotka sinulla jo on

Jenner lukee SAS7BDAT-tiedostoja suoraan, samoin XPT:tä, CSV:tä ja Parquetia, ja kirjoittaa ne takaisin. Aineisto päätyy työtilaan ilman edeltävää muunnosvaihetta, ja tuloste voi lähteä siinä muodossa, jota seuraava vaihe odottaa.

Missä jokin muu sopii paremmin

Neljä tilannetta, joissa emme ole oikea vastaus. Sen tietäminen, missä niistä olet, on arvokkaampaa kuin ominaisuustaulukko.

Altair SLC

Altair SLC, entinen WPS, ajaa myös SAS-kielisiä ohjelmia ilman SAS-lisenssiä, ja on tehnyt sitä paljon pidempään kuin me. Siellä missä pitkä historia painaa sinulle enemmän kuin isännöity työtila — joku muu on jo törmännyt reunatapaukseesi ja saanut sen korjatuksi — se on aito peruste heidän puolestaan, ja molemmat kannattaa hinnoitella omilla ohjelmillasi.

Uudelleenkirjoitus Pythonilla tai R:llä

Jos koodipohja on pieni tai olitte muutenkin rakentamassa uudestaan, kirjoittakaa se uudelleen Pythonilla tai R:llä. Kahdenkymmenen ohjelman siirto pandasiin tai tidyverseen on kaksi viikkoa työtä ja sulkee kysymyksen pysyvästi, teknologiapinoon johon on helpompi rekrytoida. SAS-kielisen koodin ajaminen sellaisenaan voittaa silloin, kun sitä on paljon, kun se on validoitu ja kun uudelleenkirjoitus tarkoittaisi jokaisen luvun uudelleenvalidointia eikä pelkkää uudelleennaputtelua.

Pysyä siellä missä olette

SAS kuvaa Viyan alustaksi, jossa kielen päällä on visuaalisia ja mallinhallinnan työkaluja. Jos sen käyttäjät työskentelevät noissa käyttöliittymissä eivätkä koodissa, SAS-kielen moottori korvaa väärän puolen siitä mihin he koskevat, ja heidän siirtämisensä maksaa enemmän kuin tuottaa. Tiimit, joiden käyttö on ohjelmia — DATA-askeleita, proseduureja, makroja — ovat ne, joille tämä sivu on kirjoitettu.

Mitä emme kata

Jenner toteuttaa 100 dokumentoitua proseduuria ja suuren osan SAS-kielestä, eikä kumpikaan niistä ole kokonaisuus. Siellä missä työnne riippuu jostain, jota emme ole rakentaneet, se ei aja, ja sen huomaa ensimmäisenä iltapäivänä eikä projektin jälkeen. Jenner on myös nuorempi kuin tässä mainitut vaihtoehdot, ja takana on vähemmän vuosia muiden reunatapauksia. Proseduuriviite on julkaistu kokonaan, joten kattavuuden voi tarkistaa ennen kuin mihinkään sitoudutaan.

Usein kysytyt kysymykset

Jenner, jos se mihin Viyaa oikeasti käytätte on SAS-kielisten ohjelmien ajaminen. Se on Rustilla kirjoitettu SAS 9.4 -kielen puhdastilatoteutus, isännöity JupyterLab-työtilana johon tiimi kirjautuu, ja HTTP:n yli tavoitettavissa kaikelle automatisoidulle. SAS-lisenssiä ei tarvita millään kerroksella. Jos käyttönne on enimmäkseen osoita ja napsauta pikemminkin kuin koodia, yllä oleva kohta paikallaan pysymisestä on rehellisempi vastaus.

Ohjelmat kyllä. DATA-askeleet, PROC SQL, makrokieli ja 100 dokumentoitua proseduuria ajetaan Jennerillä ilman SAS-ohjelmistoa alla, koska kyseessä on itsenäinen toteutus eikä kuori joka kutsuu jotain muuta. Mukaan ei tule se, mikä ei ole ohjelma: osoita ja napsauta -käyttöliittymässä koottu sisältö ei ole SAS-kielistä koodia, joten moottorilla ei ole mitään ajettavaa.

Se on isännöity, ja siinä on päällekkäisyys. Saatte selaintyötilan, jossa JupyterLab ajetaan meidän operoimassamme kontissa, organisaation kesken jaettuna, sekä HTTP-reitin töille ja agenteille. Se on pienempi asia kuin täysi analytiikkapaketti — moottori ja paikka ajaa sitä, ei luettelo sovelluksia. Tiimille jonka työ on SAS-ohjelmia se on yleensä se puoli, joka kantaa painon.

Ne tulevat mukana. Jenner lukee SAS7BDAT-tiedostoja suoraan, samoin XPT:tä, CSV:tä ja Parquetia, ja kirjoittaa ne takaisin: aineisto laskeutuu työtilaan ilman muunnosvaihetta ja tulokset lähtevät siinä muodossa, jota kollega odottaa. Juuri se tekee mahdolliseksi siirtää yksi kuorma kerrallaan sen sijaan, että järjestettäisiin vaihtoviikonloppu jota kukaan ei halua omistaa.

Kyllä — se on HTTP-reitti, eikä se tarvitse selainta lainkaan. Ajastin, jatkuvan integraation työ tai agentti lähettää ohjelman ja sen syötteet ja saa tulosteen, lokin, paluukoodin ja aineistot JSON-muodossa ilman että väliin jää auki yhtään istuntoa. Se on sama moottori jota työtila ajaa, joten vuorovaikutteisesti kehitetty ohjelma on se ohjelma jonka putki suorittaa.

Ottakaa yksi raportti jonka tulosteen tunnistatte silmäyksellä, ajakaa se työtilassa ja verratkaa kahta tulosaineistoa PROC COMPARE -proseduurilla siihen toleranssiin, jonka itse asetatte. Työtilan sisällä se on halpa arviointi — mitään ei tarvitse asentaa eikä hankkia etukäteen — ja siitä syntyy näyttöä teidän omista luvuistanne, ei väite meidän luvuistamme. Muistikirjaksi tallennettuna vertailu on myös se aineisto, jonka validointitarkastaja voi lukea kuukausia myöhemmin.

Altair SLC ajaa myös SAS-kielisiä ohjelmia ilman SAS-lisenssiä, ja on tehnyt sitä kauan ennen meitä. Siellä missä pitkä historia painaa enemmän kuin selaintyötila, pyytäkää heiltä tarjous ja ajakaa molemmat omien ohjelmienne läpi kummankaan toimittajan ominaisuuslistan sijaan. Mieluummin valitsette oikean kuin valitsette meidät.

Joskus kannattaa. Jos SAS-koodia on vähän tai tiimi on joka tapauksessa jättämässä kielen, uudelleenkirjoitus Pythonilla tai R:llä — pandas, tidyverse — ratkaisee asian lopullisesti ja siirtää teidät pinoon johon on helpompi rekrytoida. Koodin ajaminen sellaisenaan voittaa silloin, kun sitä on paljon, kun se on validoitu ja kun uudelleenkirjoitus tarkoittaa jokaisen luvun uudelleenvalidointia eikä pelkkää uudelleennaputtelua.

Eivät, ja se joka väittää muuta ei ole laskenut. Kielen kattavuutemme on laaja, mutta siinä on aukkoja, ja niihin osuva ohjelma epäonnistuu selvästi eikä hiljaa. Proseduuriviite luettelee lause kerrallaan mitä on olemassa, ja omien ohjelmien ajaminen työtilassa ratkaisee kysymyksen kannastanne yhdessä iltapäivässä eikä hankintakierroksessa.

Meidän infrastruktuurissamme, ei teidän. Isännöity työtila tarkoittaa, että sinne laittamanne tiedostot sijaitsevat koneilla, joita me operoimme — se on vastine siitä, ettei mitään tarvitse asentaa eikä paikata. Organisaationne hallitsee pääsyä työtilaan, mikä ei ole sama asia kuin levyn omistaminen, ja ero kannattaa sanoa ääneen ennen kuin auditointi kysyy sitä. Siellä missä aineisto ei saa sijaita muiden laitteistolla, sama moottori toimii natiivina Mac-sovelluksena ja komentorivin binäärinä omilla koneillanne, eivätkä ohjelmat muutu siirryttäessä.

Ei oikeastaan. Muistikirja on paikka, jossa kirjoitetaan ohjelma ja katsotaan lokin ja tulosteen ilmestyvän viereen, eli juuri se silmukka jossa jo työskentelette. Ohjelmat pysyvät SAS-syntaksissa: muuttuu ikkuna, ei koodi — ja sille joka ei halua koskea muistikirjaan, HTTP-reitti ja komentorivi ajavat saman .sas-tiedoston koskemattomana.

Kokeile sitä yhdellä omalla ohjelmallasi

Kirjaudu työtilaan selaimessa — ei asennettavaa eikä SAS-lisenssiä.

Aloita ilmainen kokeilu