Programavimas

Snaigės apžvalga: Duomenų saugykla pagerėjo debesyje

Duomenų saugyklos, dar vadinamos įmonės duomenų saugyklomis (EDW), yra labai lygiagrečios SQL arba NoSQL duomenų bazės, sukurtos analizei. Jie leidžia jums importuoti duomenis iš kelių šaltinių ir greitai generuoti sudėtingas ataskaitas iš petabaitų duomenų.

Skirtumas tarp duomenų saugyklos ir duomenų grupės yra tas, kad paprastai duomenų saugykla apsiriboja viena tema ir vienu skyriumi. Skirtumas tarp duomenų saugyklos ir duomenų ežero yra tas, kad duomenų ežeras saugo duomenis natūraliu formatu, dažnai dėmėmis ar failais, o duomenų saugykloje duomenys saugomi kaip duomenų bazė.

Snaigė trumpai

„Snaigė“ yra visiškai reliatyvus ANSI SQL duomenų sandėlis, kuris buvo pastatytas nuo pat debesies. Jo architektūra atskiria skaičiavimą nuo saugyklos, kad galėtumėte skleisti mastelį aukštyn ir žemyn skrisdami be delsimo ar trikdžių net vykdydami užklausas. Jums reikiamas našumas pasiekiamas tiksliai tada, kai jums to reikia, ir mokate tik už naudojamą skaičiavimą. Šiuo metu „Snowflake“ veikia „Amazon Web Services“ ir „Microsoft Azure“.

„Snaigė“ yra visiškai stulpelinė duomenų bazė, vykdoma vektorizuotai, todėl ji gali patenkinti net ir pačius sudėtingiausius analitinius krūvius. Adaptyvus „Snowflake“ optimizavimas užtikrina, kad užklausos automatiškai pasiektų kuo geresnį našumą be valdomų indeksų, paskirstymo raktų ar derinimo parametrų.

„Snowflake“ gali palaikyti neribotą lygiagretumą naudodama savo unikalią kelių grupių, bendrų duomenų architektūrą. Tai leidžia keliems skaičiavimo klasteriams vienu metu veikti tais pačiais duomenimis, nepakenkiant jų našumui. „Snaigė“ gali net automatiškai mastelį apdoroti, kad būtų patenkinti įvairūs poreikiai, naudojant daugialypę virtualaus sandėlio funkciją, skaidriai pridedant skaičiavimo išteklius per didžiausią apkrovą ir sumažinant apkrovos lygį.

Snaigės konkurentai

Tarp „Snowflake in the cloud“ konkurentų yra „Amazon Redshift“, „Google BigQuery“ ir „Microsoft Azure SQL Data Warehouse“. Kiti pagrindiniai konkurentai, tokie kaip „Teradata“, „Oracle Exadata“, „MarkLogic“ ir SAP BW / 4HANA, gali būti įdiegti debesyje, patalpose ir ant prietaisų.

„Amazon Redshift“

„Amazon Redshift“ yra greitas, keičiamo dydžio duomenų saugykla, leidžianti analizuoti visus duomenis savo duomenų saugykloje ir „Amazon S3“ duomenų ežere. Jūs pateikiate užklausą „Redshift“ naudodami SQL. „Redshift“ duomenų saugykla yra sankaupos, kurios gali automatiškai įdiegti ir pašalinti talpą tuo pačiu metu užklausos įkeliant. Tačiau visi sankaupos mazgai yra numatyti toje pačioje prieinamumo zonoje.

„Microsoft Azure“ SQL duomenų saugykla

„Microsoft Azure SQL Data Warehouse“ yra debesų duomenų saugykla, kuri naudoja „Microsoft SQL“ variklį ir MPP (masiškai lygiagrečiai apdorojant), kad greitai vykdytų sudėtingas užklausas petabaitais duomenų. „Azure SQL Data Warehouse“ galite naudoti kaip pagrindinį didžiųjų duomenų sprendimo komponentą, importuodami didelius duomenis į „SQL Data Warehouse“ su paprastomis „PolyBase T-SQL“ užklausomis, tada naudodami MPP galią, kad paleistumėte didelio našumo analizę.

„Azure SQL Data Warehouse“ yra prieinama 40 „Azure“ regionų visame pasaulyje, tačiau nurodytas sandėlio serveris egzistuoja tik viename regione. Pagal poreikį galite keisti duomenų saugyklos našumą, tačiau visos vykdomos užklausos bus atšauktos ir sugrąžintos atgal.

„Google BigQuery“

„Google BigQuery“ yra be serverio, labai keičiamo dydžio ir ekonomiškai efektyvus debesų duomenų sandėlis su GIS užklausomis, atminties BI varikliu ir įmontuotu mokymuisi mašinoje. „BigQuery“ greitai vykdo SQL užklausas gigabaitais iki petabaitų duomenų ir leidžia lengvai prisijungti prie viešųjų ar komercinius duomenų rinkinius su jūsų duomenimis.

„BigQuery“ duomenų rinkinio geografinę vietą galite nustatyti tik sukūrimo metu. Visos užklausoje nurodytos lentelės turi būti saugomos duomenų rinkiniuose toje pačioje vietoje. Tai taip pat taikoma išorės duomenų rinkiniams ir saugojimo grupėms. Yra papildomų apribojimų dėl išorinių „Google Cloud Bigtable“ duomenų vietos. Pagal numatytuosius nustatymus užklausos vykdomos tame pačiame regione kaip ir duomenys.

Vietovės gali būti konkrečios vietos, pvz., Šiaurės Virdžinija, arba didelės geografinės vietovės, tokios kaip ES ar JAV. Norėdami perkelti „BigQuery“ duomenų rinkinį iš vieno regiono į kitą, turite jį eksportuoti į „Google Cloud Storage“ grupę toje pačioje vietoje kaip ir jūsų duomenų rinkinys, nukopijuoti segmentą į naują vietą ir įkelti į „BigQuery“ naujoje vietoje.

Snaigės architektūra

„Snowflake“ naudoja virtualius skaičiavimo egzempliorius savo skaičiavimo poreikiams ir saugojimo paslaugą nuolatiniam duomenų saugojimui. Snaigės negalima paleisti privačioje debesų infrastruktūroje (vietoje ar priglobtoje).

Nėra įdiegimo, kurį reikia atlikti, ir nėra konfigūracijos. Visą priežiūrą ir derinimą atlieka „Snowflake“.

„Snowflake“ naudoja nuolatinę duomenų centrinę duomenų saugyklą, prieinamą iš visų duomenų sandėlio skaičiavimo mazgų. Tuo pačiu metu „Snowflake“ apdoroja užklausas naudodamas MPP (masiškai lygiagrečiai apdorojamas) skaičiavimo grupes, kuriose kiekvienas grupės mazgas vietoje saugo dalį viso duomenų rinkinio.

Kai duomenys įkeliami į „Snaigę“, „Snaigė“ pertvarko tuos duomenis į vidinį suglaudintą, stulpelių formatą. Vidinius duomenų objektus galima pasiekti tik naudojant SQL užklausas. Galite prisijungti prie „Snowflake“ per savo žiniatinklio vartotojo sąsają, per CLI (SnowSQL), per ODBC ir JDBC tvarkykles iš tokių programų kaip „Tableau“, per natūralias programavimo kalbų jungtis ir per trečiųjų šalių jungtis BI ir ETL įrankiams.

Snaigė

Snaigės funkcijos

Saugumas ir duomenų apsauga. „Snowflake“ siūlomos saugos funkcijos skiriasi pagal leidimą. Net standartinis leidimas siūlo automatinį visų duomenų šifravimą ir daugialypio autentifikavimo bei vienkartinio prisijungimo palaikymą. „Enterprise“ papildymas periodiškai perduoda užšifruotus duomenis, o „Enterprise for Sensitive Data“ leidimas palaiko HIPAA ir PCI DSS. Galite pasirinkti, kur saugomi jūsų duomenys, o tai padės laikytis ES GDPR nuostatų.

Standartinis ir išplėstinis SQL palaikymas. Snaigė palaiko daugumą DDL ir DML, apibrėžtų SQL: 1999, taip pat operacijas, kai kurias pažangias SQL funkcijas ir SQL: 2003 analitinių plėtinių dalis (langų funkcijos ir grupavimo rinkiniai). Jis taip pat palaiko šoninius ir materializuotus rodinius, suvestines funkcijas, saugomas procedūras ir vartotojo nustatytas funkcijas.

Įrankiai ir sąsajos. Pažymėtina, kad „Snowflake“ leidžia valdyti virtualius sandėlius iš GUI arba komandinės eilutės. Tai apima sandėlių sukūrimą, dydžių keitimą (be prastovų), sustabdymą ir numetimą. Sandėlio dydžio keitimas vykdant užklausą yra labai patogu, ypač kai reikia pagreitinti per daug laiko užimančią užklausą. Kiek man žinoma, nėra įdiegta jokioje kitoje EDW programinėje įrangoje.

Ryšiai „Snowflake“ turi „Python“, „Spark“, „Node.js“, „Go“, „Net“, „JDBC“, „ODBC“ ir „dplyr-snowflakedb“ - atvirojo kodo „dplyr“ paketo plėtinių, palaikomų „GitHub“, jungtis ir tvarkykles.

Duomenų importas ir eksportas. Snaigė gali įkelti daugybę duomenų ir failų formatų. Tai apima suglaudintus failus; atribotos duomenų bylos; JSON, Avro, ORC, Parketo ir XML formatai; „Amazon S3“ duomenų šaltiniai; ir vietiniai failai. Tai gali atlikti masinį pakrovimą ir iškrovimą į lenteles ir iš jų, taip pat nuolatinį masinį krovimą iš failų.

Dalijimasis duomenimis. „Snowflake“ palaiko saugų duomenų bendrinimą su kitomis „Snowflake“ paskyromis. Tai supaprastinama naudojant nulinės kopijos lentelių klonus.

Snaigė

Snaigės pamokos

„Snaigė“ siūlo nemažai pamokymų ir vaizdo įrašų. Kai kurie padeda jums pradėti, kiti nagrinėja konkrečias temas, o kai kurie demonstruoja ypatybes.

Rekomenduoju peržiūrėti praktinę apžvalgą, aprašytą „Hands-on Lab Guide for Free Snowflake Trial“.) Tai užtruko mažiau nei valandą ir kainavo mažiau nei penkis kreditus. Tai paliko dar 195 kreditus nemokamoje bandomojoje versijoje, kurios turėtų pakakti importuoti tikrus duomenis ir išbandyti kai kurias užklausas.

Pamokoje intensyviai naudojami „Snowflake“ darbalapiai, patogus komandų ir SQL vykdymo būdas žiniatinklio vartotojo sąsajoje. Ji, be kita ko, apima duomenų įkėlimą; užklausos, rezultatų talpinimas ir klonavimas; pusiau struktūrizuoti duomenys; ir kelionės laiku duomenų bazės objektams atkurti.

Apskritai, „Snaigė“ man atrodo gana įspūdinga. Aš tikėjausi, kad tai bus gremėzdiškas, bet taip nėra. Tiesą sakant, daugelis jo duomenų saugyklos operacijų vyksta daug greičiau, nei tikėjausi, o kai yra tokia, kuri, atrodo, tikrina, galiu įsikišti ir padidinti duomenų saugyklą nenutraukdama to, kas vyksta.

Didelę mastelio dalį galima automatizuoti. Kuriant duomenų saugyklą (žr. Viršuje pateiktą ekrano kopiją) yra galimybė leisti kelis klasterius, galimybė nustatyti mastelio nustatymo politiką, galimybė automatiškai sustabdyti ir galimybė atnaujinti automatiškai. Numatytasis automatinio sustabdymo laikotarpis yra 10 minučių, o tai neleidžia sandėliui sunaudoti išteklių, kai jis nenaudojamas ilgiau. Automatinis atnaujinimas vyksta beveik akimirksniu ir įvyksta visada, kai pateikiama užklausa dėl sandėlio.

Atsižvelgiant į tai, kad „Snowflake“ siūlo 30 dienų nemokamą bandomąją versiją su 400 USD kreditu ir nereikia nieko diegti, turėtumėte sugebėti nustatyti, ar „Snowflake“ tiks jūsų tikslams, be jokių grynųjų pinigų. Aš rekomenduočiau jį pasukti.

Kaina: 2 USD / kreditas ir 23 USD / TB / mėn. Saugykla, standartinis planas, iš anksto apmokėta saugykla. Vienas kreditas yra lygus vienam mazgui * valandai, už kurį atsiskaito antrasis. Aukštesnio lygio planai yra brangesni.

Platformos: „Amazon Web Services“, „Microsoft Azure“