Duży efekt małym kosztem, czyli SQL Server nie tylko jako

Transkrypt

Duży efekt małym kosztem, czyli SQL Server nie tylko jako
Duży efekt małym kosztem, czyli
SQL Server nie tylko jako baza
danych
Janusz Marchewa, ITCNG
O mnie słów kilka
● 
Konsultant IT, trener
● 
Właściciel firmy ITCNG
● 
● 
MCITP: SQL Server 2005/2008
DBA, DB Dev, BI Dev
MCTS: SQL Server 2005/2008 oraz konfiguracja MOSS 2007/
WSS 3.0
● 
CompTIA Project+
● 
Blog: http://blogs.itcng.pl/janusz_marchewa/
Tytułem wstępu
Agenda – część 1
Integration Services (SSIS)
● 
Wprowadzenie
● 
Licencjonowanie
● 
● 
Problem biznesowy: import z
pliku XLS do bazy danych
Rozwiązanie
Agenda – część 2
Analysis Services (SSAS)
● 
Wprowadzenie
● 
Licencjonowanie
● 
● 
Problem biznesowy: analiza
koszykowa
Rozwiązanie
Agenda – część 3
Reporting Services (SSRS)
● 
Wprowadzenie
● 
Licencjonowanie
● 
● 
Problem biznesowy:
definiowanie raportów przez
użytkownika biznesowego
Rozwiązanie
SSIS - wprowadzenie
● 
SQL Server Books Online (BOL):
http://msdn.microsoft.com/en-us/library/ms141026.aspx
SSIS - licencjonowanie
● 
● 
● 
● 
Dostępność w edycjach Standard oraz Enterprise
W niższych edycjach (Workgroup, Web, Express) SSIS
dostępne jedynie w postaci SQL Server Import/Export Wizard
(ale bez możliwości zapisywania i późniejszego uruchamiania
stworzonych paczek)
W przypadku instalowania SSIS na innym serwerze niż baza
danych SQL Server wymagana jest osobna licencja (pełna)
Porównanie edycji SQL Server:
http://msdn.microsoft.com/en-us/library/cc645993.aspx
Jak stworzyć paczkę?
● 
SQL Server Import/Export Wizard
● 
Business Intelligence Development Studio (BIDS)
● 
W kodzie aplikacji
PROBLEM BIZNESOWY:
Nie wszystkie dane dostępne w bazie danych, konieczność
importu z pliku XLS
ROZWIĄZANIE:
Zdefiniowanie paczki SSIS importującej plik XLS do bazy
danych i wywołanie jej w kodzie aplikacji
lub
zbudowanie paczki SSIS od podstaw w kodzie aplikacji
i wywołanie jej
DEMO:
Wywołanie w kodzie aplikacji paczki SSIS importującej plik XLS
do bazy danych
Budowa paczki w kodzie aplikacji
● 
BOL: http://msdn.microsoft.com/en-us/library/ms345167.aspx
● 
Przykłady: http://sqlsrvintegrationsrv.codeplex.com/
● 
● 
Package Generation Sample
● 
EzAPI – dodatkowa warstwa abstrakcji
Więcej informacji na temat EzAPI:
http://blogs.msdn.com/mattm/archive/2008/12/30/ezapi-alternative-package-creation-api.aspx
Zdalne wywołanie paczki
● 
● 
● 
Brak SSIS na komputerze z aplikacją = brak możliwości
lokalnego wywołania paczki
Główne metody zdalnego wywołania paczki:
● 
SQL Server Agent
● 
własny Web Service
BOL: http://msdn.microsoft.com/en-us/library/ms403355.aspx
DEMO:
Zdalne wywołanie paczki SSIS przy użyciu SQL Server Agent
SSAS - wprowadzenie
● 
BOL: http://msdn.microsoft.com/en-us/library/bb510517.aspx
SSAS - licencjonowanie
● 
● 
● 
Dostępność tylko w edycjach Standard oraz Enterprise
W przypadku instalowania SSAS na innym serwerze niż baza
danych SQL Server wymagana jest osobna licencja (pełna)
Porównanie edycji SQL Server:
http://msdn.microsoft.com/en-us/library/cc645993.aspx
Data mining - wprowadzenie
● 
Wyszukiwanie wzorców w dużych zbiorach danych
● 
Klasyfikacja, segmentacja, analiza asocjacji, regresja, …
● 
Nieograniczone możliwości zastosowania
● 
Ogólne informacje na temat DM:
http://msdn.microsoft.com/en-us/library/ms174949.aspx
SSAS – przykłady algorytmów DM
● 
Klasyfikacja – Microsoft Decision Trees
● 
Regresja – Microsoft Time Series
● 
Segmentacja – Microsoft Clustering
● 
Analiza asocjacji – Microsoft Association
● 
Analiza sekwencji – Microsoft Sequence Clustering
● 
Opis algorytmów dostępnych w SSAS:
http://msdn.microsoft.com/en-us/library/ms175595.aspx
PROBLEM BIZNESOWY:
Klient wkłada produkt do koszyka. Należy mu zaproponować
zakup innych produktów, które były najchętniej kupowane
razem z produktem znajdującym się już w koszyku.
ROZWIĄZANIE:
Zastosowanie algorytmu Microsoft Association do znalezienia
powiązanych produktów. Wykorzystanie ADOMD.NET do
pobrania w kodzie aplikacji wyników działania algorytmu.
Krok 1 – Data Mining Structure
● 
● 
● 
Definicja źródła danych
Wybór kolumn i określenie
klucza
Podział danych na zbiór
uczący i opcjonalny zbiór
testowy
● 
Przetworzenie struktury
● 
BOL: http://msdn.microsoft.com/en-us/library/ms174757.aspx
Krok 2 – Data Mining Model
● 
Wybór DMS
● 
Wybór algorytmu DM
● 
Wybór kolumn i ich zastosowania
● 
Opcjonalne modyfikacje wartości
parametrów algorytmu
● 
Przetworzenie modelu
● 
BOL: http://msdn.microsoft.com/en-us/library/cc645779.aspx
Krok 3 – ADOMD.NET i DMX
● 
ADOMD.NET posłuży do komunikacji z SSAS
● 
Dostępne w ramach SQL Server 2008 Feature Pack:
http://www.microsoft.com/downloads/details.aspx?
displaylang=en&FamilyID=b33d2c78-1059-4ce2-b80d-2343c099bcb4
● 
● 
BOL: http://msdn.microsoft.com/en-us/library/ms123483.aspx
Data Mining eXtensions (DMX) – język do obsługi modeli DM
● 
Udostępnia polecenia DDL, DML oraz zapytania
● 
BOL: http://msdn.microsoft.com/en-us/library/ms132058.aspx
DEMO:
Wykorzystanie algorytmu Microsoft Association do analizy
koszyka zakupów oraz ADOMD.NET i DMX do pobrania
wyników analizy w kodzie aplikacji
SSRS - wprowadzenie
● 
BOL: http://msdn.microsoft.com/en-us/library/ms159106.aspx
SSRS - licencjonowanie
● 
● 
● 
Dostępność we wszystkich edycjach SQL Server (w przypadku
Express – tylko w wariancie Express with Advanced Services)
W przypadku instalowania SSRS na innym serwerze niż baza
danych SQL Server wymagana jest osobna licencja (pełna)
Porównanie edycji SQL Server:
http://msdn.microsoft.com/en-us/library/cc645993.aspx
Struktura raportu
● 
Specyfikacja RDL 2008:
http://www.microsoft.com/downloads/details.aspx?FamilyID=2a20c7af-52e8-4882bd24-9479b3c7517d&displaylang=en
Narzędzia do budowy raportów
● 
Report Builder
● 
BIDS
● 
Dowolny edytor tekstu 
Report Builder 2.0
● 
Dostępny za darmo dla edycji Workgroup i wyższych
● 
Target: power user
● 
Wersja 2.0:
http://www.microsoft.com/downloads/details.aspx?
displaylang=en&FamilyID=dbddc9b6-6e19-4d4b-9309-13f62901b0d5
BIDS
● 
● 
● 
Jeden z komponentów instalacji SQL Server
Dla edycji Express with Advanced Services dostępny
w okrojonej wersji
Target: programiści
PROBLEM BIZNESOWY:
Użytkownik biznesowy chciałby samodzielnie tworzyć własne
raporty.
ROZWIĄZANIE:
Pobranie definicji raportu z serwera, modyfikacja jej w kodzie
aplikacji i aktualizacja raportu na serwerze. Wykorzystanie
usługi sieciowej ReportService2005 do komunikacji z SSRS.
Usługa sieciowa ReportService2005
● 
Więcej informacji:
http://msdn.microsoft.com/en-us/library/ms152787.aspx
Kontrolka ReportViewer
● 
● 
● 
● 
● 
Odpowiedzialna za przetwarzanie i wyświetlanie raportu
w aplikacji
Dostępna w wersji ASP.NET oraz WinForms
Tryb przetwarzania serwerowego (pliki .RDL) i lokalnego
(.RDLC)
Możliwość dodania swojej wersji językowej (poprzez
implementację IReportViewerMessages)
Więcej informacji:
http://msdn.microsoft.com/en-us/library/ms251671.aspx
DEMO:
Bob Budowniczy…
… Raportów 
Dziękuję za uwagę!
Email: j [kropka] marchewa {at} itcng [kropka] pl
Blog: http://blogs.itcng.pl/janusz_marchewa
Smacznego! 