Databáze v praxi RNDr. Ondřej Zýka Principal Consultant
Agenda
Obsah
Představení Teradata Teradata Databáze Doménové logické modely MS SQL Server Databáze Podpora BI Aktuální směry ve vývoji databází
Profinit
DataManagement služby firmy Profinit
Delivery of exact and understandable
Information
Build up
Information Factory for your business Set up planning, control, development and operation
processes
Support technology for excellent performance and faultless operation
DatabázeTeradata
Historie
• Založena v roce 1979 v garáži v Kalifornii (Brentwood). • Teradata symbolizuje schopnost spravovat extrémní množství dat. • Primárně určena pro datové sklady a BI aplikace. • Založena na „shared nothing“ architektuře umožňující lineární rozšiřitelnost. • V současnosti využívána v největších datových skladech • V Česku • KB, • Česká pojišťovna, • TO2, …
„Shared nothing“ architektura Parsing engine (PE) BYNET
AMP 1
AMP 2
AMP 3
AMP 4
RAM
RAM
RAM
RAM
Komponenty
• Parsing engine – PE • Parsuje a optimalizuje dotazy, předává požadavky jednotlivým AMPům; • BYNET • Komunikační kanál (duplikovaný) pro předávání požadavků a výsledků; • AMP – Access modul processor • Zodpovědný za získání požadovaných dat z diskových úložišť; • Diskový prostor • Součet diskových prostorů všech AMPů;
Fyzická architektura BYNET
Node 1 with AMPs
Node 2 with AMPs
Node 3 with AMPs
Node 4 with AMPs
Komponenty
• Distribuce dat založena na primárním indexu. • Každý AMP má definovánu množinu hash hodnot primárního indexu. • Samotné uložení dat nahrazuje strukturu indexu. • Další nástroje pro zrychlení přístupu k datům • Secondary index, • Join index, • Statistiky.
Fyzická architektura BYNET
Node 1 with AMPs
Node 2 with AMPs
Node 3 with AMPs
Node 4 with AMPs
Komponenty Primary index
Secondary index
Required
Yes
No
Can be unique or nonunique
Yes
Yes
Used for row distribution
Yes
No
Create and drop dynamically
No
Yes
Improve access
Yes
Yes
Required separate physical strucure
No
Yes
Required extra processing overhead
No
Yes
Nástroje a služby
• Nástroje správy odpovídají „stáří“ databáze. • Systém primárně zaměřen na výkon. • Nemá vlastní nástroje na prezentaci a analýzu dat – spolupracuje se všemi leadry trhu • Microstrategy, • Cognos, • Oracle, • BusinessObject, • Microsoft.
Logické modely
• Teradata Communications Logical Data Model • Teradata Financial Services Logical Data Model • Teradata Healthcare Logical Data Model • Teradata Insurance Logical Data Model • Teradata Manufacturing Logical Data Model • Teradata Media Logical Data Model • Teradata Retail Logical Data Model • Teradata Transportation and Logistics Logical Data Model • Teradata Travel and Hospitality Industry Logical Data Model • Teradata Utilities Logical Data Model
Logické modely
• Kumulovaná zkušenost ze stovek projektů datových skladů a projektů BI. • Obsah jednotlivých modelů: • Více úrovní pohledu • Konceptuální pohled, • Funkční oblasti (Kontrakt, Účet, Kanál, Událost, Kampaň, Party, Produkt, …), • Detailní logický model. • Podrobný popis jednotlivých entit včetně atributů a relací, jejich význam a použití. • Textový popis i modely.
Aplikace podle obchodních požadavků
• Business Intelligence • Data Mart Consolidation • Master Data Management • Tax and Revenue Management • Customer Relationship Management • Data Mining and Analytics • Enterprise Risk Management • SAP Integration • Data Governance • Data Warehouse Migration • Financial Management
Databáze Microsoft SQL Server
Historie
1988 – Microsoft spolupracuje s firmou Sybase 1991 – HW – 2.5" 100MB disk 1995 – Microsoft SQL Server 6.0 1998 – Microsoft SQL Server 7.0 2000 – Microsoft SQL Server 2000 2003 – Windows Server 2003 - 64-bit system - překročení 2GB hranice RAM 2007 – HW – 1TB disk (Hitachi GST) 2008 – SQL Server 2008
Komponenty
Technologické zajímavosti
• Pokročilé postupy přístupu k datům: • Zamykání dat, • Použití snapshotů. • Podpora vysoké dostupnosti • On-line administrativní postupy (přepočet indexů). • SQL jazyk • Mnoho užitečných rozšíření, • Schopnost doplňovat CLR kód (.NET v databázi). • Více edic serveru podle požadavků uživatelů • Zapouzdřené databáze • Enterprise edice
Jednotná konsole pokrývající všechny administrativní postupy
Pokrytí všech datových potřeb podniku
Integrace s operačním systémem Orientace na grafické uživatelské prostředí Vývoj aplikací Integrace s .NET Visual Studio Správa různých typů dat Relační data OLAP server Soubory XML
Integrace dat BizTalk server Integration services (ETL) Replikace dat Analýza OLAP service Search engine Prezentace dat Napojení na Office Reporting services Napojení na Sharepoint
Jednotné vývojové prostředí
Reporting services - ukázka
Ukázka
Aktuální směry ve vývoji databází
Aktuální směry ve vývoji databází
• Data uložená po sloupcích • In-memory databáze • Databáze v Cloudu
Data uložená po sloupcích
• Vertica • Sybase IQ • Oracle – bitmapové indexy
Data uložená po sloupcích
SELECT Count(*) FROM sale where color = ′Green′ SELECT Count(*) FROM sale where color in (′Green′, ′Red′)
Data uložená po sloupcích
SELECT SUM(qty) FROM sale (2 * 64) + (3 * 32) + (2 * 16) + (1 * 8) + (3 * 4) + (2 * 2) + (3 * 1) = 283
In-memory database – příčiny vzniku
• Velikost operační paměti • 1981 – 640 KB • 2010 – stovky GB • Rychlost procesorů • 1981 - 4.77 MHz • 2009 - 3.60 GHz - více úrovní keší • Rychlost diskových operací • Skoro stejná – cca 200 operací za sekundu
In-memory database
• Ústup od ACID principů • ACID – Atomicity, Consistency, Isolation, Durability • Dva přístupy • Klasické relační databáze udržované v keších (v paměti) • Nativní In-memory databáze • Používají se zejména jako databázové keše klasických systémů
In-memory database – příklady
• Oracle – TimesTen • Sybase ASE 15.5 – In-memory option • Apache Derby • Oracle Berkeley DB • VoltDB • SQLite • a mnoho dalších
Databáze v Cloudu
• Módní buzzwords • IaaS - Infrastructure as a Service • PaaS - Platform as a Service • AaaS - Application as a Service • SaaS - Software as a Service • DaaS - Database as a Service • Další krok virtualizace infrastruktury • Public and Private Cloud
Databáze v Cloudu
• Klady • Žádná starost o hardware • Žádná starost o infrastrukturu • Žádná starost o zálohování • Žádná administrace • Zaručena vysoká dostupnost • Absolutní minimum administrátorů • Zvětšení výkonu na požádání • Extrémně rychlé (okamžité) nasazení
Databáze v Cloudu
• Zápory
•Bezpečnost •Nedůvěra •Data nemáte u sebe • Omezená množina funkcí • Speciální API
Databáze v Cloudu
• Aktuální stav • Amazon, Google - PaaS • Oracle • Exadata, Exalogic • Private Cloud • IBM, HP, Dell • PaaS, IaaS • Aktivně připravují • DaaS – Microsoft – součást Microsoft Azure • SalesForce.com (Database.com) • Gooddata.com
Gooddata.com - příklad
Gooddata.com - příklad
Gooddata.com - příklad
Závěr
Diskuse Dotazy Komentáře Připomínky …