Marton József. Adatbázisok elmélete VITMMA február 20.

Hasonló dokumentumok
Memóriarezidens adatbáziskezelés

Teljesítmény mérése és hangolása adatbáziskezelő rendszerekben

Memória alapú adatbázisok (IMDB: In-Memory DataBase vagy MMDB Main-Memory DataBase)

Memóriaadatbázisok. áttekintő előadás az. Adatbázisok haladóknak. c. tárgy keretében, szeptember 18. Szerző: Marton József Ernő BME-VIK TMIT

Adatbáziskezelő-szerver. Relációs adatbázis-kezelők SQL. Házi feladat. Relációs adatszerkezet

Valós idejű megoldások: Realtime ODS és Database In-Memory tapasztalatok

Adatbáziskezelı-szerver SQL. Relációs adatbázis-kezelık. Relációs adatszerkezet. Házi feladat

Operációs Rendszerek II. Első verzió: 2009/2010. I. szemeszter Ez a verzió: 2009/2010. II. szemeszter

2011. November 8. Boscolo New York Palace Budapest. Extrém teljesítmény Oracle Exadata és Oracle Exalogic rendszerekkel

Könyvtári szervervirtualizáció Oracle Virtual Machine platformon

Rendszermodernizációs lehetőségek a HANA-val Poszeidon. Groma István PhD SDA DMS Zrt.

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

Software Defined technológiák használata Oracle adatbázis konszolidációhoz

SQLServer. SQLServer konfigurációk

Adatbáziskezelő-architektúrák. Adatbázisok elmélete 2. előadás Gajdos Sándor

április 24. INFO Savaria április 24. INFO Savaria április 24. INFO Savaria

Marton József BME-TMIT. Adatbázisok VITMAB november 11.

Web harvesztelés. Automatikus módszerekkel

Ismerkedjünk tovább a számítógéppel. Alaplap és a processzeor

Mosolygó Ferenc értékesítési konzultáns

GDi Esri Magyarország Felhasználói Konferencia Timár Gábor: Konkurens adatfeldolgozás ArcGIS rendszerben

Operációs rendszerek. UNIX fájlrendszer

Számítógép felépítése

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

NAGY TELJESÍTM. Szerzők Dévai. István Automatizálási. és s Alkalmazott Informatikai Tanszék

Informatikai alapismeretek Földtudományi BSC számára

SQLServer. Probléma megoldás

elektronikus adattárolást memóriacím

Adatbázis rendszerek Gy: Az adattárolás fejlődése

Vodafone ODI ETL eszközzel töltött adattárház Disaster Recovery megoldása. Rákosi Péter és Lányi Árpád

SQLServer. Particionálás

Operációs rendszerek. Az NT memóriakezelése

Tranzakció-kezelés, alapfogalmak. Vassányi István, 2012.

Memóriák - tárak. Memória. Kapacitás Ár. Sebesség. Háttértár. (felejtő) (nem felejtő)

Adatbázis rendszerek 7. előadás State of the art

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

TELJESÍTÉNYMÉRÉS FELHŐ ALAPÚ KÖRNYEZETBEN AZURE CLOUD ANALÍZIS

Készítette: Trosztel Mátyás Konzulens: Hajós Gergely

ProofIT Informatikai Kft Budapest, Petzvál J. 4/a

Exadata, a világ leggyorsabb adatbázisgépe

A számítógép egységei

Fájlrendszerek. A Windows operációs rendszerek fájlrendszere

Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon

VIR alapfogalmai. Előadásvázlat. dr. Kovács László

Dr. Illés Zoltán

Operációs rendszerek. Bemutatkozás

Vizuális adatelemzés - Gyakorlat. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

2. Számítógépek működési elve. Bevezetés az informatikába. Vezérlés elve. Külső programvezérlés... Memória. Belső programvezérlés

Riak. Pronounced REE-ahk. Elosztott adattároló eszköz. Molnár Péter

Virtuális Obszervatórium. Gombos Gergő

UNIX / Linux rendszeradminisztráció

Számítógépek felépítése

Bepillantás a gépházba

Fájlszervezés. Adatbázisok tervezése, megvalósítása és menedzselése

Adatbázis-kezelő rendszerek. dr. Siki Zoltán

Hálózatba kapcsolt adatbázisok. Erős Levente, TMIT 2011.

Microsoft SQL Server telepítése

Számítógép Architektúrák

A számítógépek felépítése. A számítógép felépítése

Adatbázisok elmélete

Autóipari beágyazott rendszerek. Komponens és rendszer integráció

webalkalmazások fejlesztése elosztott alapon

Az adatok a vállalat kulcsfontosságú erőforrásai. Az információs rendszer adatai kezelésének két alapvető változata:

Component Soft és tovább

Ugrólisták. RSL Insert Example. insert(22) with 3 flips. Runtime?

Operációs rendszerek III.

Adatbázisrendszerek április 17.

Történet John Little (1970) (Management Science cikk)

Párhuzamosítás adatbáziskezelő rendszerekben

RELÁCIÓS LEKÉRDEZÉSEK OPTIMALIZÁLÁSA. Marton József november BME TMIT

Konszolidáció és költségcsökkentés a gyakorlatban. Az Országos Tisztifőorvosi Hivatal Oracle adatbázis konszolidációja

Grayteq. Grayteq DLP Teljesítmény Benchmark. Grayteq DLP Benchmark. Sealar Corporate Proprietary Commercial-in-confidence

Genetikus algoritmusok

Mobil Peer-to-peer rendszerek

Nyilvántartási Rendszer

Indexek, tömörítés és más állatfajták

Utolsó módosítás:

Magas szintű optimalizálás

Csima Judit szeptember 6.

Flash és PHP kommunikáció. Web Konferencia 2007 Ferencz Tamás Jasmin Media Group Kft

Magyar Posta központi Oracle infrastruktúrája VMware alapokon

Adatbányászat és Perszonalizáció architektúra

Előadás_#13. Egy lemez írási művelet kiszolgálása

Adatbázis rendszerek. dr. Siki Zoltán

Nyíregyházi Egyetem Matematika és Informatika Intézete. Input/Output

Költséghatékony high-end adattároló megoldások Vitéz Gábor, Avaxio Kft.

Operációs rendszerek. Az NT folyamatok kezelése

Fájl rendszer (implementáció) Fájl rendszer struktúra Allokációs módszerek Szabad hely kezelése Directory implementáció Helyreállítás

ADATBÁZIS-KEZELÉS. Adatbázis-kezelő rendszerek

Bevitel-Kivitel. Eddig a számítógép agyáról volt szó. Szükség van eszközökre. Processzusok, memória, stb

Multimédiás adatbázisok

Hálózati operációs rendszerek II.

Számítógép Architektúrák

Elosztott rendszer architektúrák

Számítógép Architektúrák

The Power To Develop. i Develop

Analitikai megoldások IBM Power és FlashSystem alapokon. Mosolygó Ferenc - Avnet

Tudásalapú információ integráció

Operációs rendszerek

Adatbázisok elmélete

Átírás:

Marton József marton@db.bme.hu BME-TMIT Adatbázisok elmélete VITMMA13 2018. február 20.

Miről lesz szó? ról általában Alapelv, kontraszt a,,hagyományossal Előnyök, erősségek Hátrányok (?), nehézségek Szervezés Kommunikáció ACID D betűje Fizikai szervezés, lekérdezésvégrehajtás Megvalósítások

DBMS: a kezdetek Az 1960-as évek hardverei Egy mag, egyetlen CPU Kevés memória Diszk-alapú adatbázistárolás A diszk lassú

DBMS: a kezdetek Az 1960-as évek hardverei Egy mag, egyetlen CPU Kevés memória Diszk-alapú adatbázistárolás A diszk lassú Válaszok Ütemező algoritmusok Buffer-kezelési algoritmusok Fizikai szervezés: B*-fa, Heap, vödrös hash A diszk lassú

DBMS: overhead Mérés: OLTP-ben a CPU-idő felhasználása buffer pool: 34% latch kezelés: 14% zárkezelés: 16% naplózás: 12% keresési kulcsok összehasonĺıtása: 16%

DBMS: overhead Mérés: OLTP-ben a CPU-idő felhasználása buffer pool: 34% latch kezelés: 14% zárkezelés: 16% naplózás: 12% keresési kulcsok összehasonĺıtása: 16% érdemi munka: 7% In: OLTP THROUGH THE LOOKING GLASS, AND WHAT WE FOUND THERE; SIGMOD, pp. 981-992, 2008.

Adathozzáférés DBMS-ben Az ábrán: DRDB piros nyilak: üzenetátadás zöld nyilak: adatáramlás a szaggatott keret átlépése a futási környezetváltás kliens-szerver modell osztott memória alapú adatelérés durva hozzáférés szabályozás

Memóriaadatbázis: alapelv Memóriaadatbázis-rendszer (IMDB) (In-Memory DataBase) az adatok elsődleges példánya a fizikai memóriában DRDB: az elsődleges példány diszken van (Disk-Resident DataBase) mondjuk inkább úgy: blokkos tárolón (vö. SSD)

Az alapelv létjogosultsága 4 10 4 40,000 1GB RAM ára (USD) Ár 2 0 3,000 400150 20 20 1990 2000 2010 2020 Sok és olcsó RAM OLTP, OLAP rendszerek számára Opció: adatbázis particionálása IMDB és DRDB részre automatikusan vagy kézzel konfigurált módon az adatok migrációja a két rendszer között

IMDB használatának előnyei gyorsabb adatelérés, tranzakció-feldolgozás akár hard real-time alkalmazások egyes esetekben egyszerűbb alkalmazás-logika diszk-io alrendszer eliminálása saját adatszerkezetek helyett kész komponens olcsóbb fejlesztés, olcsóbb termék

IMDB: hátrányok, nehézségek bizonyos esetekben bonyolultabb alkalmazás-logika tartósság biztosítása biztonsági mentések szervezése a rendszer indulásakor fel kell tölteni az adatbázist mentésből, fejállomásról letöltve vagy on-line adatgyűjtésből segédstruktúrák online felépíthetők Megéri-e: előnyök vs. hátrányok: a konkrét feladat határozza meg

IMDB: megvalósítási kihívások optimalizált adatszerkezetek a fizikai memória véletlen elérését kihasználják zárkezelés, tranzakciók ütemezése megfelelő granularitású zárak tartósság HW támogatás: elemes RAM, hálózaton szinkronizáló RAM-kártyák memrisztor (RRAM: Resistive random-access memory) szinkron vagy aszinkron naplózás nem követelmény

Vajon IMDB-nek minősül? egyedi alkalmazás saját adatszerkezetekkel hagyományos DBMS úgy, hogy nagy fájlrendszer cache az operációs rendszerben nagy buffer pool adatfájlok RAM-diszken

Tranzakciós tulajdonságok I. Szemben a DRDB-nél megismertekkel, az IMDB rendszerekben: A atomicitás nincs markáns különbség gyorsabb tranzakciók, magasabb zár-granularitás C konzisztencia nincs markáns különbség I izoláció sorosítható helyett valódi soros ütemezés környezetváltások: a processzor-cache, mint környezet D tartósság

Tranzakciós tulajdonságok II. A tartósság Az adatbázisba,,írt adatok,,megmaradnak diszk: passzív memória: aktív tápfeszültség kimaradásakor törlődik elemmel támogatott RAM bithiba modul meghibásodások ECC (vö: diszkek: RAID) modultöbbszörözés naplózás (és persze mentések)

Tranzakciós tulajdonságok III. A naplózás... de hova? diszkre: már megint diszkio stable memory kicsi, nagy megbízhatóságú memória-megoldás memrisztor amikor elérhető lesz, de még drága... de mikor? írási műveletkor azonnal tranzakció kommitjakor még később?! ún. durable commit (Oracle TimesTen)

Tranzakciós tulajdonságok III. Durable commit Table: durable commit hatása a tranzakciófeldolgozási kapacitásra select/insert/update 70/15/15 40/30/30 20/40/40 tartós kommit 100% 52% 38% nem tartós kommit 918% 714% 626% A mérés a tptbm benchmark eredményeit mutatja Mérési környezet: AMD Athlon64 3000+ (1809 MHz) CPU, GiB RAM, 7200 rpm fordulatú Seagate Barracuda UltraATA 100-as diszk, Debian Linux 3.1 amd64 OS, TimesTen 6.0.2-es, 64 bit

Index adatszerkezetek I. Hash és B*-fa Hash-alapú segédstruktúrák kiterjeszthető hash többszintes hash B*-fa (IMDB-hez lassú?) Figure: B*-fa: (a) egy B-fa csomópont, (b) egy B-fa

Index adatszerkezetek II. Az AVL-fa AVL-fa bináris keresőfa AVL-tulajdonsággal gyors navigáció gyenge memóriakihasználás Az ábrán: (a) egy AVL-fa csomópont (b) egy AVL-fa

Index adatszerkezetek III. Az T-fa B*-fa és AVL-fa előnyei összegyúrva gyors navigáció jó memóriakihasználás Az adatok tárolása adat maga mutató m + adat része (pkt-fa) Az ábrán: (a) egy csomópont (b) egy T-fa (c) elemek helye a fában

Relációk tárolása rekordok vagy mutatók tömbje idegen kulcsok követésének (illesztés) támogatása avagy,,előreszámított (fél)illesztések DRDB: klaszterezés IMDB: a kulcs értéke helyett mutató

Lekérdezésvégrehajtás Vetítés, szelekció sokszor olcsóbb az eredményreláció leírójának módosítása és on-the-fly számítás, mint a tényleges számítás Illesztések l. a mutatók követéséről írottakat Költség DRDB: tipikusan az eredmény kíırásának költségét nem számoljuk (miért?), de IMDB: a saját címtér miatt nem mindig merül fel

Architektúra: partícionálás ha a teljes adatbázis IMDB-ben nem megoldható v. racionális Hibrid megoldás tiszta IMDB in-memory cache DRDB Az ábrán: az elemzőeszközök a partícionált adatbázishoz csatlakoznak, amíg az adatforrások friss adatai közvetlenül az IMDB részbe érkeznek, hogy minél hatékonyabb lehessen az előfeldolgozásuk.

Ha nincs IMDB I. RAM-diszk HW-tuning memóriatuning: buffer-pool kezelési policy Keep recycle standard

Ha nincs IMDB II. Oracle Database In-Memory oszloporientált tömörítés, kibontás nélküli keresés IMCU indexelés, szótár SIMD támogatás hash-join Bloom filter segítségével További olvasnivaló: Oracle blog: Getting started w/ Database In-Memory: Elméleti jellegűek: Part IV: joinok, Part V: aggregáció Üzemeltetés/technológiai jellegűek: Part I: bekapcsolás, Part II: betöltés, Part III: lekérdezések, Part VI: lekérdezésenkénti be/kikapcsolás

Bloom filter illusztráció Ábra forrása: Oracle blog: Database In-Memory, Part IV - Joins

Megvalósítások I. Peloton Oracle TimesTen SAP Hana MySQL memory engine

Megvalósítások II. Peloton önmenedzselő MI alapú optimalizáció non-volatile memória támogatás zármentes MVCC latch-mentes Bw-fa indexek PostgreSQL protokol-kompatibilitás További infó: pelotondb.io