2400 sekund z PowerPivot
TRENER: ŁUKASZ GRALA Architekt, konsultant (bazy i hurtownie danych, data mining, analiza danych, audyty baz danych SQL Server, BI) Trener technologii Microsoft, wykładowca na wyższych uczelniach. Lider Polish SQL Server User Group (PLSSUG) Poznań Prelegent na wielu konferencjach informatycznych Posiada liczne certyfikaty Prowadzi blogi: http://powerpivot.info.pl http://sqlresearch.com Kontakt: lukasz@grala.biz
PowerPivot?
POWERPIVOT FOR EXCEL Excel 2010 PowerPivot for Excel VertiPaq
POWERPIVOT FOR EXCEL
POWERPIVOT KOMPRESJA DANYCH (TESTY) liczba rekordów 16 500 948 tabela w SQL Server 2008 bez kompresji: 1 399 000 KB => ~ 84 B na wiersz 90 80 70 60 tabela w SQL Server 2008 z kompresją PAGE: 477 720 KB => ~ 29 B na wiersz plik Excel (PowerPivot): 149 131 KB => ~ 9 B na wiersz 50 40 30 20 10 0 SQL 2008 SQL 2008 (PAGE) Gemini
PIVOTTABLE
PIVOTTABLE Filter Property KPI metrics Measures Hierarchy on rows Totals Conditional formatting Cube formats
PIVOTTABLE FUNKCJONALNOSCI
TWORZENIE WYKRESÓW PIVOTCHART
PIVOTCHART Measures Filter Legend Data label Axes
ROZSZERZONE ELEMENTY WIZUALIZACJI
ARCHITEKTURA SELF-SERVICE BI Self Service BI Enterprise Excel Web Front End Aplikacje klienckie SSAS Klient Gemini IMBI Engine MOSS Analysis Services Plik.xslx IMBI Service Hurtownia danych Źródła danych Dane relacyjne Excel AS RSS Feed
POWERPIVOT FOR SHAREPOINT PowerPivot Gallery Management Dashboard PowerPivot Web Service PowerPivot System Service Analysis ServicesVertiPaq
WSPARCIE Source Versions File type Providers 1 Access databases Microsoft Access 2003, 2007, 2010..accdb or.mdb ACE 14 OLE DB provider SQL Server relational databases Microsoft SQL Server2005, 2008, 2008 R2..mdf and.ldf OLE DB Provider for SQL Server SQL Server Native Client OLE DB Provider SQL Server Native 10.0 Client OLE DB Provider.NET Framework Data Provider for SQL Client Oracle relational databases Oracle 9i, 10g, 11g..db.NET Framework Data Provider for Oracle Client.NET Framework Data Provider for SQL Server MSDAORA OLE DB provider OraOLEDB MSDASQL Teradata relational databases Teradata V2R6, V12 (not applicable) TDOLEDB OLE DB provider.net Data Provider for Teradata Informix relational databases (not applicable) Informix OLE DB provider IBM DB2 relational databases 8.1.db2 DB2OLEDB Sybase relational databases.db Sybase OLE DB provider Other relational databases (not applicable) (not applicable) OLE DB provider or ODBC driver Text files (not applicable).txt,.tab,.csv ACE 14 OLE DB provider for Microsoft Access Microsoft Excel files Excel 97-2003, 2007, 2010.xlsx, xlsm,.xlsb,.xltx,.xltm ACE 14 OLE DB provider PowerPivot workbook Analysis Services cube Data feeds (used to import data from Reporting Services reports, Atom service documents, and single data feed) Microsoft SQL Server 2008 R2 Analysis Services Microsoft SQL Server 2005, 2008, 2008 R2 Analysis Services.xlsx (not applicable) ASOLEDB 10 Atom 1.0 format.atomsvc for a service document that Microsoft SQL Server 2005, defines one or more feeds (none) 2008, 2008, 2008 R2 Reporting.atom for an Atom web feed document Services report ASOLEDB 10.5 (used only with PowerPivot workbooks that are published to PowerPivot-enabled SharePoint farms)
ŹRÓDŁA DANYCH DATA FEEDS Data feeds (ver. Atom 1.0) Listy SharePoint Reporting Services 2008 R2 Data Service Document (.atomsvc) Nowe rozszerzenie w SSRS 2008 R2 wprowadzono z myślą o wykorzystaniu w PowerPivot Użytkownik nie musi mieć dostępu do źródeł danych raportu powielać logiki biznesowej zawartej w raporcie
ŹRÓDŁA DANYCH BEST PRACTICE Import danych ze źródeł relacyjnych oszczędza czas (przenoszone relacje) Import wielu tabel jednocześnie i usuwanie zbędnych Warto wybierać kolumny, które mogą występować w innych źródłach danych (tworzenie relacji) Odświeżanie danych po publikacji na MOSS (źródła powinny być dostępne, aby umożliwić odświeżanie) Dla dużych zbiorów danych zalecane jest wykorzystanie sterowników OLE DB (wydajność) > 1 mln wierszy zalecany klient 64-bitowy
FUNKCJE POWERPIVOT Ścisła integracja z MS Excel - PowerPivot Add-in dostarcza lokalny silnik przetwarzania danych - wydajne przechowywanie i przetwarzanie bardzo dużych zbiorów danych (przekraczających ograniczenia MS Excel) Użytkownik analizuje dane bezpośrednio w aplikacji (pominięcie procesu design schema => run time view ) Dane i ich wizualizacja w jednym pliku (Pivot Charts, Pivot Tables, Slicers) Dostęp do źródeł PowerPivotz innych aplikacji (wskazanie pliku)
DATA ANALYSIS EXPRESSIONS (DAX) Nowy język wyrażeń ułatwiający przetwarzanie i analizowanie danych Odwołujemy się do całych tabel lub kolumn (nie do tablic lub zakresów komórek) Wykorzystywany m.in. do: Definiowania kolumn wyliczanych (tabele z danymi źródłowymi) Definiowania miar użytkownika (tabela przestawna, wykres przestawny) Wyszukiwania wartości w tabelach powiązanych (Lookup) Tworzenia filtrowanych sum Usuwania filtrów na wybranych kolumnach
JĘZYK DAX -FUNKCJE Matematyczne Agregacyjne i statystyczne Daty i czasu Logiczne Informacyjne Tekstowe i znakowe
JĘZYK DAX -FUNKCJE Matematyczne (22) Agregacyjne i statystyczne (17) Daty i czasu (17) Logiczne (7) Informacyjne (6) Tekstowe i znakowe (17) 134 Filtrujace (14) Time Intelligence Functions (34)
JĘZYK DAX -FUNKCJE Matematyczne, agregacji i statystyczne (przykłady): ABS, LN, LOG, LOG10, ROUND, SQRT,... AVERAGE(A/X), COUNT(A/AX/BLANK/ROWS/X), MIN(A/X),... Daty i czasu, logiczne, tekstowe, informacyjne (przykłady): EDATE, DAY, MONTH, YEAR, MINUTE, NOW, WEEKNUM, WEEKDAY... FALSE, TRUE, IF, NOT CODE, LEFT, LEN, CONCATENATE, EXACT, FIND, LOWER, TRIM, RIGHT, UPPER.. ISBLANK, ISERROR, ISLOGICAL, ISNONTEXT, ISNUMBER, ISTEXT
JĘZYK DAX -FUNKCJE Filtrujące (przykłady): ALL, ALLEXCEPT, BLANK, CALCULATE, EARLIER, CALCULATE, DISTINCT... FILTER, RELATED, RELATEDTABLE, VALUES... Time Intelligence Functions (przykłady): NEXTDAY, NEXTMONTH, NEXTYEAR, PREVIOUSDAY, LASTDAY, PARALLEELPERIOD, STARTOFYEAR, ENDOFQUARTER, DATEADD OPENINGBALANCEYEAR, TOTALMTD, TOTALQTD, TOTALYTD
JĘZYK DAX / EXCEL Wyrażenie DAX Excel BLANK + BLANK BLANK 0 (zero) BLANK +5 5 5 BLANK * 5 BLANK 0 (zero) 5/BLANK Infinity Error 0/BLANK NaN Error BLANK/BLANK BLANK Error FALSE OR BLANK FALSE Error FALSE AND BLANK FALSE Error TRUE OR BLANK TRUE Error TRUE AND BLANK FALSE Error BLANK OR BLANK BLANK Error BLANK AND BLANK BLANK Error
JĘZYK DAX - POWIĄZANIE TABEL Tworzenie powiązań (relationship) Przeglądanie Funkcje Usuwanie powiązań
JĘZYK DAX - POWIĄZANIE TABEL Tylko jedna relacja między dwiema tabelami (nie można użyć klucza do więcej niż 1 relacji w tabeli) Rozwiązanie: import kopii tabel z kluczem głównym DimKalendarz FactSprzedaz Data DataSprzedazy DataZamowienia DataDostawy Nie obsługiwane relacje Self-join (hierarchie parent-child)
POWERPIVOT - UWAGI Tabele PowerPivot Nie można dodawać wierszy (tylko kolumny) Można filtrować zakres dostępnych wierszy Do edycji danych w Excelu można wykorzystać mechanizm Linked Table Oparte na źródle danych (nie można utworzyć pustej tabeli bez wskazania źródła danych); jedna tabela jedno źródło Kolumny wyliczane Zawsze wyliczana dla każdego wiersza (wpływ na wydajność) Formuła może być oparta na innych kolumnach wyliczanych (niedozwolone zapętlenia) Recalculation Mode = Manual wstrzymuje odświeżanie kolumn przy zmianie danych (lepsza wydajność, ale dane mogą być nieaktualne)
POWERPIVOT PUBLIKACJA Galeria raportów na MOSS (podgląd bez otwierania, wymagany Silverlight Client) Automatyczne odświeżanie danych Lepsza wydajność i ochrona Dostęp Śledzenie użycia raportów Przeglądarka (Excel Services i PowerPivot Services) PowerPivot Add-In (pełna funkcjonalność) Jako źródła danych dla raportów SSRS lub innych arkuszy PowerPivot
POWERPIVOT ŚLEDZENIE UŻYCIA
DENALI Diagram View Hierarchies Key Performance Indicators KPI Perspectives Relationship in diagram Multiple Relationship Measure Grid Advances Tab Reporting Properties NEW DAX FUNCTION (eg. RANK, CROSSJOIN, SWITCH, CURRENCY, Variance, ) Field, list description Display order BLOB Suport
O DENALI 3 sesje na MTS 2011 (18-19 października) Sesja na preconf wss.pl timeforsharepoint.pl