Miejsce architektury Data Vault 2.0 w hurtowniach danych

Slides:



Advertisements
Podobne prezentacje
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Advertisements

Indeksy w bazie danych Oracle
Procedury wyzwalane Procedura wyzwalana (ang. trigger) - stanowi kod użytkownika przechowywany wewnątrz bazy i uruchamiany w określonych sytuacjach np.
Modelowanie przypadków użycia
Opis metodyki i procesu produkcji oprogramowania
Bazy danych II Instrukcja SELECT Piotr Górczyński 25/08/2001.
HURTOWNIE DANYCH DSDSDSDFGFDG.
Horyzontalne scenariusze pracy
OLAP budowa aplikacji analitycznych w MS SQL 2000 i Yukon
MOF Microsoft Operations Framework
WPROWADZENIE DO BAZ DANYCH
Bazy danych II Instrukcja INSERT Piotr Górczyński 25/08/2001.
Projektowanie Aplikacji Komputerowych
Kwerendy –wszystkie typy (usuwające, aktualizujące i inne)
Projektowanie Aplikacji Komputerowych
Hurtownie Danych Mariusz Dołęga.
Content Management System
Opracowanie studium przypadku w SAS ETL Studio
Co to jest studium przypadku?
Wykład 7 Wojciech Pieprzyca
Co to jest SOA Czym SOA nie jest
Projektowanie relacyjnych baz danych
7. Platformy informatyczne przyszłości (wizja SAP)
WYKONYWANIE ZAPYTAŃ Przygotował Lech Banachowski na podstawie: 1.Raghu Ramakrishnan, Johannes Gehrke, Database Management Systems, McGrawHill, 2000 (książka.
Zarządzanie zmianami w systemie bezpieczeństwa - rozwiązania Check Point i partnerów OPSEC dr inż. Mariusz Stawowski
Przykład włamania do aplikacji internetowej poprzez modyfikację zapytań SQL Skrypty ASP Serwer bazy danych MS SQL Server Piotr Kuźniacki BDi.
Lider rynku Źródło: The OLAP Report Źródło: Gartner Group
dr inż. Piotr Muryjas Wyższa Szkoła Przedsiębiorczości i Administracji
Licencjonowanie rodziny System Center 2012
Licencjonowanie SharePoint 2013
Slowly changing dimension w SSIS
DIAGRAMY ER 2 (ENTITY-RELATIONSHIP DIAGRAMS 2) Ćwiczenia 2.
Władcy Danych Wykorzystanie Master Data Services do zapanowania nad wszechobecnym chaosem Paweł Potasiński.
Wirtualna baza SQL zgodna z SQL Server SQL as a Service
Tryb tabelaryczny w Analysis Services 2012
Król Excel 2013 Dynastii ciąg dalszy Grzegorz Stolecki
Zarządzanie danymi biznesowymi za pomocą usług EIM serwera SQL 2012, czyli jak SSIS, MDM i DQS rozwiązują problem błędnych danych Marcin Szeliga
Licencjonowanie aplikacji serwerowych
Metadane w opisie hurtowni danych oraz procesie ETL
Informatyka Relacyjne bazy danych.
Self Service Business Intelligence Witajcie po ciemnej stronie mocy!
Wybrane zagadnienia relacyjnych baz danych
Systemy Zarządzania Bazami Danych Laboratorium 05 Widoki i eksport tabel/widoków 1.
1 Każdy obiekt jest scharakteryzowany poprzez: tożsamość – daje się jednoznacznie wyróżnić; stan; zachowanie. W analizie obiektowej podstawową strukturą
Opracowanie ćwiczeń dotyczących zapewniania niezawodności baz danych na przykładzie Oracle Opiekun : dr inż. Agnieszka Landowska Dyplomant : Tomasz Krzyżanowski.
Service Oriented Architecture
Definiowanie kluczy w tabelach RBD
Slajd 1© J.Rumiński Jacek Rumiński  Bazy danych Kontakt: Katedra Inżynierii Biomedycznej, pk. 106, tel.: , fax: ,
Systemy informatyczne
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Hurtownie i eksploracja danych
Komendy SQL do pracy z danymi
Projektowanie bazy danych z użyciem diagramów UML Obiektowe projektowanie relacyjnej bazy danych Paweł Jarecki.
Systemy zarządzania przepływem pracy i systemy zarządzania procesami biznesowymi Karolina Muszyńska.
Wdrożenie Foglight w Urzędzie Dozoru Technicznego
BAZY DANYCH Microsoft Access Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i.
Modelowanie Danych (ERD) – część 1 (Wspomaganie Modelowania danych)
Prototypowanie w ORACLE DESIGNER Transformacja Modelu danych.
Zintegrowane systemy informatyczne
Opracowanie studium przypadku w SAS ETL Studio Systemy baz danych i hurtowni danych Ludmiła Binek Katarzyna Rafalska
5 kroków, aby uzyskać wsparcie i znaleźć sponsora dla projektu w obszarze analityki i BI w organizacji Bartłomiej Graczyk, Data Platform Solution Architect,
Temat: Tworzenie bazy danych
BIG DATA Przetwarzanie i analiza zbiorów danych w czasie rzeczywistym Marcin Żuchowski SKILLSLEASE Sp. z o.o. |
DynaMed Plus Przewodnik
Optymalizacja zapytań w SQL Server
Jak 5 narzędzi złożyło się na sukces projektu Hurtowni Danych
Informatyczne systemy zarządzania
Strukturalny język zapytań SQL - historia
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Technologie Informacyjne Bazy danych
Zapis prezentacji:

Miejsce architektury Data Vault 2.0 w hurtowniach danych Roman Czarko-Wasiutycz Polish SQL Server User Group roman.czarko@plssug.org.pl roman.czarko@gmail.com

Roman Czarko-Wasiutycz Od kilkunastu lat zbieram doświadczenia związane z technologiami Microsoftu. Począwszy od developera C++, PHP, C#, administratora SharePoint poprzez administrację bazami Microsoft SQL Server na projektowaniu i rozwijaniu dużych hurtowni danych kończąc. Posiadacz tytułów: MCTS, MCSA: SQL Server 2012, MCSE: BI oraz MCSE: Data Management and Analytics Członek Zarządu Stowarzyszenia Użytkowników SQL Server PLSSUG Wolontariusz oraz współorganizator konferencji SQLDay 2013-2017, SQLDay Lite, SQLSaturday i innych. Lider Wrocławskiego oddziału Stowarzyszenia PLSSUG Prywatnie fan gier komputerowych :)

Koncepcja architektury Składniki i budowa Optymalizacje Proces budowy Agenda Koncepcja architektury Składniki i budowa Optymalizacje Proces budowy

Podejście relacyjne (Inmon) schemat płatka śniegu (snowflake) normalizacja (3NF) wiele tabel silne użycie złączeń (JOINs) mniejsze zużycie przestrzeni utrudnione równoległe ładowanie utrudnione śledzenie zmian w strukturze tabel https://en.wikipedia.org/wiki/File:Snowflake-schema-example.png

Podejście wymiarowe (Kimball) tabele faktów znormalizowane (3NF) tabele wymiarów zdenormalizowane schemat gwiazdy (star) mniej tabel ale duplikacja danych Slowly Changing Dimensions (SCD) łatwiejsze do użycia przez użytkowników efektywne przy odczycie cięższe w utrzymaniu - wymiary z kilku tabel źródłówych skomplikowane równoległe ładowanie – j.w. utrudnione śledzenie zmian w strukturze tabel https://en.wikipedia.org/wiki/File:Star-schema-example.png

Koncepcja architektury Data Vault 2.0 Source: Building a Scalable Data Warehouse with Data Vault 2.0, ISBN: 978-0-12-802510-9 Source: Building a Scalable Data Warehouse with Data Vault 2.0

Definicja The Data Vault is a detail oriented, historical tracking and uniquely linked set of normalized tables that support one or more functional areas of business. It is a hybrid approach encompassing the best of breed between 3rd normal form (3NF) and star schema. The design is flexible, scalable, consistent and adaptable to the needs of the enterprise. It is a data model that is architected specifically to meet the needs of today’s enterprise data warehouses. http://danlinstedt.com

Co chcemy mieć w hurtowni? Jedna wersja faktów czy jedna wersja prawdy? Czym jest prawda? Case: Autobus, czujnik zgłasza błąd, awaria części czy czujnika? – storing RAW data or parsed? Prawda jest często subiektywna i relatywna w świecie danych

Składniki - Hub Pierwszy składnik do modelowania, podstawa dalszych działań Hub zawiera unikalną listę kluczy biznesowych Klucze biznesowe, czyli te, które biznes używa do identyfikacji encji biznesowych (nr CRM klienta, VIN auta, nr faktury, ISBN) Tabela zawiera również dodatkowe atrybuty: Kiedy pierwszy raz pojawił się klucz Jakie było źródło pochodzenia Hub nie zawiera danych opisowych ani faktów Klucz biznesowy może być kluczem złożonym Dodatkowo w tabeli klucz biznesowy jest również przechowywany w formie skróconej funkcją skrótu (hash np. MD5, SHA1) i jest używany jako klucz główny (PK) Hashed PK – używane w hybrydowych hurtowniach np z użyciem Hadoopa Hash = funkcja skrótu (https://pl.wikipedia.org/wiki/Funkcja_skr%C3%B3tu) http://www.vertabelo.com/blog/technical-articles/data-vault-series-data-vault-2-0-modeling-basics Source: Building a Scalable Data Warehouse with Data Vault 2.0, ISBN: 978-0-12-802510-9

Składniki - Links Opisują relacje pomiędzy Hubami Umożliwiają mapowanie M:M pomiędzy Hubami Kluczowe składniki elastyczności i skalowalności Złączenia pomiędzy Hubami mogą być realizowane tylko za pomocą linków Zawierają relacje na najniższym możliwym poziomie ziarna z otaczających hubów Bardzo zbliżone do tabel Faktów w modelowaniu wielowymiarowym Składają się z: Link PK (Hash), PKs z połączonych hubów (dla złączeń), BK columns (nowe w arch. 2.0), daty ładowania i źródła rekordu Source: Building a Scalable Data Warehouse with Data Vault 2.0, ISBN: 978-0-12-802510-9

Składniki - Satellites Łączą się tylko z Hubami lub z Linkami – zawsze z jednym rodzicem Zawierają wszystkie dane opisowe Bardzo zbliżone do tabel wymiarów z SCD typu 2 PK oparty o PK z tabeli Hub/Link plus data ładowania (LOAD_DTS) Dodatkowo zawierają określenie źródła rekordu (REC_SRC) oraz kolumnę z hash-em wszystkich kolumn z danymi (HASH_DIFF) Generalna zasada - brak updatów Nowa tabela gdy: nowy system źródłowy, różna częstotliwość zmian danych, zmiana tabeli w źródle Comparing one column vs. 50 columns (or several hundred columns)? Patterns, automation Source: Building a Scalable Data Warehouse with Data Vault 2.0, ISBN: 978-0-12-802510-9

Składniki - podsumowanie Huby = Klucze Biznesowe Linki = Relacje / Transakcje Satelity = Dane opisowe / Wymiary Huby sprawiają, że hurtownia jest oparta o procesy biznesowe, pozwalają również na integrację pomiędzy systemami Linki dają elastyczność w absorbowaniu zmian strukturalnych i biznesowych bez potrzeby ponownego ładowania danych Satelity dają historię, audytowalność, śledzenie pochodzenia danych aż do systemów źródłowych

Rozszerzalność Source: Building a Scalable Data Warehouse with Data Vault 2.0, ISBN: 978-0-12-802510-9

Optymalizacje w ramach architektury - PIT Point In Time table (PIT) Zawiera informację o aktualnych rekordach z satelit powiązanych z jednym Hubem/Linkiem w wymaganym interwale czasowym Jest częścią Business Data Vault Zmniejsza liczbę potrzebnych do wykonania złączeń w celu pobrania danych „Ghost record” w satelitach - JOIN Source: Building a Scalable Data Warehouse with Data Vault 2.0, ISBN: 978-0-12-802510-9

Optymalizacje w ramach architektury - Bridge Łączy dane pomiędzy różnymi hubami/Linkami Mogą posiadać grubsze ziarno niż poszczególne Huby/Linki Source: Building a Scalable Data Warehouse with Data Vault 2.0, ISBN: 978-0-12-802510-9

Proces budowy – 5 prostych kroków Krok 1: Znajdź klucze biznesowe -> Huby Krok 2: Znajdź relacje pomiędzy kluczami biznesowymi -> Linki Krok 3: Znajdź dane opisowe dla kluczy biznesowych -> Satelity Krok 4: Dodaj składniki autonomiczne np. Kalendarze, słowniki do dekodowania akronimów dla Data Martów Krok 5: Dostrój rozwiązanie pod Twoje zapytania np. dodając tabele optymalizacyjne takiej jak Bridge oraz Point In Time.

Podejście Data Vault (Daniel Linstedt) Duża liczba tabel ale bardzo mała liczba typów tabel Zoptymalizowana pod duże, nie tylko monolityczne hurtownie Dzięki małej liczbie typów i architekturze łatwo zautomatyzować Duże użycie złączeń (JOIN) z możliwością optymalizacji Bardzo elastyczny i łatwo adoptujący się do zmian w tabelach źródłowych Możliwość znacznego zrównoleglenia ładowania danych Dane do kolejnych warstw są przekazywane za pomocą widoków i tabel (Business DV) w których są zaimplementowane wymagane reguły biznesowe Początki sięgają roku 1990, w roku 2000 opublikowana pierwsza wersja, w 2013 opublikowany standard Data Vault 2.0 Wspiera koncepcję wirtualizacji danych

Data Vault 2.0 Standard - komponenty Data Vault 2.0 Modeling – Changes to the model for performance and scalability Data Vault 2.0 Methodology – Following Scrum and Agile best practices Data Vault 2.0 Architecture – Including NoSQL systems and big-data systems Data Vault 2.0 Implementation – Pattern based, automation, generation CMMI level 5 Source: Building a Scalable Data Warehouse with Data Vault 2.0, ISBN: 978-0-12-802510-9 CMMI (Capability Maturity Model Integration) - https://en.wikipedia.org/wiki/Capability_Maturity_Model_Integration

Ładowanie danych Source: Building a Scalable Data Warehouse with Data Vault 2.0, ISBN: 978-0-12-802510-9

Rozszerzanie istniejącej hurtowni danych Source: Building a Scalable Data Warehouse with Data Vault 2.0, ISBN: 978-0-12-802510-9

Jeśli masz pytanie to jest dobry czas, żeby je zadać 

Materiały dodatkowe Building a Scalable Data Warehouse with Data Vault 2.0 (684 pages)

Ciekawe strony o Data Vault http://learndatavault.com/ http://danlinstedt.com/ http://prudenza.typepad.com/ https://kentgraziano.com/ http://roelantvos.com/blog/ http://www.vertabelo.com/blog/technical-articles/data-vault-series-data-vault-2-0-modeling-basics http://tdan.com/data-vault-series-1-data-vault-overview/5054 https://en.wikipedia.org/wiki/Data_vault_modeling

Miejsce architektury Data Vault 2 Miejsce architektury Data Vault 2.0 w hurtowniach danych Dziękuję za uwagę Roman Czarko-Wasiutycz Polish SQL Server User Group roman.czarko@plssug.org.pl roman.czarko@gmail.com