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

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

Elosztott rendszer architektúrák

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

webalkalmazások fejlesztése elosztott alapon

Csoportos üzenetszórás optimalizálása klaszter rendszerekben

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

MMK-Informatikai projekt ellenőr képzés 4

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

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

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

<Insert Picture Here> Exadata és Exalogic: Célrendszerek a felhőben

Component Soft és tovább

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

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

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

Az információs rendszerek adatai

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

ADATBÁZISOK ADATBÁZIS-KEZELŐ RENDSZEREK. Debrenti Attila

NIIF Központi Elosztott Szolgáltatói Platform

Hálózati réteg. WSN topológia. Útvonalválasztás.

Parciális rekonfiguráció Heterogán számítási rendszerek VIMIMA15

Tartalomjegyzék. 1. Bevezető Az információs rendszerek világa Az információs rendszerek felépítése... 31

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

Bevezetés a párhuzamos programozási koncepciókba

Az információs rendszerek adatai

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

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

Párhuzamos és Grid rendszerek

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

Simon Balázs Dr. Goldschmidt Balázs Dr. Kondorosi Károly. BME, Irányítástechnika és Informatika Tanszék

Operációs rendszerek. Bemutatkozás

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

egy szisztolikus példa

Párhuzamos programozási platformok

Optimalizáció ESX-től View-ig. Pintér Kornél ügyfélszolgála3 mérnök


Párhuzamos programozási platformok

Utolsó módosítás:

Adatbázis rendszerek. dr. Siki Zoltán

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

Flynn féle osztályozás Single Isntruction Multiple Instruction Single Data SISD SIMD Multiple Data MISD MIMD

UNIX / Linux rendszeradminisztráció

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

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

Mérésadatgyűjtő rendszer Oracle Database Appliance alapon. Szabad Miklós vezérigazgató-helyettes XperTeam ZRt. Budapest, Róbert Károly krt. 59.

Felhő alapú hálózatok (VITMMA02) Hálózati megoldások a felhőben

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

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

A cloud szolgáltatási modell a közigazgatásban

Alternatív adatbázisok Gráfadatbázisok

Az MTA Cloud a tudományos alkalmazások támogatására. Kacsuk Péter MTA SZTAKI

Mikor és hogyan érdemes virtualizálni?

Dr. Illés Zoltán

Elosztott rendszerek. Az elıadás. Az elosztott rendszer definíciója. Köztesrétegként felépülı elosztott rendszer

SAP Business One. Áttekintés, gyakorlati ismertetı. Mosaic Business System Kft.; Support:

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

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

Oracle Exalogic Elastic Cloud

Adatbázisrendszerek 2. előadás: Alapfogalmak

A TANTÁRGY ADATLAPJA

Segesdi Dániel. OpenNebula. Virtualizációs technológiák és alkalmazásaik BMEVIMIAV ősz

Az NIIF új szuperszámítógép infrastruktúrája Új lehetőségek a kutatói hálózatban

Segítség, összementem!

SQLServer. Probléma megoldás

NetWare 6 technikai áttekintés 2. rész

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

Programozás. Adatbázis-kezelés (alapok) Fodor Attila

GENERÁCIÓS ADATBÁZISOK A BIG DATA KÜLÖNBÖZŐ TERÜLETEIN

RapidAnalytics Enterprise Edition bevezetés a Telenor Magyarországnál. Szakács Balázs - Telenor Magyarország Szücs Imre United Consult

Országgyűlés Hivatala Exadata a törvényhozásban

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

Folyamatok. 6. előadás

BIG DATA ÉS GÉPI TANULÁS KÖRNYEZET AZ MTA CLOUD-ON KACSUK PÉTER, NAGY ENIKŐ, PINTYE ISTVÁN, HAJNAL ÁKOS, LOVAS RÓBERT

Copyright 2011, Oracle and/or its affiliates. All rights reserved.

Feladatok (task) kezelése multiprogramozott operációs rendszerekben

Tarantella Secure Global Desktop Enterprise Edition

Oracle Enterprise Manager 12c Cloud Control és 11g Grid Control összehasonlítás

Operációs rendszerek. A Windows NT felépítése

Felhőszolgáltatások megvalósítása PureSystems eszközökön

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

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

SAP vállalatirányítási rendszer alapjai

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

Oracle cloudforgatókönyvek

Dedikált szerverhoszting katalógus november

A 21. század adatközpontja Oracle Solaris alapon

Operációs Rendszerek II.

Mobil Peer-to-peer rendszerek

Másolatképzési technikák és azok felhasználási lehetőségei

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

Hálózatok építése és üzemeltetése

Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN

SDL Trados szervermegoldások. Szekeres Csaba SDL Trados partner M-Prospect Kft.

Privát felhő megoldások és tapasztalatok

STANDARD DEVELOPMENT U.L. FACTORY SYSTEMS GROUP IT DEPARTMENT

Adatbázis és alkalmazás konszolidáció Oracle SPARC T4/5 alapon

Az NIIF új szuperszámítógép infrastruktúrája Új lehet!ségek a kutatói hálózatban Debreceni Egyetem

Többfelhasználós és internetes térkép kezelés, megjelenítés

Hogyan működtethető a telefonrendszer virtuális környezetben? Mészáros Tamás Műszaki fejlesztési vezető

Átírás:

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

Tartalom Architektúra általában Centralizált DBMS Kliens-szerver DBMS Párhuzamos DBMS Elosztott DBMS Példák BME-TMIT 2

DBMS architektúra általában I. Definíció: Rendszertervezési döntés, amely általában nem könnyen változtatható meg Fontosabb szempontok, amiket figyelembe kell venni. Koncepcionális architektúra Adat(konzisztencia) architektúra Eszközarchitektúra (HW, SW) Üzemeltetési architektúra Biztonsági architektúra... BME-TMIT 3

DBMS architektúra általában II. Standard (hardver-oprendszer-dbms, mint alkalmazás) és egyedi megvalósítás Platform hatása Kezdetben: centralizált (egyetlen gép erőforrásai határoznak meg mindent) Meghatározó tényezők: Hálózati lehetőségek megjelenése: egyes taskok máshol futhatnak -> kliens/szerver rendszerek Sebesség-/teljesítménynövelés igénye: párhuzamos rendszerek Adatok kezelése és/vagy elérhetőségének biztosítása több helyről, védettség -> elosztott rendszerek BME-TMIT 4

Centralizált DBMS I. Def.: Egyetlen gépen fut (PC...mainframe), más rendszerekkel nincs interakció Általános szgép egy vagy néhány CPU-val, számos kontrollerrel, mind közös buszon a megosztott memóriával Versengés a memóriáért Saját cache BME-TMIT 5

Centralizált DBMS II. Lehet egyfelhasználós, többfelhasználós( -> terminálok) Egyfelhasználós rendszer: nem támogatja a konkurens működést, hiányzó v. egyszerű mentési megoldások, durva granularitású lekérdezési párhuzamosság Tkp. egyprocesszorosnak érzékelhető Párhuzamosítás egyetlen processzoron Processzek időosztásban, látszólagos párhuzamosság Mikor van ennek értelme? Finom granularitású párhuzamosság: tip. sok processzor mellett BME-TMIT 6

Kliens-szerver rendszerek I. Amikor a terminálokat kiszorították a PC-k... Back-end: adatok kezelése, lekérdezés feldolgozás, konkurencia és helyreállítás Front-end: lekérdezések összeállítása, eredmény megjelenítése Interfész: SQL alapú vagy API BME-TMIT 7

Kliens-szerver rendszerek II. A BE lehet: Tranzakciós szerver (tip: relációs, hálós) Adatszerver (tip: OODB) BME-TMIT 8

Tranzakciós szerver I. Tranzakciós szerver Kliens tr. kéréseket küld a szerver felé, az végrehajtja, eredmény vissza Kérés tip. SQL-ben és RPC-n keresztül, tranzakciós RPC API-k definiálása: ODBC-JDBC, szállítók szétválása Számos processzből áll, melyek az adatokat a megosztott memórián keresztül érik el Lekérdezések fogadása, végrehajtása, eredmény visszaküldése Zár menedzser processz Adatbázis író folyamat (módosult buffer blokkok folyamatos visszaírása a diszkre) Naplózó processz Checkpoint processz Processz monitor processz (más processzek figyelés, helyreállítás ) BME-TMIT 9

Tranzakciós szerver II. Megosztott adatok a megosztott memóriában Zárkezelés kapcsán IPC túlterhelés ellen: zártábla közvetlen elérése Zármenedzser processz: pattdetekció BME-TMIT 10

Adatszerver I. Tipikus, ha a végrehajtandó műveletek számításigényesek a kliens gépek teljesítménye összevethető a szerverével a kliens és a szerver között nagysebességű adatkapcsolat biztosított. Utazik az adat a kliensre, az eredmény pedig vissza Kommunikáció költsége: msec vs. 100 nsec Fő kérdések: komm. granularitás, zárolás, adat caching, zár caching BME-TMIT 11

Adatszerver II. Adatkommunikáció granularitása Objektumonként költséges -> érdemes többet -> teljes lapok, kb. prefetch Zárolás Szerver ítéli meg az átküldött objektumokra Szükségtelen zárak Zár visszahívható a szerver által, a kliens pedig visszaküldheti Zár de-eszkaláció: a lapon lévő zárak deeszkalálhatók a lapon levő olyan objektumokhoz tartozó zárakra, amelyek ténylegesen szükségesek Adat cache Kliens oldalon így más tranzakció is tudja az obj-t használni Cache koherencia ellenőrzése használat előtt, ehhez üzenetcsere a szerverrel Zár cache T.f.h. nagymértékben particionált adathasználat a kliensek között A kliens a zárakat is megtarthatja magánál két tr. között Az obj. kommunikáció nélkül is használható más tranzakciókból A szervernek követnie kell a zár cache-eket, szükség esetén mindet visszahívni Hasonló, mint a zár deeszkaláció, csak tranzakciók között. BME-TMIT 12

Párhuzamos DBMS I. Cél: növelni az eredő I/O diszk sávszélességet feldolgozási sebességet több diszk és CPU egyidejű használatával. Centralizált? Kliens-szerver? Durva és finom granularitású párhuzamos rendszerek Durva: kevés, de egyenkét nagyobb teljesítményű processzort működtetnek Finom: akár több ezer (kisebb) processzorral dolgoznak Fő performancia mértékek: tranzakciós teljesítmény, válaszidő Miért jó? Ld. sok kis, ill. nagy tranzakciók esete Fő jósági mértékek: speedup, scaleup BME-TMIT 13

Párhuzamos DBMS II. Speedup (kb. gyorsítás) Kiindulási futási idő Tk. Adjunk a rendszerhez N-szer több erőforrást, ezután a futási idő Tn. Gyorsítás=Tk/Tn BME-TMIT 14

Párhuzamos DBMS III. Scaleup (kb. skálázás) Feladat méret: Qk és Qn, utóbbi N-szer nagyobb. T.f.h. Qk végrehajtása egy adott Mk gépen Tk ideig tart, miközben a Qn végrehajtása egy Mn gépen ami N-szer nagyobb, mint Mk Tn ideig tart. Skálázás=Tk/Tn. BME-TMIT 15

Párhuzamos DBMS IV. Batch és tranzakciós skálázás Batch: az adatbázis mérete nő, a taskok futási ideje az adatbázis méretével arányosan nő. Jellegzetes: full table scan esetén (DSS, szimulációk) Tranzakciós skálázás: egyre nagyobb gyakoriságú tranzakciók, az adatbázis mérete a tranzakciósebességgel arányos. Jellegzetes: banki környezet. A skálázhatóság általában fontosabb, mint a gyorsítás. (Miért?) A lineárisan skálázódó rendszer teljesítménye alacsonyabb lehet... BME-TMIT 16

Párhuzamos DBMS V. Hatékonyságot csökkentő tényezők Processz indítási költségek Interferencia: megosztott erőforrásokért való versengés következtében Aszimmetria: A teljes futási időt a leglassabb rész futási ideje fogja meghatározni, miközben a darabolás nemigen tud egyforma lenni. BME-TMIT 17

Párhuzamos DBMS VI. Összekötő hálózat (interconnect) busz: minden komponens minden üzenetet a közös buszra küld, és onnan kap. Ethernet vagy párhuzamos kapcsolatot megvalósító belső összeköttetés. Kevés processzor/komponens esetén. hálószerű: a komponensek egy rács csomópontjaiban vannak elhelyezve. Közvetett kommunikáció routingon keresztül A kommunikációs linkek száma nő a komponensek növekedésével növekvő párhuzamosság esetén jobban skálázódik hiperkocka: a komponenseket binárisan számozva, a komponensek egymáshoz kapcsolva, ha számkódjuk pontosan egy bitben különbözik. a kommunikációs késleltetés lényegesen kisebb, mint hálószerű esetben BME-TMIT 18

Párhuzamos DBMS VII. BME-TMIT 19

Párhuzamos DBMS VIII. Párhuzamos architektúrák a) megosztott memória ( shared everything ) b) megosztott diszk (cluster, fürt ) c) semmi nem megosztott ( shared nothing ) d) hierarchikus: előbbiek hibridje. BME-TMIT 20

Párhuzamos DBMS IX. Megosztott memória a CPU-k és a diszkek a közös memóriát egy buszon vagy egy interconnection hálózaton keresztül tudják elérni kommunikáció a processzorok között különösen hatékony nem kell szoftveres adatmozgatás 32 proc. felett már nemigen sklálázható a hálózat miatt Minden processzor lehetőleg nagy cache-t használ Elterjedt 4-8 processzor mellett Példa: Oracle a rapidon (Dell PowerEdge 2850 2x3,2 GHz CPU, 8G RAM, 1TB HDD) BME-TMIT 21

Párhuzamos DBMS X. Megosztott diszk/klaszter a processzoroknak saját memóriája van minden processzor minden diszkkel tud kommunikálni valamely interconnect hálózaton keresztül Memória busz nem szűk keresztmetszet Hibatűrés megvalósítása Hátrány: interconnect a diszk alrendszer felé szűk keresztmetszet, processzorok közötti kommunikáció lassúbb Példa: Oracle RAC (2001-) BME-TMIT 22

Párhuzamos DBMS XI. Semmi nem megosztott Csomópontokból áll (CPU, mem., diszk) Minden csp. szerver a saját adatai vonatkozásában Diszk I/O nagy része nem kerül az interconnect hálózatra, de: Lekérdező parancsok Nem-lokális diszkekhez való hozzáférések Eredmények Interconnect is skálázhatóra készül -> kiváló eredő skálázhatóság (több ezer processzor) Hátrány: processzorok közötti kommunikáció, nemlokális diszkek elérése, mivel szoftver interakció kell az adatküldéshez mindkét végen. Példák: Oracle Exadata, Greenplum, Paraccel, Netezza, Teradata (egyik első), Vertica, Apache Cassandra, Apache Hbase, MongoDB, Riak, SAP HANA BME-TMIT 23

Párhuzamos DBMS XII. Hierarchikus kombinálja a korábbi három jellemzőit A felső szinten shared nothing, egy interconnect kapcsolja össze, nem osztanak meg diszket vagy memóriát A csp-ok lehetnek megosztott memóriájú vagy megosztott diszk Több hierarchiaszint is lehetséges Programozási komplexitás csökkentése: elosztott virtuális memória architektúrával (NUMA) BME-TMIT 24

Elosztott DBMS I. Ismétlés, DDBMS, definíció, site/node... Vö: párhuzamos architektúrák A DDBMS csp-jai: általában földrajzilag is szeparáltak, külön adminisztráltak, a kapcsolatok lassúbbak (WAN), valamint lokális és globális tranzakciók... BME-TMIT 25

Elosztott DBMS II. Fő előnyök Rendelkezésreállás Adatmegosztás Autonómia Hátrányok Nagyobb komplexitás (ld. Adatb algoritmusai...) Nagyobb feldolgozási overhead BME-TMIT 26

Elosztott DBMS III. Homogén Minimum: azonos adatmodellt implementáló DBMS-ek Közös, globális séma (tip: mind támogassa a 2PL-t, csak azonos gyártó rendszerei, sőt azonos típusú ) Pl. Oracle, MySQL, SQL Server, Heterogén (multiadatbázis, federated DB, szövetséges ~) Különböző DBMS-ek Közös séma különböző csp-ok között (multiadatbázis réteg) Globális tranzakciók nehézkesek Létező rendszerek összekapcsolására Kevésbé elterjedt Pl. IBM DataJoiner (relációs, 2001-), DataBroker (OODB) BME-TMIT 27

Példa I: Oracle Exadata Shared nothing/mpp DBMS Elemei: Database servers, (SPARC, Oracle Linux) Oracle Exadata Storage Servers, InfiniBand storage networking (40 Gbit/sec). Kiegészítve: Adatbázis tömörítés, titkosítás Felhő szolgáltatás (2015-től az Oracle Cloud-ban előfizetéssel is elérhető) Változatos kiépítés (1 rack RAM: 7 TB-ig, CPU: 216 magig, HDD: 500 TB-ig, 97 GB/sec-ig) 2008-tól, kb. évente frissítik, legutóbbi 2016 (6. generáció) BME-TMIT 28

Külön előadás... Példa II: Facebook BME-TMIT 29

Irodalom Silberschatz, Korth, Sudarshan: Database System Concepts, 6th Ed. 2010. A Technical Overview of the Oracle Exadata Database Machine and Exadata Storage Server, Oracle 2012 BME-TMIT 30