Alternativa k SAS Viya pro hostovanou práci

Kdo hledá alternativu k Viya, obvykle nehledá něco, co se instaluje na notebook. Má práci v jazyce SAS, která běží někde centrálně — prohlížeč, do kterého se někdo přihlásí, nebo pipeline, která zavolá platformu a čeká na výsledky. Jenner pokrývá obojí: hostovaný pracovní prostor JupyterLab a HTTP koncový bod, který program spustí a vrátí jeho výstup.

Krátká odpověď

Jenner je clean room implementace jazyka SAS 9.4 napsaná v Rustu a je hostovaná. Tým se v prohlížeči přihlásí do pracovního prostoru JupyterLab, otevře program, který už má, a spustí ho — na žádném počítači se nic neinstaluje a v žádné vrstvě není potřeba licence SAS. Tentýž stroj odpovídá i přes HTTP, takže naplánovaná úloha nebo agent s umělou inteligencí může poslat program a načíst zpět log, výpis i datové sady, které běh vytvořil.

Kdo se přihlašuje a co běží

Pracovní prostor je sdílený: analytik, kontrolor i statistik pracují nad stejnými soubory místo toho, aby si posílali datové sady. Programy zůstávají v syntaxi SAS — kroky DATA, PROC SQL, makrojazyk — a prostor čte SAS7BDAT a XPT přímo, vedle CSV a Parquetu. Tam, kde je pro část práce notebook skutečně to pravé místo, existuje tentýž stroj jako nativní aplikace pro Mac: hostované a lokální se nevylučují.

Co dává hostovaná strana

Tři cesty k jednomu stroji. Která z nich, to je otázka nasazení, ne přepisování.

Pracovní prostor JupyterLab v prohlížeči

Po přihlášení jste v JupyterLabu, se soubory své organizace a s již připojeným jádrem Jenner. Na žádném počítači se nic neinstaluje, a v tom je obvykle celý smysl: nový kolega dostane funkční prostředí z jedné záložky prohlížeče a zamčený firemní notebook je stejně dobrý klient jako pracovní stanice.

Programy spouštěné přes HTTP

Stroj odpovídá i na HTTP požadavky. Pošlete program a jeho vstupy a dostanete zpět výpis, log, návratový kód a každou datovou sadu, kterou běh vytvořil, jako strukturovaný JSON. Díky tomu je použitelný z orchestrátoru, z úlohy průběžné integrace nebo od agenta s umělou inteligencí — nikdo z nich nemůže sedět před interaktivní relací a čekat, až člověk klikne.

100 zdokumentovaných procedur

Katalog je zveřejněn proceduru po proceduře, každá má referenční stránku s výčtem příkazů a voleb, které přijímá. Na hostované platformě to váží víc než číslo v titulku: než se zátěž přesune, otázka zní, zda tam ta konkrétní PROC s těmi konkrétními volbami je — a rozhodne se to čtením, dřív než kdokoli něco podepíše.

Soubory, které už máte

Jenner čte SAS7BDAT přímo, spolu s XPT, CSV a Parquetem, a zapisuje je zpět. Datová sada se do pracovního prostoru dostane bez předchozího kroku konverze a výstup může odejít ve formátu, který očekává další krok.

Kde se lépe hodí něco jiného

Čtyři situace, ve kterých nejsme správná odpověď. Vědět, ve které jste, má větší cenu než tabulka funkcí.

Altair SLC

Altair SLC, dříve WPS, rovněž spouští programy v jazyce SAS bez licence SAS a dělá to podstatně déle než my. Tam, kde je pro vás dlouhá historie důležitější než hostovaný pracovní prostor — na váš hraniční případ už narazil někdo jiný a nechal ho opravit — je to skutečný argument v jejich prospěch a obě varianty byste měli nacenit na vlastních programech.

Přepsání do Pythonu nebo R

Pokud je základna kódu malá nebo jste ji stejně chtěli postavit znovu, přepište ji do Pythonu nebo R. Přenést dvacet programů do pandas nebo tidyverse jsou dva týdny práce a otázku to zavře natrvalo, na technologii, do které se snáz nabírá. Spouštět kód v jazyce SAS tak, jak je, vítězí, když je ho hodně, když je validovaný a když by přepsání znamenalo znovu validovat každé číslo, ne jen ho přepsat.

Zůstat tam, kde jste

SAS popisuje Viya jako platformu s vizuálními nástroji a správou modelů nad jazykem. Pokud lidé, kteří ji používají, pracují v těchto rozhraních, a ne v kódu, nahrazuje stroj pro jazyk SAS nesprávnou polovinu toho, čeho se dotýkají, a jejich přesun stojí víc, než přinese. Týmy, jejichž používání jsou programy — kroky DATA, procedury, makra — jsou ty, pro které je tato stránka psaná.

Co nepokrýváme

Jenner implementuje 100 zdokumentovaných procedur a velkou část jazyka SAS, a ani jedno z toho není celek. Tam, kde vaše práce závisí na něčem, co jsme nepostavili, neběží, a zjistíte to první odpoledne, ne až po projektu. Jsme také mladší než alternativy zmíněné zde, s menším počtem let cizích hraničních případů za sebou. Referenční příručka procedur je zveřejněná celá, takže pokrytí lze ověřit dřív, než se k čemukoli zavážete.

Časté dotazy

Jenner, pokud to, k čemu Viya skutečně používáte, je spouštění programů v jazyce SAS. Je to clean room implementace jazyka SAS 9.4 napsaná v Rustu, hostovaná jako pracovní prostor JupyterLab, do kterého se tým přihlašuje, a dostupná přes HTTP pro vše automatizované. V žádné vrstvě není potřeba licence SAS. Pokud je vaše používání spíš klikací než kódové, poctivější odpovědí je výše uvedená část o zůstat tam, kde jste.

Programy ano. Kroky DATA, PROC SQL, makrojazyk a 100 zdokumentovaných procedur běží na Jenneru bez softwaru SAS pod sebou, protože jde o nezávislou implementaci, ne o nadstavbu, která volá něco jiného. Co se nepřenese, je všechno, co není program: obsah poskládaný v klikacím rozhraní není kód v jazyce SAS, takže stroj nemá co spustit.

Je hostovaný, a právě tam se to překrývá. Dostanete pracovní prostor v prohlížeči, kde JupyterLab běží v kontejneru, který provozujeme my, sdílený v rámci organizace, a k tomu cestu přes HTTP pro úlohy a agenty. Je to menší věc než celý analytický balík — stroj a místo, kde ho spustit, ne katalog aplikací. Pro tým, jehož prací jsou programy v SAS, to bývá ta polovina, která nese váhu.

Půjdou s vámi. Jenner čte SAS7BDAT přímo, spolu s XPT, CSV a Parquetem, a zapisuje je zpět: datová sada přistane v pracovním prostoru bez kroku konverze a výsledky odejdou v podobě, kterou kolega očekává. Právě díky tomu jde přesouvat jednu zátěž po druhé místo víkendového přepnutí, které nikdo nechce mít na svědomí.

Ano — to je cesta přes HTTP a nepotřebuje vůbec žádný prohlížeč. Plánovač, úloha průběžné integrace nebo agent pošle program a jeho vstupy a dostane výpis, log, návratový kód a datové sady jako JSON, aniž by mezitím zůstávala otevřená relace. Je to tentýž stroj, jaký běží v pracovním prostoru, takže program, který někdo napsal interaktivně, je program, který spustí pipeline.

Vezměte jeden report, jehož výstup poznáte na první pohled, spusťte jej v pracovním prostoru a porovnejte obě výstupní datové sady procedurou PROC COMPARE až na toleranci, kterou si zvolíte. Uvnitř pracovního prostoru je to levné vyhodnocení — není co instalovat ani co předem pořizovat — a vzniká z něj důkaz o vašich vlastních číslech, ne tvrzení o našich. Uložené jako notebook je srovnání zároveň podkladem, který si za pár měsíců přečte validační kontrolor.

Altair SLC rovněž spouští programy v jazyce SAS bez licence SAS a dělá to dávno před námi. Tam, kde dlouhá historie váží víc než pracovní prostor v prohlížeči, si vyžádejte nabídku a proti sobě postavte obě řešení na vlastních programech, ne na seznamu funkcí kteréhokoli z dodavatelů. Raději ať si vyberete to správné, než abyste si vybrali nás.

Někdy ano. Pokud je kódu v SAS málo nebo tým jazyk stejně opouští, přepsání do Pythonu nebo R — pandas, tidyverse — věc uzavře nadobro a postaví vás na technologii, do které se snáz nabírá. Nechat kód běžet tak, jak je, vítězí, když je ho hodně, když je validovaný a když by přepsání znamenalo znovu validovat každé číslo místo pouhého přepsání.

Ne, a kdo tvrdí opak, nepočítal. Naše pokrytí jazyka je široké, ale má mezery, a program, který na některou narazí, selže zřetelně, ne potichu. Referenční příručka procedur vypisuje příkaz po příkazu, co existuje, a spuštění vlastních programů v pracovním prostoru zodpoví otázku pro váš majetek za jedno odpoledne místo za jeden nákupní cyklus.

Na naší infrastruktuře, ne na vaší. Hostovaný pracovní prostor znamená, že soubory, které do něj vložíte, leží na strojích, které provozujeme my — to je protihodnota za to, že není co instalovat ani co záplatovat. Vaše organizace řídí přístup do pracovního prostoru, což není totéž jako držet disk, a ten rozdíl stojí za to vyslovit dřív, než se na něj zeptá audit. Tam, kde datová sada nesmí ležet na cizím hardwaru, běží tentýž stroj jako nativní aplikace pro Mac a jako binárka do příkazové řádky na vašich vlastních strojích, a programy se při přechodu nemění.

Vlastně ne. Notebook je místo, kde napíšete program a vedle sledujete log a výstup, tedy přesně ta smyčka, ve které už pracujete. Programy zůstávají v syntaxi SAS: mění se okno, ne kód — a kdo se notebooku raději nedotkne, spustí přes HTTP nebo z příkazové řádky tentýž soubor .sas beze změny.

Vyzkoušejte to na jednom z vlastních programů

Přihlaste se do pracovního prostoru v prohlížeči — není co instalovat a není potřeba licence SAS.

Začít zkušební období zdarma