Upload
hoangdang
View
217
Download
1
Embed Size (px)
Citation preview
Analytic Views:Einsatzgebiete imData WarehouseDani Schnider, Trivadis AG
DOAG Konferenz, 21. November 2017
@dani_schnider DOAG2017
Unser Unternehmen.
Analytic Views - Einsatzgebiete im Data Warehouse2 21.11.2017
Trivadis ist führend bei der IT-Beratung, der Systemintegration, dem Solution Engineering und der Erbringung von IT-Services mit Fokussierung auf -und -Technologien in der Schweiz, Deutschland, Österreich und Dänemark. Trivadis erbringt ihre Leistungen aus den strategischen Geschäftsfeldern:
Trivadis Services übernimmt den korrespondierenden Betrieb Ihrer IT Systeme.
B E T R I E B
KOPENHAGEN
MÜNCHEN
LAUSANNEBERN
ZÜRICHBRUGG
GENF
HAMBURG
DÜSSELDORF
FRANKFURT
STUTTGART
FREIBURG
BASEL
WIEN
Mit über 600 IT- und Fachexperten bei Ihnen vor Ort.
Analytic Views - Einsatzgebiete im Data Warehouse3 21.11.2017
14 Trivadis Niederlassungen mitüber 600 Mitarbeitenden.
Über 200 Service Level Agreements.
Mehr als 4'000 Trainingsteilnehmer.
Forschungs- und Entwicklungsbudget: CHF 5.0 Mio. / EUR 4.0 Mio.
Finanziell unabhängig undnachhaltig profitabel.
Erfahrung aus mehr als 1'900 Projekten pro Jahr bei über 800 Kunden.
Dani Schnider
4
Working for Trivadis in Glattbrugg/Zurich
– Senior Principal Consultant
– Data Warehouse Lead Architect
– Trainer of several Courses
Co-Author of the books
– Data Warehousing mit Oracle
– Data Warehouse Blueprints
Certified Data Vault Data Modeler
21.11.2017 Analytic Views - Einsatzgebiete im Data Warehouse
@dani_schnider danischnider.wordpress.com
Dim Dim
Dim Dim
Facts
Attribute Dimensions
Attribute Dimensions
Analytic View
HierarchiesHierarchies
Overview
21.11.2017 Analytic Views - Einsatzgebiete im Data Warehouse6
Attribute Dimension
Analytic Views - Einsatzgebiete im Data Warehouse8 21.11.2017
Data source:
– Dimension table (for star schemas)
– View on multiple dimension tables (for snowflake schemas)
Member Attributes (columns of a dimension table or view)
– Caption and Description
Hierarchy levels (incl. implicit level ‘ALL’)
– Level Key
– Sort Order within hierarchy level
– Caption and Description
Dimension type (STANDARD or TIME)
Attribute Dimension – Example
Analytic Views - Einsatzgebiete im Data Warehouse9 21.11.2017
CREATE OR REPLACE ATTRIBUTE DIMENSION sh_products_attr_dimUSING sh.productsATTRIBUTES (
prod_idCLASSIFICATION caption VALUE 'Product'CLASSIFICATION description VALUE 'Product',
prod_nameCLASSIFICATION caption VALUE 'Product'CLASSIFICATION description VALUE 'Product',
prod_subcategoryCLASSIFICATION caption VALUE 'Subcategory'CLASSIFICATION description VALUE 'Subcategory',
prod_categoryCLASSIFICATION caption VALUE 'Category'CLASSIFICATION description VALUE 'Category')
LEVEL PRODUCTCLASSIFICATION caption VALUE 'Product'CLASSIFICATION description VALUE 'Product'KEY prod_idMEMBER NAME prod_nameMEMBER CAPTION prod_nameMEMBER DESCRIPTION prod_nameORDER BY prod_nameDETERMINES (prod_subcategory)
...
Hierarchy
Analytic Views - Einsatzgebiete im Data Warehouse10 21.11.2017
Data source:
– Attribute Dimension
Hierarchical Ordering of Levels
– Parent-child relationships between levels of an Attribute Dimension
Aggregation Rows
– A row for each member of each level of the hierarchy
Can be used in SELECT statements
Multiple Hierarchies can be defined for one Attribute Dimension
{ }
{ }
{ }
{ }
{ }
{ }
{ }
Hierarchy – Example
Analytic Views - Einsatzgebiete im Data Warehouse11 21.11.2017
CREATE OR REPLACE HIERARCHY sh_products_hierCLASSIFICATION caption VALUE 'Products'CLASSIFICATION description VALUE 'Products'
USING sh_products_attr_dim(product CHILD OFsubcategory CHILD OFcategory)
CREATE OR REPLACE HIERARCHY sh_times_calendar_hierCLASSIFICATION caption VALUE 'Calendar Year'CLASSIFICATION description VALUE 'Calendar Year'
USING sh_times_attr_dim(day CHILD OFcalendar_month CHILD OFcalendar_quarter CHILD OFcalendar_year)
CREATE OR REPLACE HIERARCHY sh_times_fiscal_hierCLASSIFICATION caption VALUE 'Fiscal Year'CLASSIFICATION description VALUE 'Fiscal Year'
USING sh_times_attr_dim(day CHILD OFfiscal_month CHILD OFfiscal_quarter CHILD OFfiscal_year)
Analytic View
Analytic Views - Einsatzgebiete im Data Warehouse12 21.11.2017
Data source:
– Fact table of a star or snowflake schema
References to Attribute Dimensions
– Key of fact table that references the dimension
– Hierarchies used in the dimension
Base Measures
– Columns of the fact table
Calculated Measures
– Expressions on base measures
Analytic View – Example (1)
Analytic Views - Einsatzgebiete im Data Warehouse13 21.11.2017
CREATE OR REPLACE ANALYTIC VIEW sh_sales_history_avUSING sh.salesDIMENSION BY(sh_times_attr_dim KEY time_id REFERENCES time_id
HIERARCHIES (sh_times_calendar_hier DEFAULT,sh_times_fiscal_hier),
sh_products_attr_dim KEY prod_id REFERENCES prod_idHIERARCHIES (sh_products_hier DEFAULT),
sh_customers_attr_dim KEY cust_id REFERENCES cust_idHIERARCHIES (sh_customers_hier DEFAULT),
sh_channels_attr_dim KEY channel_id REFERENCES channel_idHIERARCHIES (sh_channels_hier DEFAULT),
sh_promotions_attr_dim KEY promo_id REFERENCES promo_idHIERARCHIES (sh_promotions_hier DEFAULT)
)MEASURES (
amount_sold FACT amount_sold,quantity_sold FACT quantity_sold
)
Analytic View – Example (2)
Analytic Views - Einsatzgebiete im Data Warehouse14 21.11.2017
CREATE OR REPLACE ANALYTIC VIEW sh_sales_history_avUSING sh.salesDIMENSION BY(...)
MEASURES (-- Base Measures
amount_sold FACT amount_sold,quantity_sold FACT quantity_sold,
-- Calculated Measuresamt_sold_shr_parent_prod AS
(SHARE_OF(amount_sold HIERARCHY sh_products_hier PARENT)),sales_cal_ytd AS
(SUM(amount_sold) OVER (HIERARCHY sh_times_calendar_hierBETWEEN UNBOUNDED PRECEDINGAND CURRENT MEMBERWITHIN ANCESTOR AT LEVEL calendar_year)),
sales_cal_year_ago AS(LAG(amount_sold) OVER (HIERARCHY sh_times_calendar_hier
OFFSET 1 ACROSS ANCESTORAT LEVEL calendar_year))
)DEFAULT MEASURE amount_sold
Analytic Views - Einsatzgebiete im Data Warehouse15 21.11.2017
Demo 1
a) Creating Attribute Dimensionsb) Creating Hierarchiesc) Creating Analytic Views
Dim Dim
Dim Dim
FactsSQL Query
SQL Queries in Star Schema
SQL Query
21.11.2017 Analytic Views - Einsatzgebiete im Data Warehouse17
SQL Queries in Star Schema
Analytic Views - Einsatzgebiete im Data Warehouse18 21.11.2017
SELECT h1,h2,h3, f1, f2
FROM analytic_viewHIERARCHIES (h1,h2,h3)WHERE (filter on hierarchy1)AND (filter on hierarchy2)
ORDER BY h1,h2,h3
With Analytic View:
SELECT d1,d2,d3, SUM(f1), SUM(f2)
FROM fact fJOIN dim1 d1 ON (…)JOIN dim2 d2 ON (…)JOIN dim3 d3 ON (…)WHERE (filter on dim1)AND (filter on dim2)
GROUP BY d1,d2,d3ORDER BY d1,d2,d3
Classical: Joins on Star Schema
Query on Analytic View – Example
Analytic Views - Einsatzgebiete im Data Warehouse19 21.11.2017
SELECT sh_times_calendar_hier.member_name AS calendar_hier, RPAD(' ', sh_products_hier.depth * 2)
||sh_products_hier.member_name AS products_hier, amount_sold, quantity_sold
FROM sh_sales_history_avHIERARCHIES
( sh_times_calendar_hier, sh_products_hier)
WHERE sh_times_calendar_hier.level_name = 'CALENDAR_YEAR'AND sh_products_hier.prod_category = 'Electronics'
ORDER BYsh_times_calendar_hier.hier_order
, sh_products_hier.hier_order, sh_customers_hier.hier_order
Query on Analytic View – Result
Analytic Views - Einsatzgebiete im Data Warehouse20 21.11.2017
CALENDAR_HIER PRODUCTS_HIER AMOUNT_SOLD QUANTITY_SOLD------------- ------------------------------------------------------ ----------- -------------1998 Electronics 1775688.87 98531998 Game Consoles 11.99 11998 Y Box 11.99 11998 Home Audio 1568900.57 26881998 8.3 Minitower Speaker 578374.62 10431998 Home Theatre Package with DVD-Audio/Video Play 990525.95 16451998 Y Box Accessories 73744.81 26841998 Extension Cable 1685.89 2111998 Xtend Memory 72058.92 24731998 Y Box Games 133031.5 44801998 Adventures with Numbers 35771.66 21471998 Endurance Racing 97259.84 23331999 Electronics 2916369.92 241051999 Game Consoles 272901.18 8841999 Y Box 272901.18 884...2001 Fly Fishing 16726.41 21022001 Martial Arts Champions 53100.3 25062001 Smash up Boxing 100546.16 3121
66 rows selected.
Analytic Views and BI Tools – Example OBIEE
Analytic Views - Einsatzgebiete im Data Warehouse21 21.11.2017
Metadata Layer is part of BI Tool:
OBIEE
– Business Model and Mapping
SAP BusinessObjects
– Universe
IBM Cognos
– Framework Manager
Analytic Views and BI Tools – Example Tableau
Analytic Views - Einsatzgebiete im Data Warehouse22 21.11.2017
Analytic Views and BI Tools
Analytic Views - Einsatzgebiete im Data Warehouse23 21.11.2017
For BI tools with metadata layer (e.g. OBIEE):
No benefits with Analytic Views
Import functionality would be useful
For BI tools without metadata layer (e.g. Tableau, QlikView):
Metadata definition in database
Simplification of user queries
ev. Views on top of Analytic Views required
Analytic Views and ETL
Analytic Views - Einsatzgebiete im Data Warehouse24 21.11.2017
Analytic View can be Source for ETL Job
Source should be Star Schema
– Physical (tables) or Virtual (views)
Useful for
– Complex Calculations of Derived Measures
– Exports to Flat Structures(e.g. Standard Reports)
Analytic Views and ETL
Analytic Views - Einsatzgebiete im Data Warehouse25 21.11.2017
Dim Dim
Dim Dim
FactsAnalytic
ViewReportTable
Analytic Views - Einsatzgebiete im Data Warehouse26 21.11.2017
Demo 2
a) Queries on Hierarchiesb) Queries on Analytic Viewsc) A View behind the Scenes
Conclusion: Analytic Views are…
Analytic Views - Einsatzgebiete im Data Warehouse28 21.11.2017
A Powerful Extension of Oracle SQL
Very flexible for Analytic Queries on Star Schemas
Useful for Ad-hoc Queries in SQL
Not (yet) supported by any BI Tools
Not a Replacement of a Star Schema
Oracle Documentation
Analytic Views - Einsatzgebiete im Data Warehouse29 21.11.2017
Oracle Database 12c Release 2, Data Warehousing Guide
– 24 Overview of Analytic Views
– 25 Attribute Dimension and Hierarchy Objects
– 26 Analytic View Objects
Oracle Database 12c Release 2, SQL Language Reference
– CREATE ANALYTIC VIEW
– Calculated Measures Expressions
Oracle Live SQL
– Creating an Analytic View for the Sales History (SH) Sample Schema
– Querying Analytic Views
Additional Information
Analytic Views - Einsatzgebiete im Data Warehouse30 21.11.2017
Attribute Dimensions and Hierarchies in Oracle 12.2
Analytic Views: Powerful Oracle 12.2 Feature for Business Intelligence
Analytic Views: A Performance Deep Dive Analysis
danischnider.wordpress.com