• Constrainty w Snowflake’u?

    Constrainty, czyli ograniczenia, są ważnym elementem w bazach danych. Ich celem jest zapewnienie poprawności danych poprzez ograniczenie wartości, jakie można zapisywać w tabelach przy użyciu komend INSERT, UPDATE i DELETE. Snowflake wspiera 4 typy ograniczeń: ALE… Snowflake egzekwuje jedynie ograniczenie Not Null. Czym są poszczególne ograniczenia i jakie są ich różnice między bazami transakcyjnymi a Snowflake’iem? Primary Key Klucze Główne umożliwiają jednoznaczne zidentyfikowanie…

  • Co musisz umieć, żeby dobrze wykorzystać dbt?

    dbt jest niezwykle prostym narzędziem do zapanowania nad analityczną bazą danych. Jego elementy, zalety i przewagę nad graficznymi narzędziami ETL w kwestiach transformacji danych opisałem w tym wpisie. Żeby płynnie i bezproblemowo wykorzystać możliwości dbt musisz znać podstawy kilku rzeczy: a żeby zadbać o jakość i wygodę pracy przydadzą się jeszcze: Wiersz poleceń Obecnie większość interakcji z komputerami odbywa się poprzez interfejs graficzny, jednak przy programowaniu i wykorzystaniu…

  • Co to jest dbt (data build tool)?

    Mierzysz się może z którymś z poniższych problemów? dbt może pomóc rozwiązać powyższe problemy. To lekkie open-source’owe narzędzie służące do organizacji i zarządzania Transformacjami danych w procesie ELT. Jest zbudowane wokół Twoich plików .sql lub .py definiujących modele w Twojej bazie danych. Dostępna jest darmowa wersja core i płatna usługa chmurowa. Wersja core nie ustępuje możliwościami wersji chmurowej, jednak wymaga włożenia większej pracy w architekturę rozwiązania i jej…

  • Widoki Zmaterializowane w Snowflake’u

    Co to jest widok zmaterializowany? Widok zmaterializowany to nic innego, jak wstępnie przeliczony zestaw danych na podstawie definicji zapisanej w widoku. Snowflake przechowuje widoki zmaterializowane tak samo jak tabele. Definicja tworzenia widoku zmaterializowanego jest dość prosta: Żeby z nich skorzystać musisz mieć przynajmniej edycję Enterprise Snowflake’a. Zalety widoków zmaterializowanych Wady widoków zmaterializowanych Kiedy rozpatrzeć wykorzystanie widoku zmaterializowanego? Zgodnie z zaleceniami bezpośrednio od Snowflake’a rozpoczęcie…

  • Ile kosztuje Snowflake?

    Snowflake – płacisz za to, z czego korzystasz. Czyli za co właściwie? To już ten moment – przenosisz hurtownię danych do Snowflake’a. W końcu nie trzeba tam utrzymywać kosztownej architektury, kupować podzespołów, aktualizować oprogramowania. Wszystkie zalety korzystania z chmury. W tym wpisie opiszę za co zapłacisz korzystając ze Snowflake’a. Zanim zabierzemy się za dokładne omówienie jak ogarnąć ile w ogóle potencjalnie wyniesie faktura od Snowflake’a polecam zajrzeć najpierw tutaj, gdzie opisuję…

  • Czym są wirtualne kolumny w Snowflake?

    Wiedzieliście, że Snowflake utrzymuje pewne funkcjonalności w “tajemnicy”? Jedną z takich funkcjonalności są kolumny wirtualne, których definicji i opisu próżno szukać w oficjalnej dokumentacji (poza drobnymi wzmiankami dotyczącymi bezpieczeństwa danych). Szukając ich przez google trafisz w pierwszej kolejności na wpisy w community Snowflake’a i artykuł w Medium. Dowiedziałem się o nich czytając świetną książkę “Data Modeling with Snowflake” autorstwa Serge Gershkovich’a. Jak zdefiniować wirtualną kolumnę? Zróbmy sobie przykładową tabelę,…

  • Jakie rodzaje tabel są w Snowflake’u?

    Jakie rodzaje tabel są w Snowflake’u?

    Różne cele do zrealizowania i ich cena. Korzystanie z rozwiązań chmurowych generują koszty… i warto nad nimi panować dobierając odpowiednie narzędzia do wyznaczonego celu.Snowflake udostępnia dużo rodzajów tabel zależnie od Twoich potrzeb. Do wybrania odpowiedniego rodzaju tabeli przydadzą się odpowiedzi na pytania: Z tego wpisu dowiesz się: Zajrzyj też do zapoznania się z wpisem o tym jak bazy kolumnowe przechowują tabele. Stanowi on dobre uzupełnienie wiedzy o tabelach w Snowflake’u. 3 podstawowe…

  • Snowflake – Architektura

    Architektura Snowflake’a, ale zanim przejdziemy do niej opiszę 3 wcześniejsze podejścia. W końcu, żeby coś bardziej docenić i zrozumieć warto to porównać z alternatywnymi rozwiązaniami. Architektura Tradycyjna Tutaj wszystko jest dzielone wspólnie: procesor, RAM, dysk. Problemem tego podejścia jest skalowalność. Możesz rozbudować fizyczny serwer o najmocniejsze procesory, najszybszy dysk, więcej szybkiej pamięci RAM, jednak takie rozwiązanie ma swoje ograniczenia. Procesy ETL, ad-hoc’owe zapytania analityczne…

  • Po co modelować dane analityczne?

    Na początku warto odpowiedzieć na pytanie po co w ogóle w firmie dane?Do analizy procesów, wydajności, finansowej itd. Ogólnie firma powinna wiedzieć co się w niej dzieje i gdzie zmierza. Bez analizy danych prowadzenie firmy odbywa się na oślep. Modelowanie ma służyć uproszczeniu skomplikowanych systemów. Opakować procesy, definicje, przepływy pracy i logikę organizacji w warstwę spójnych i czytelnych danych i ich definicji. Podczas budowania modelu danych kluczowe znaczenie ma przełożenie na wyniki biznesowe. Nie powinniśmy…