<Insert Picture Here> Novinky pro Datové sklady Erik Eckhardt Oracle Czech 1
Oracle a EMC v praxi Zdroj: Winter Corporation TopTen Program (WinterCorp s independent survey of the world s biggest and most heavily used databases), September 8th 2005 Databáze pro Datové sklady 30 let vývoje a inovace Oracle databáze Z toho 15 let soustední na oblast BI/DW Desítky vlastností a stovky funkcí pro BI/DW Úplnáinfrastruktura pro ETL XML Partitioning DataMining Options Programování v PL/SQL Programování v Jav OCI BULK operations Regulerní výrazy Error loging tables Paralell Execution Parallel Index Scans Parallel Insert, Update, Delete Parallel Bitmap Star Query Enterprise ETL Slowing Changing Dimensions Transportable ETL modules Multiple configurations Pluggablemapping Target load ordering Metadata lineage and impact analysis Metadata change propagation Deployment to BI Data Quality Range Hash List Composite Partition Pruning Partition-Wise Join Partitioning Local/Global Indexes Table Compression Analytické funkce Naïve Bayes Decision Trees General Linear Models Support VectorMachines Enhanced k-means Clustering Orthogonal Partitioning Clustering AssociationRules ormarketbasket Analysis Nonnegative Matrix Factorization Anomaly Detection Parallel ANALYZE Data Profiling Statistické funkce Attribute Importance Parallel Constraint Enabling Data Pumps Export / Import PL/SQL API Transportable Tablespace TT Cross Platform CDC - Change Data Capture Streams Advanced Queuing External Tables SQL-Loader Table Function Multi-Table Insert Merge / Upsert Workflow asované spouštní úloh Gateways MS SQL Sybase Informix Teradata Data Rules Data Auditor Monitor Usage in Process Flows Data Corrections Applications Connectors E-Business Suite PeopleSoft SAP R/3 Siebel CRM Vysoký výkon pro dotazování Paralell Execution Distribuované transakce Materialized Views Query-Rewrite Indexy Bitmap Bitmap-Join Function-based Index Skip Scan Index Organized Tables Cluster Tables Descriptive statistics Hypothesis testing Correlations analysis Ranking functions Cross Tabulations with Chi-square statistics Linear regression ANOVA Test Distributionfit Window Aggregate functions Statistical Aggregates Pareto analysis LAG/LEAD functions Reporting aggregate functions SQL Model No-Logging operace HINTs OLAP Options OLAP API SQL OLAP_TABLE Škálovatelnost a dostupnost RAC Data Guard Flashback Log Miner Vysoká bezpenost Advanced Security Virtual Private Database Label Security Auditování Snadná administrace Automatic Memory & Storage Management Resource Management Resumable operations Online DDL operations Recovery Manager (RMAN) SQL Access Advisor System Managed Undo... 2
Databáze pro Datové sklady Novinky V záí 2007, uvolnna verze Oracle 11g 3x více test než v 10g Grid celkem 2.000 CPU Pes 235.000 funkních test Celkem 15.000.000 hodin test Co 11g pináší pro BI&DW? <Insert Picture Here> PARTITIONING 3
Oracle Partitioning 10 let vývoje a zkušeností Základní funkcionalita Výkonnost Administrace Oracle8 Range partitioning Global range indexes Static partition pruning Basic maintenance operations: add, drop, exchange Oracle8i Hash and composite range-hash partitioning Partition-wise joins Dynamic pruning Merge operation Oracle9i List partitioning Global index maintenance Oracle9i R2 Composite range-list partitioning Fast partition split Oracle10g Global hash indexes Local Index maintenance Oracle10g R2 1M partitions per table Multi-dimensional pruning Fast drop table Oracle Partitioning 10 let vývoje a zkušeností Základní funkcionalita Výkonnost Administrace Oracle8 Range partitioning Global range indexes Static partition pruning Basic maintenance operations: add, drop, exchange Oracle8i Hash and composite range-hash partitioning Partition-wise joins Dynamic pruning Merge operation Oracle9i List partitioning Global index maintenance Oracle9i R2 Composite range-list partitioning Fast partition split Oracle10g Global hash indexes Local Index maintenance Oracle10g R2 1M partitions per table Multi-dimensional pruning Fast drop table Oracle Database 11g More composite choices REF Partitioning Virtual column Part. Interval Partitioning Partition Advisor 4
Oracle Partitioning 11g Nové typy složeného partitioningu Typ List Range Range - Range List - Hash List - List Píklad použití Geografie Období Datum dodání Datum objednání Geografie íslo objednávky Geografie Produkt Oracle Partitioning 11g Interval Partitioning CREATE TABLE sales (order_date DATE,...) PARTITON BY RANGE (order_date) INTERVAL(NUMTOYMINTERVAL(1,'month') (PARTITION p_first VALUES LESS THAN ('01-FEB-2006'); Table SALES......... Jan 2006 Feb 2006 Mar 2006 Jan 2007 Oct 2009 Nov 2009 Ostatní partition existují pouze v metadatech První partition je fyzicky vytvo ena 5
Oracle Partitioning 11g Interval Partitioning CREATE TABLE sales (order_date DATE,...) PARTITON BY RANGE (order_date) INTERVAL(NUMTOYMINTERVAL(1,'month') (PARTITION p_first VALUES LESS THAN ('01-FEB-2006'); Table SALES......... Jan 2006 Feb 2006 Mar 2006 Jan 2007 Oct 2009 Nov 2009 Nová partition je automaticky alokována INSERT INTO sales (order_date DATE,...) VALUES ('04-MAR-2006',...); Oracle Partitioning 11g REF Partitioning Table ORDERS...... RANGE(order_date) Primary key order_id Jan 2006 Feb 2006 Table LINEITEMS Redundantní ulo ení order_date Redundantní údr ba partitioningu...... RANGE(order_date) Foreign key order_id Jan 2006 Feb 2006 6
Oracle Partitioning 11g REF Partitioning Table ORDERS...... RANGE(order_date) Primary key order_id Jan 2006 Feb 2006 Table LINEITEMS PARTITION BY REFERENCE Partitioning key je zddn skrz vazbu PK-FK...... Foreign key order_id Jan 2006 Feb 2006 Oracle Partitioning 11g Virtual Columns Základní tabulka se všemi sloupci... CREATE TABLE accounts (acc_no number(10) not null, acc_name varchar2(50) not null,... 12500 Adams 12507 Blake 12666 12875 King Smith 7
Oracle Partitioning 11g Virtual Columns Základní tabulka se všemi sloupci...... je rozšíena o virtuální (odvozený) sloupec CREATE TABLE accounts (acc_no number(10) not null, acc_name varchar2(50) not null,... acc_branch number(2) generated always as (to_number(substr(to_char(acc_no),1,2))) 12500 Adams 12 12507 Blake 12 12666 King 12 12875 Smith 12 Oracle Partitioning 11g Virtual Columns Základní tabulka se všemi sloupci...... je rozšíena o virtuální (odvozený) sloupec... a ten je použit jako partitioning key CREATE TABLE accounts (acc_no number(10) not null, acc_name varchar2(50) not null,... acc_branch number(2) generated always as (to_number(substr(to_char(acc_no),1,2))) partition by list (acc_branch)... 12500 Adams 12 32320 Jones 32 12507 Blake 12 32407 Clark 32 12666 King 12... 32758 Hurd 32 12875 Smith 12 32980 Phillips 32 8
<Insert Picture Here> COMPRESSION Data Compression Dje se mezi hodnotami ádk a sloupc na úrovni db bloku (eliminace duplicitních hodnot) Kompresní pomr závisí na datech Bžn 2:1 až 4:1 (12:1 Telco) Vhodnjší pro historická data (DWH) Komprese pouze pi BULK operacích (DML operace data nekomprimují) Režie pi nahrávání dat Dekomprese dat až pi pístupu k nim Aplikan transparentní Výhody Šetí místo (disk / buffer cache) Snižuje I/O Zvyšuje výkon dotaz 9
Data Compression v praxi Kompresní pomr a výkonnost aplikace Total Table SALES Segment size Partition Non-compressed Compressed Compression size size factor [bytes] [bytes] MS_200330 24 051 712 11 403 264 2,11 MS_200331 22 478 848 10 616 832 2,12 MS_200332 23 265 280 11 010 048 2,11 MS_200333 23 330 816 11 010 048 2,12 MS_200334 27 918 336 13 369 344 2,09 MS_200335 30 212 096 14 680 064 2,06 MS_200336 29 884 416 14 352 384 2,08 MS_200337 30 146 560 14 483 456 2,08 MS_200338 33 488 896 17 104 896 1,96 MS_200339 38 469 632 20 840 448 1,85 MS_200340 21 364 736 11 403 264 1,87 304 611 328 150 274 048 2,04 350 000 000 300 000 000 Segment size Non-compressed 304 611 328 Compressed 250 000 000 200 000 000 150 000 000 150 274 048 100 000 000 50 000 000 0 Query performance - CPU [s] Query performance - Elapsed Time [s] 35 40 30 25 20 15 10 5 0 11,59 9,46 7,53 No 4,22 3,55 3,12 Yes Q3 Q2 Q1 35 30 25 20 15 10 5 0 18,57 9,51 7,55 No 4,35 3,59 3,15 Yes Q3 Q2 Q1 Compression Com pression Query performance - Physical I/O Query performance - Logical I/O 20 000 18 000 16 000 14 000 12 000 10 000 8 000 6 000 4 000 2 000 0 6 625 7 623 4 707 No 4 081 3 075 2 875 Yes Q3 Q2 Q1 600 000 500 000 400 000 300 000 200 000 100 000 0 193 812 167 814 133 889 No 17 764 35 673 19 670 Yes Q3 Q2 Q1 Compression Compression 10
OLTP Table Compression Oracle Database 11g rozšiuje stávající kompresy o kompresy vhodnou pro OLTP (transakní) systémy Podpora DML operací (INSERT, UPDATE, DELETE) Nový algoritmus eliminuje režii (overhead) pi zápisu Dávková komprese zajišuje nulový vliv pro OLTP transakce Zvýšení výkonu pi tení Díky mén I/O operacím (fyzické / logické) mže být tení (selecty) dat rychlejší OLTP Table Compression Jak to funguje!!" # Block header Free Space Uncompressed Compressed!!" Jakmile zaplnní bloku dosáhne parametr PCTFREE, je automaticky na pozadí spuštna komprese dat Komprese eliminuje díry vzniklé mazáním dat, maximalizuje nepetržité volné místo v bloku, snižuje row-chaining a row-migration 11
Advanced Compression v 11g OLTP Table Compression Komprese dat vhodná i pro OLTP systémy Data Pump Compression Komprese dat a metadat pi exportu Data Guard Network Compression Komprese chybjících archivních log posílaných do Standby databáze Fast RMAN Compression Komprese obsahu backup set ped zápisem na disk nebo na pásku SecureFiles Compression&Deduplication Komprese a deduplikace nestrukturovaných dat jako jsou obrázky, audio, video, dokumenty,... <Insert Picture Here> MOLAP 12
ROLAP vs. MOLAP Relaní uložení vs. multidimenzionální uložení vs. MOLAP Klasický pístup 13
MOLAP Pístup Oracle MDDS engine integrován do RDBMS Spolená bezpenost, dostupnost, škálovatelnost s RDBMS Jedno datové úložišt pro relaní a multidim. data Stejná sada nástroj pro správu, vývoj, ladní nebo zálohování Oracle Enterprise Manager (OEM) Oracle Warehouse Builder (OWB) Recovery Manager (RMAN) OLAP API, AW/XML, PL/SQL nebo SQL rozhraní Podpora writeback, komprese, partitioning Zvýšení odezvy dotaz Dotazy oproti DWH SQL Query Region Date Product Channel 14
Zvýšení odezvy dotaz v 8i, 9i, 10g Dotazy oproti DWH s automatickým pepisem do Materialized Views SQL Query Materialized Views Region Date Sales by Region Sales by Date Query Rewrite Sales by Product Sales by Channel Product Channel Zvýšení odezvy dotaz v 11g Dotazy oproti DWH s automatickým pepisem do OLAP kostky (Cube Organized Materialized Views) SQL Query Region Date Query Rewrite Product Channel Automatic Refresh OLAP Cube 15
<Insert Picture Here> DATA INTEGRATION (E-LT) Oracle Warehouse Builder Grafické prostedí pro návrh, tvorbu a provoz konsolidovaných datových úložiš (DWH, DM,...) Optimalizované generování kódu pro rzné verze Oracle Od 10g zdarma souástí jakékoli edice databáze 16
Oracle Warehouse Builder 11g OWB je zahrnuto ve standardní instalaci Oracle databáze Out-of-the-box nastavení pro Workflow, repository/workspace mngmt. Siebel konektor a podpora Heterogenous Gateways 11g Vylepšený performance tuning Explain plan support, sbr statistik a SQL tuning advisor Oracle Data Integrator (díve ) Platforma pro jakékoli datové integrace v heterogenním prostedí, založena na E-LT architektura Pro transformace není teba dedikovaný HW a ETL server Využívá stávajících zdroj a investic Vysoký výkon a škálovatelnost Integrované integrace Jedno prostedí pro rzné typy dat. integrací a projekt Event, Service nebo Data Oriented Integrations DWH, MDM, Migrace, Replikace, Federace, SOA Deklarativní návrh dat. pump Zjednodušuje poet potebných krok pi návrhu dat. pump Snižuje nároky na vývojáe a jejich znalosti; Automaticky generuje datové pumpy nezávisle na zdrojové a cílové db Knowledge moduly Best-practices pro rzné oblasti Datové integrace a používané technologie (CDC pro DB2, Oracle; SCD pro Teradata, MSSQL; Incremental Update pro Netezza...) 34 17
Oracle Coffee Ranní káva s Oracle Data Integratorem (ODI) 18.6.2008 od 8:30 v Oracle Czech Obsah Unikátní vlastnosti Architektura Jak na Event-oriented Integration Service-oriented Integration Data-oriented Integration Knowledge moduly jejich správa, tvorba a modifikace Datová kvalita, Workflow, Monitorování proces, Data Lineage Píklady nasazení ODI a integrace s Oracle BI, EPM, BAM, SOA a OWB Prostor pro vaše dotazy <Insert Picture Here> 18
19