SAS ETL Studio Wprowadzenie

Podobne dokumenty
SAS OLAP Cube Studio Wprowadzenie

SAS Access to Hadoop, SAS Data Loader for Hadoop Integracja środowisk SAS i Hadoop. Piotr Borowik

Kostki OLAP i język MDX

Hurtownie danych - przegląd technologii

Systemy OLAP I. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

Systemy baz danych Prowadzący: Adam Czyszczoń. Systemy baz danych. 1. Import bazy z MS Access do MS SQL Server 2012:

Systemy OLAP I. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

Bazy Danych i Usługi Sieciowe

DMX DMX DMX DMX: CREATE MINING STRUCTURE. Tadeusz Pankowski

Bazy danych i usługi sieciowe

Wprowadzenie do hurtowni danych

Część 1: OLAP. Raport z zajęć laboratoryjnych w ramach przedmiotu Hurtownie i eksploracja danych

OnLine Analytical Processing (OLAP) Kostki OLAP i zapytania MDX

INFORMATOR TECHNICZNY WONDERWARE. Ograniczenie wyświetlania listy zmiennych w przeglądarce zmiennych ActiveFactory

Hurtownie danych - przegląd technologii

Wprowadzenie do technologii Business Intelligence i hurtowni danych

Proces ETL MS SQL Server Integration Services (SSIS)

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

Wprowadzenie do Systemu SAS

Podzapytania do tabel W miejscu w którym możemy użyć nazwy tabeli, możemy użyć podzapytania

Bazy danych 10. SQL Widoki

Wykonaj tę czynność, jeśli masz co najmniej trzy awiza dostawy do przetworzenia.

Założenia do ćwiczeń: SQL Server UWM Express Edition: \SQLEXPRESS. Zapoznaj się ze sposobami użycia narzędzia T SQL z wiersza poleceń.

Uproszczona instalacja SAS Forecast Server 4.1

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Technologie Zasilania i Odświeżania Hurtowni Danych na przykładzie Pentaho DI część 6

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści

Bazy danych. dr inż. Arkadiusz Mirakowski

Systemy baz danych i hurtowni danych

Informatyka sem. III studia inżynierskie Transport 2018/19 LAB 2. Lab Backup bazy danych. Tworzenie kopii (backup) bazy danych

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15

Modelowanie wymiarów

CZĘŚĆ I ZASTOSOWANIE PROGRAMU EXCEL DO ANALIZ BUSINESS INTELLIGENCE

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Dane wejściowe. Oracle Designer Generowanie bazy danych. Wynik. Przebieg procesu

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Krzysztof Dembczyński. Inteligentne Systemy Wspomagania Decyzji Studia magisterskie, semestr I Semestr letni 2007/08

Potwierdzenie zamówienia za pomocą metody przesyłania plików PL

OLAP i hurtownie danych c.d.

Przypisywanie bibliotek w architekturze SAS

Projektowanie systemów baz danych

Procedury techniczne modułu Forte Kontroling. Pakiety DTS

Problemy techniczne SQL Server

Wykład 3 Inżynieria oprogramowania. Przykład 1 Bezpieczeństwo(2) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Przepływy danych. Oracle Designer: Modelowanie przepływów danych. Diagramy przepływów danych (1) Diagramy przepływów danych (2)

PLAN WYKŁADU BAZY DANYCH PODSTAWOWE KWESTIE BEZPIECZEŃSTWA OGRANICZENIA DOSTĘPU DO DANYCH

Database Connectivity

Wykład 8. SQL praca z tabelami 5

Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych. Paweł Paduch paduch@tu.kielce.pl

DBPLUS Data Replicator Subtitle dla Microsoft SQL Server. dbplus.tech

Program Lojalnościowy by CTI. Instalacja

Pentaho DI część 1. Paweł Boiński Politechnika Poznańska, Instytut Informatyki

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Zapytania z ograniczeniem czasowym w Oracle

Bazy danych SQL Server 2005

Hurtownie danych. Ładowanie, integracja i aktualizacja danych. INTEGRACJA DANYCH ETL

Cel przedmiotu. Wymagania wstępne w zakresie wiedzy, umiejętności i innych kompetencji 1 Język angielski 2 Inżynieria oprogramowania

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

Oracle PL/SQL. Paweł Rajba.

Zabezpieczanie dostępu do bibliotek w SAS 9.4

Wprowadzenie do Systemu SAS

BAZY DANYCH LABORATORIUM. Studia niestacjonarne I stopnia

Przykład rozwiązywania problemu w programie DSS1OPT

Baza danych sql. 1. Wprowadzenie

Maciej Kiewra Quality Business Intelligence Consulting

CREATE USER

Odnawialne Źródła Energii I rok. Tutorial PostgreSQL

Usługi analityczne budowa kostki analitycznej Część pierwsza.

Bazy danych dla producenta mebli tapicerowanych. Bartosz Janiak Marcin Sikora Wrocław r.

Encje w Drupalu. Tworzenie własnych encji i ich wpływ na poprawę wydajności

Microsoft SQL Server Podstawy T-SQL

Pony ORM. Dominik Kozaczko, PyWaw #73

Oracle11g: Wprowadzenie do SQL

Bazy danych 7. SQL podstawy

Problemy techniczne SQL Server

Wprowadzenie do Doctrine ORM

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

Proces ETL. Katedra Inżynierii Oprogramowania Wydział Elektroniki, Telekomunikacji i Informatyki Politechnika Gdańska {kris,

Relacyjne bazy danych a XML

Schematy logiczne dla hurtowni danych

Instrukcja 3 Laboratoria 3, 4 Specyfikacja wymagań funkcjonalnych za pomocą diagramu przypadków użycia

SELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek

Przesyłanie planowanych odbiorów dostawcy do monitora prognozy zlecenia PL

Informatyzacja Przedsiębiorstw

Modelowanie procesów (1) Oracle Designer: Modelowanie procesów. Modelowania procesów (2) Modelowanie procesów (3)

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

Procesy ETL - wykład V. Struktura. Wprowadzenie. 1. Wprowadzenie. 2. Ekstrakcja 3. Transformacja 4. Ładowanie 5. Studium przypadków.

Obowiązuje od wersji

Tuning SQL Server dla serwerów WWW

Zaawansowane aplikacje internetowe - laboratorium

System magazynowy małego sklepu.

Microsoft.NET: LINQ to SQL, ASP.NET AJAX

Relacji między tabelami klucze obce. Schemat bazy danych, wczytanej z pliku create_tables.sql. Klucz obcy jako ograniczenie dla kolumny

P o d s t a w y j ę z y k a S Q L

Wprowadzenie do SQL TEMAT 3 - Zadania dodatkowe

Programowanie komponentowe. Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Wykład 5. SQL praca z tabelami 2

Zadanie 5. Automatyzacja tworzenia kont użytkowników

Transkrypt:

SAS ETL Studio Wprowadzenie Izabela Szczęch i Krzysztof Dembczyński Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska Technologie Wytwarzania Oprogramowania Semestr letni 2008/09 Studia uzupełniajace magisterskie

1 Wprowadzenie do SAS ETL Studio 2 Studium przypadku 3 SAS ETL Studio Metadane 4 SAS ETL Studio Diagram przepływu zadań 5 SAS ETL Studio Uruchamianie zadań

1 Wprowadzenie do SAS ETL Studio 2 Studium przypadku 3 SAS ETL Studio Metadane 4 SAS ETL Studio Diagram przepływu zadań 5 SAS ETL Studio Uruchamianie zadań

SAS ETL Studio jest aplikacja umożliwiajac a tworzenie i zarzadzanie przepływami procesów ETL (Extraction, Transformation, Loading of data). Dane w procesie ETL sa: pobierane (extraction) z różnych źródeł, transformowane (transformation) czyli okrajane, łaczone, czyszczone etc., ładowane (loading) do tabel docelowych wchodz acych w skład hurtowni danych.

W ramach zajęć nauczymy się: definiować metadane dla tabel źródłowych, definiować metadane dla tabel wynikowych (wchodzacych w skład hurtowni danych), tworzyć i wykonywać procesy (jobs) określaj ace sposób ekstrakcji, transformacji danych źródłowych i ładowania ich do tabel wynikowych.

Wykorzystywane narzędzia SAS: SAS Management Console (do administrowania całym oprogramow. SAS), SAS ETL Studio (do budowy i zarzadzania procesami ETL), SAS Metadata Server (do odczytywania/zapisywania danych w SAS Metadata Repository), SAS Workspace Server (do dostępu do danych i wykonywania kodów SASowych).

Repozytoria metadanych Obiekt metadanych to zbiór atrybutów opisujacych tabele, użytkowników, serwery, dostęp do nich, umiejscowienie etc. Definicje danych źródłowych, docelowych i transformacji jednych w drugie też sa metadanymi. Metadane przechowywane s a w repozytoriach (np. SAS Main to nazwa repozytorium typu Foundation).

Repozytoria metadanych

SAS ETL Studio

SAS ETL Studio

1 Wprowadzenie do SAS ETL Studio 2 Studium przypadku 3 SAS ETL Studio Metadane 4 SAS ETL Studio Diagram przepływu zadań 5 SAS ETL Studio Uruchamianie zadań

Studium przypadku Firma Orion Star prowadzi detaliczna sprzedaż artykułów sportowych (ubrania, buty, sprzęty). Sprzedaż prowadzona jest w wielu krajach świata, zarówno w sklepach jak i przez Internet i katalogi wysyłkowe. Dysponujemy danymi z lat 1998 2002. Hurtownia danych ma umożliwiać następujace analizy: jakie produkty sa sprzedawane jakim klientom, kiedy, jakie produkty sa sprzedawane, jaki jest średni czas realizacji zamówień złożonych przez Intenet lub z katalogu wysyłkowego.

Tabela z danymi źródłowymi: CUSTOMER zawiera dane o klientach, którzy złożyli zamówienie, m.in. imię, nazwisko, adres, datę urodzenia, etc. ORDER_ITEM zawiera szczegółowe informacje o towarze zamówionym w sklepie, przez Internet lub katalog, m.in. ilość zakupionego towaru w danym zamówieniu, cenę towaru etc. ORDERS zawiera informacje o poszczególnych transakcjach m.in. datę zakupu, ID sprzedawcy, ID klienta

Tabele z danymi wyjściowymi: ORDER_FACT połaczenie CUSTOMER, ORDER_ITEM, ORDERS + dodatkowe pola dla określenia kiedy jakie produkty sa sprzedawane : Order_Year, Order_Quarter, Order_Month) CATALOG_INTERNET (informacje z ORDER_FACT + dodatkowe pole Delivery_Time)

Maszyna/serwer: localhost użytkownik: sasadm hasło: sas repozytorium: Foundation Profil metadanych

Lokalizacja danych Należy utworzyć katalog z danymi źródłowymi: temp/sources (należy wgrać tam dane źródłowe) Należy utworzyć katalog z danymi docelowymi: temp/targets (tam będa składowane tabele utworzone w procesie ETL) Należy nadać pełne prawa do tych katalogów grupie użytkowników: Sas Server Users (danymi będziemy manipulować jako użytkownicy SASa, musimy więc zapewnić tym użytkownikom dostęp do danych)

1 Wprowadzenie do SAS ETL Studio 2 Studium przypadku 3 SAS ETL Studio Metadane 4 SAS ETL Studio Diagram przepływu zadań 5 SAS ETL Studio Uruchamianie zadań

Zakładka Inventory: drzewko Foundation Library New Library SAS Base Engine Library name: Source Tables i Target Tables Libref: Sources i Targets Engine: BASE path: temp/sources i temp/targets server: SASMain

Definiujemy metadane dla tabel źródłowych (CUSTOMER, ORDERS, ORDER_ITEM), by były one widoczne w ETL Studio: Source Designer: Sources SAS server: SASMain SAS Library: Source Tables Select All Tables Group Location: Foundation Sprawdzenie: CUSTOMER Properties, CUSTOMER View Data

Definiujemy metadane dla tabeli wyjściowej ORDER_FACT: Target Designer Targets Target Table name: Order_Fact Available Columns: Table to Select From CUSTOMER ORDER_ITEM ORDERS Columns to Select Customer_ID Street_ID Order_ID Product_ID Quantity Total_Retail_Price CostPrice_Per_Unit Employee_ID Order_Type Order_Date Delivery_Date

Dodanie nowych kolumn do tabeli ORDER_FACT Columns New Name Description Length Type Is Nullable Order_Year Year Order was Placed 4 Numeric Yes Order_Month Month Order was Placed 4 Numeric Yes Informacje końcowe: Library: Target Tables

Definiujemy metadane dla tabeli wyjściowej CATALOG_INTERNET: Target Designer Targets Target Table name: Catalog_Intenet Available Columns: ORDER_FACT (w całości) Dodanie nowych kolumn do tabeli: Columns New Name Description Length Type Is Nullable Deliver_Time DeliveryTime-OrderTime 4 Numeric Yes Informacje końcowe: Library: Target Tables

1 Wprowadzenie do SAS ETL Studio 2 Studium przypadku 3 SAS ETL Studio Metadane 4 SAS ETL Studio Diagram przepływu zadań 5 SAS ETL Studio Uruchamianie zadań

Zadanie to obiekt metadanych, który określa procesy tworzace dane wyjściowe Diagram przepływu zadań:

Tworzymy diagram przepływu zadań, określajace sposób powstania tabeli wyjściowej ORDER_FACT: Process Designer name: Load Orion Star Tables Select Tables: Order_Fact (tu podajemy nazwę tabeli wynikowej dla całego procesu)

Tworzymy diagram przepływu zadań, określajace sposób powstania tabeli wyjściowej ORDER_FACT (c.d): zakładka Process Library Data Transforms SQL Join zakładka Invertory drag&drop CUSTOMER, ORDERS, ORDER_ITEM (z Source Tables Library)

Tabela wyjściowa CATALOG_INTERNET ma powstać jak tabela ORDER_FACT (ale z odfiltrowaniem sprzedaży w sklepach): zakładka Process Library Data Transforms SQL Splitter

Tabela wyjściowa CATALOG_INTERNET ma powstać jak tabela ORDER_FACT (ale z odfiltrowaniem sprzedaży w sklepach) (c.d): zakładka Inventory drag&drop Catalog_Internet (z Target Tables Library) uwaga: Loader dla tabeli Catalog_Internet jest automatycznie dodawany File ->Save

Poł aczenie tabel (SQL Join): SQL Join Properties zakładka Tables prawy przycisk myszy Advanced Joins zakładka Mappings

Połaczenie tabel (SQL Join) (c.d): Importujemy metadane o nowo-utworzonych kolumnach: Order_Year, Order_Month, Delivery_Time Import Columns Ungrouped Available Columns Catalog_Internet select: Order_Year, Order_Month, Delivery_Time następnie wyspecyfikujemy jak maja zostać wypełnione powyższe pola

Połaczenie tabel (SQL Join) (c.d): Specyfikujemy, że pole Order_Year z tabeli ORDER_FACT ma być wyciagnięte na podstawie pola Order_Date z tabeli ORDERS: dwuklik na Expresions Category: Data and Time Functions: Year (Date) Insert Data Elements:Orders Order_Date Insert OK

Połaczenie tabel (SQL Join) (c.d): Specyfikujemy, że pole Order_Month z tabeli ORDER_FACT ma być wyciagnięte na podstawie pola Order_Date z tabeli ORDERS: dwuklik na Expresions Category: Data and Time Functions: MONTH(Date) Insert Data Elements: Orders Order_Date Insert OK

Połaczenie tabel (SQL Join) (c.d): Specyfikujemy, że pole Delivery_Time z tabeli ORDER_FACT ma być obliczone na podstawie pól Delivery_Date i Order_Date z tabeli ORDERS: dwuklik na Expresions Data Sources: Orders Deliver_Date- Order_Date Insert OK

Połaczenie tabel (SQL Join) (c.d): specyfikujemy, że tabele wyjściowe maja zawierać tylko sprzedaże po roku 2001: zakładka Where Available Columns Result Columns Order_Year 2001 OK File->Save

Podział tabel (SQL Splitter) (c.d): Specyfikujemy, że do tabeli wyjściowej Catalog_Internet maja wejść tylko sprzedaże z katalogu lub z Internetu SAS Splitter Properties zakładka Row Selection Target Table: Catalog_Internet Row Selection Type: Row Selection Conditions Selection Condition: OrderType = Catalog OrderType = Internet

Podział tabel (SQL Splitter) (c.d): propagowanie odwzorowań (nazw, typów pól, etc) między kolumna źródłowa a wyjściowa SAS Splitter Properties zakładka Mappings prawy przycisk myszy: Quick Propagate Select Target Table: All File Save

Ładowanie danych (SAS Loader): definiowanie technik wypełniania tabel wyjściowych danymi z tabel źródłowych SAS Loader Properties zakładka: Load Technique Load Technique: Refresh Before Loading: Drop Table odświeżenie mapowania między tabela źródłowa a wyjściowa SAS Loader Properties zakładka: Mapping prawy przycisk myszy: Quick Map powyższe operacje wykonać dla Loadera dla Order_Fact oraz Catalog_Internet File Save

1 Wprowadzenie do SAS ETL Studio 2 Studium przypadku 3 SAS ETL Studio Metadane 4 SAS ETL Studio Diagram przepływu zadań 5 SAS ETL Studio Uruchamianie zadań

Uruchamianie zadań: prawy przycisk myszy Submit

Dane w tabelach wyjściowych: tabela wyjściowa prawy przycisk myszy View Data

Literatura Getting Started with SAS ETL Studio, 2006