• 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…

  • Insert, Update, Delete w Snowflake’u – wpływ na mikro-partycje?

    Jak bazy kolumnowe przechowują fizycznie dane omówiłem tutaj. W tym wpisie omówię jak manipulacja danymi wpływa na już utworzoną tabelę. Teoria Insert a mikro-partycje Mikro-partycje w Snowflake’u są niemutowalne. Nie można ich edytować w miejscu, a jednak baza umożliwia dodawanie nowych wierszy, ich edycję i usuwanie. Załóżmy, że dodajemy do tabeli z poprzedniego wpisu wiersz z nową transakcją (IDTransakcji = 7). Teoretycznie zapis wiersza odbywa się w nowej partycji…

  • Bazy kolumnowe- jak przechowują tabele?

    Żeby efektywnie korzystać z baz kolumnowych, takich jak Snowflake, kluczowe jest zrozumienie jak one przechowują dane. Przedstawię to na podstawie wspomnianego Snowflake’a. Architektura kolumnowa jednak działa praktycznie tak samo we wszystkich bazach kolumnowych jak i indeksie columnstore w MS SQL Server. Jeśli wiesz już jak tabele są materializowane w bazach kolumnowych zajrzyj też do wpisu, gdzie opisałem podstawowe rodzaje tabel w Snowflake’u. Teoria Dla uproszczenia przykład…

  • Podstawy języka T-SQL – Itzik Ben-Gan: Recenzja

    Usłyszałem o tej książce słuchając któregoś z nagrań Brenta Ozara i postanowiłem do niej zajrzeć. Już od pierwszego rozdziału zacząłem żałować, że nie usłyszałem o niej wcześniej. Ta książka unormowała mi podstawy funkcjonowania SQL Server i umożliwiła zrozumienie bardziej zaawansowanych elementów SQL. O książce Mimo, że tytuł książki zawiera słowo „Podstawy”, to książka zawiera bardzo szeroki zakres wiedzy. Książkę wchłonąłem bardzo szybko dzięki łatwemu językowi i świetnym przykładom zastosowania kodu. Na końcu…