BIG DATA a Tudományban
description
Transcript of BIG DATA a Tudományban
![Page 1: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/1.jpg)
BIG DATA A TUDOMÁNYBAN
Dobos LászlóKomplex Rendszerek Fizikája Tanszék
![Page 2: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/2.jpg)
Tartalom1. Adatcunami2. Adatfeldolgozásra optimalizált hardver3. Tudományos adatbázisok
RDBMS tudományos alkalmazásai4. noSQL adattárak5. RDBMS fejlesztési irányok6. Tömbadatbázisok
![Page 3: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/3.jpg)
Moore-törvény
![Page 4: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/4.jpg)
Exponenciális növekedés
Elektronika Detektor-technika Adatmennyiség
![Page 5: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/5.jpg)
Csillagászati adatbázisok mérete
SDSS PanSTARRS LSST
![Page 6: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/6.jpg)
Diszkek tárolókapacitása
Forr
ás: W
ikip
edia
GM
R: g
iant
mag
neto
resi
stan
ceP
MR
: per
pend
icul
ar m
agne
tic re
cord
ing
PMR technológia
GMR technológia
![Page 7: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/7.jpg)
Tudományos adatok Csillagászat
Égtérképek: nagy statisztikus minták Részecskefizika
Tű keresése a szénakazalban Biológia
Fehérjehálózatok: gráfanalízis Genetika: mintaillesztés Ökológia: szenzorhálózatok Képadatbázisok (CT, MR, PET stb.)
Internet kutatása Szociális hálózatok, hálózattomográfia
Geofizika, meteorológia Sokrétegű képek, idősor analízis, turbulens jelenségek
![Page 8: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/8.jpg)
A negyedik paradigma
Kísérlet
Elmélet
Szimuláció
Adat-bányás
zat
![Page 9: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/9.jpg)
![Page 10: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/10.jpg)
Optimális hardverAdattárházak
![Page 11: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/11.jpg)
Problémák Nem nő minden exponenciálisan
Adatátvitel sebessége
Algoritmusok skálázásaHa nagyobb, mint o(n), akkor az
exponenciálisan növekedő adatmennyiség egészére nem lesz lefuttatható
Problémák particionálása
![Page 12: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/12.jpg)
Adattároló egységek RAM
Gyors $$$$$
Diszk
Lassú $
SSD
Írás? $$$
![Page 13: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/13.jpg)
Diszk = szalag =
![Page 14: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/14.jpg)
1 TB-os lemez elolvasása Szekvenciálisan: 4,5 óra Random módon: 15-150 nap
![Page 15: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/15.jpg)
Gene Amdahl törvényei Törvények kiegyensúlyozott
rendszerek esetére (1965)
Teljes probléma: 1 = P + S
Max gyorsulás: a = 1 / (S + P / N)
Amdahl-szám: 1 bit IO / s 1 utasítás / s
Memória: 1 bájt memória1 utasítás / s
![Page 16: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/16.jpg)
Amdahl-féle kiegyensúlyozott rendszerek
Blue Gene: AIO = 0,013 Graywulf: AIO = 0,5 Amdahl: AIO = 1,25
OPS RAM IO Byte/s
# of100 Mb/s
disks
Disks ×
RAM# of 1 TB disks
Giga
1009 Gigabyte
108 1 1011 1
Tera 1012 Terabyte
1011 1,000 1014 100
Peta
1015 Petabyte
1014 1000,000 1017 100,000
Exa 1018 Exabyte
1017 1000,000,000
1020 100,000,000
![Page 17: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/17.jpg)
![Page 18: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/18.jpg)
Amdahl-klaszter
![Page 19: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/19.jpg)
ELTÉn levő rendszerek Regionális Egyetemi Tudásközpont
3 × Dell PowerEdge 2950, 8 core Xeon, 16 GB RAM6 × Dell MD1000 SAS, összesen kb. 45 TBSQL Server 2008 R2, 3GB/s szekvenciális IOJHU Graywulf rendszer node-jaival azonosKlimatizálás örök probléma
„Jim Gray” klaszter az Informatikai karon4 × Supermicro SuperServer SYS-6036ST-6LR„2 gép egy házban” konfigurációÖsszesen 96 mag, 192 GB RAM, 112 TB diszk IO rendszer sebessége még nem ismert
![Page 20: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/20.jpg)
Jim Gray törvényei
Scale-out:Az adatfeldolgozás csak masszív párhuzamosítással oldható meg
Az számolást kell vinni az adathoz és nem az adatot a számoláshoz
![Page 21: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/21.jpg)
Scale-up
Platform skálázása, memória használat
![Page 22: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/22.jpg)
Scale-out (SMP)
Algoritmusok párhuzamosítása nehéz
![Page 23: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/23.jpg)
Scale-out (klaszter)
Hálózat lassú!
![Page 24: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/24.jpg)
Adatbázisok tudományos célra
![Page 25: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/25.jpg)
Hagyományos eszközök R, matlab, IDL stb.
Memória mérete korlátozó tényező Gyenge háttértár kihasználás
Adatok fájlokban (sokszor csak TXT)
Minimális adatbázis támogatásKi kell húzni az adatot a feldolgozáshoz
![Page 26: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/26.jpg)
Adatbázis-szerverek RDBMS
AdatokRDBMS újításai DW célokra
noSQL
![Page 27: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/27.jpg)
RDBMS Üzleti célra fejlesztve
Tranzakció kezelés és adattárház egyben
Tudunk-e profitálni az adattárház funkciókból tudományos céllal?Elegendő-e a relációs adatmodell?Tudományban sokdimenziós adatokElegendő-e a funkcionalitás?Matek könyvtárak?
![Page 28: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/28.jpg)
OLTP vs. DW Sok kicsi, random
művelet
Kis késleltetés
Szinkron redundancia
Nagy vas elegendő
Nagy, sok adatot érintő műveletek
A gyors válasz annyira nem fontos
Aszinkron redundancia elég
Egy gépen nem fér el az adat
![Page 29: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/29.jpg)
RDBMS nagy előnyei Deklaratív programozhatóság
A szerver optimalizálni tudja a lekérdezéstRengeteg előre megírt fizikai operátorMinden query végrehajtható (kérdés milyen gyorsan)
Készen kapjuk:Párhuzamos query futtatásOptimalizált szekvenciális IOOptimalizált memória használat
![Page 30: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/30.jpg)
RDBMS további előnyei Saját kód futtatása a folyamaton belül
Nincsen kommunikációs költségtöbbletMatek könyvtárak integrálhatókSpeciális indexek implementálhatók
Standard API (ODBC, JDBC, OleDB) Széleskörű, üzleti színvonalú támogatás
![Page 31: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/31.jpg)
RDBMS hátrányai A relációs adatmodell gyakran nem elég
Tömbök (pl. nagy képek, adatkockák)Gráfok
Üzleti szempontok szerint fejlődikOlyan irányba fejlődnek, ahonnan a pénz
várható
Nem elosztott rendszerek
![Page 32: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/32.jpg)
noSQL
![Page 33: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/33.jpg)
Web 2.0 Keresők, óriásáruházak, közösségi oldalak Dinamikus növekedés
A nagy vasak nem bővíthetők a végtelenségig
Hatalmas adatmennyiség Kevésbé strukturált adatok Magas rendelkezésre állás Nem baj, ha nem teljesen konzisztens
RDBMS
![Page 34: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/34.jpg)
Elosztott rendszerek Elosztott rendszerekre nagy igény lett 1000+ nódus olcsó szerverekből
A nódusok meghibásodás a napi rutin része
RDBMS-nél máig megoldatlan a több gépre történő scale-outFő probléma: elosztott JOINPróbálkozások vannak,
pl. MySQL Cluster, Graywulf stb.
Megoldás: új megközelítésű adatbázisok
![Page 35: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/35.jpg)
noSQL adatbázisok Igény elosztott rendszerekre Sürgős fejlesztési kényszer
Az RDBMS nagyon bonyolultLegyen egyszerűbb, de elosztott!
Min lehet spórolni?Egyszerűsített tranzakciós modellNincsen ACIDNincsenek scan és join műveletekImperatív programozás
(nincsen optimalizációs logika)
![Page 36: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/36.jpg)
Két fontos terület Nagy mennyiségű adat feldolgozása
Rendszeres műveletekSok adat redukálása
Nagy számú felhasználó kiszolgálásaTerhelés megosztásaRandom műveletekAdatok replikálása
○ Adatbiztonsági okokból○ Terhelésmegosztás miatt
![Page 37: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/37.jpg)
noSQL adatmodellek Key-Value (Redis, MongoDB, Scalien)
Value lehet sokféle○ Dokumentum (bináris, xml stb.)○ String, lista, hash-tábla stb.
BigTable (Google, Hbase, Cassandra)Sorok kulccsalOszlopcsaládok (előre definiált)Oszlopok (nem előre definiált)Valójában key-value kompozit kulccsal
![Page 38: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/38.jpg)
Másodlagos indexek Alapművelet:
adat megtalálása kulcs alapján
Nincsen scan művelet Kereséshez mindenképp kell index
![Page 39: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/39.jpg)
Hadoop Elosztott fájlrendszer Futtatókörnyezet
Map és Reduce függvényt lehet implementálni
Ebből kell összerakni az adatfeldolgozó programot
![Page 40: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/40.jpg)
CAP-tétel elosztott adatbázisokra
![Page 41: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/41.jpg)
Elosztott adatbázis Adat particionálás (sharding)
Vertikális particionálásKulcs tartományok külön szervereken
Funkcionális particionálásFüggőleges particionálásBizonyos oszlopok külön szervereken
RedundanciaMagas rendelkezésre állásNem kell külön back-upTerheléselosztás
+ ezek kombinációi
![Page 42: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/42.jpg)
Konzisztencia Biztonsági mentés helyett replikáció
Az adatok több példányban tárolódnak
Mi biztosítja, hogy a replikák konzisztensek maradnak?Kell valami replikációs protokollÁltalában aszinkron
Konzisztencia ablakMennyi idő után válik a rendszer konzisztenssé
![Page 43: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/43.jpg)
Rendelkezésre állás Az adatok folyton elérhetőek
Több belépési pontNincsen egyetlen kritikus elem semGeo-redundancia
A válasz legyen gyorsMinimális késleltetésMég akkor is, ha a visszaadott adat nem
konzisztens
![Page 44: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/44.jpg)
Partíció tűrés Elosztott rendszer
Hálózati kapcsolat (lassú, törékeny)
Több belépési pontA rendszer akkor is működőképes marad,
ha egyes részei nem látják egymást
Elosztott funkcionalitás
![Page 45: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/45.jpg)
CAP-tétel A háromból
egyszerre csakkettő teljesíthető!
C
A P
![Page 46: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/46.jpg)
Tranzakciós modell lazítása ACID
elosztott rendszernél nagyon drága (2PC) Hiba esetén nem lehet tranzakciót érvényesíteni
Helyette: BASE basically available, soft-state, eventually consistent
Eleve olyan rendszert feltételez, ahol vannak hibák A hibákat optimista módon kezeli
A tranzakciók hatásai nem egy időben jelennek meg ehhez kellene a kétlépéses érvényesítés üzenet formájában, véges idő alatt terjednek
![Page 47: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/47.jpg)
BASE BA: Basically available
Főleg CP rendszer esetében Legalább a rendszer egy része maradjon elérhető
Soft-state A változások véges ideig tartó üzenetekkel történnek A rendszer állapota akkor is változhat, ha épp nincsen input Minden adatra lehet egy érvényességi idő Ha ez lejárt, akkor meg kell vizsgálni, hogy konzisztens-e még
Eventually consistent Főleg AP rendszer esetében A változások aszinkron propagálnak „Egy idő után” konzisztenssé válik Konzisztencia ablak
![Page 48: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/48.jpg)
Konfliktusok feloldása Hiba miatt inkonzisztens állapot Fel kell oldani
Gossip (pletyka) Paxos
![Page 49: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/49.jpg)
RDBMS BigTable HadoopDeklaratív nyelv, optimalizáló Optimalizált scan Optimális kulcs szerinti elérés Join műveletek Párhuzamos végrehajtás Klaszterezhetőség Tranzakciók ACID BASERedundancia
Load balancing Nem strukturált adat Szabványos API
![Page 50: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/50.jpg)
RDBMS újragondolva
![Page 51: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/51.jpg)
RDBMS fejlesztési irányok Elosztott JOIN Column store Ferris wheel (óriáskerék) Tömb adatmodell
![Page 52: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/52.jpg)
Elosztott JOIN JOIN műveletek két
![Page 53: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/53.jpg)
Graywulf Szalay Sándor
Johns Hopkins Egyetem, Baltimore ELTE közreműködéssel
SQL Server klaszterek tudományos célú felhasználásaLoad-balancing, probabilistic join, distributed
join, array database stb.SkyQuery, turbulencia, stb.
![Page 54: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/54.jpg)
Column store RDMBS hagyományosan sorokat tárol
B-fa struktúra, lapok, klaszterezett index stb.OLTP esetében ez az optimálisLap méret tradicionálisan kicsi (8k)Nagy scan műveletekre nem túl optimális
Gond: széles táblák, keskeny querykFelesleges beolvasni egy csomó dolgot
Ötlet: tároljuk a táblát oszloponként!
![Page 55: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/55.jpg)
![Page 56: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/56.jpg)
Oszloponkénti tárolás Cél: felesleges oszlopokat ne olvassuk
Tárolási modell: oszloponként folytonosan Jó nagy darabokban Minden oszlop azonos sorrendben Nem kell kulcsot tárolni, mint az indexek esetében
Csak egy sorrendben hatékony a keresés Egyes oszlopokat több sorrendben is érdemes tárolni JOIN indexek is kellhetnek
Könnyebb tömörítés CPU gyors, lemez lassú, így gyorsítható
OLTP-re nem jó (beszúrás, törlés drága) Megpatkolható, pl. c-store, vertica
![Page 57: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/57.jpg)
Ferris wheel
![Page 58: BIG DATA a Tudományban](https://reader035.fdocument.pub/reader035/viewer/2022062521/56812ace550346895d8eaa65/html5/thumbnails/58.jpg)
Tömb alapú adatbázisok Elsősorban tudomány célra Tábla helyett array az alap típus
Tárolási modell: chunkok