Úvod do Big Data Martin Macák Fakulta informatiky, Masarykova univerzita, Brno 21. 2. 2019 Osnova prednášky 1. Čo sú to Big Data? 2. Ako pracovať s Big Data? 3. Aké nástroje existujú? Big Data ∙ data is the new oil ∙ všetci generujeme dáta ∙ koľko senzorov má napr. smartphone? ∙ problem nie je generovať dáta, ale ich spracovať! Big Data – definícia Volume Velocity Variety Veracity Typické základné požiadavky na Big Data systémy ∙ ukladanie veľkého množstva dát ∙ spracovanie dát v rozumnom čase ∙ škálovateľnosť Big Data systémy – superpočítač ∙ vertikálne škálovanie Big Data systémy – cluster bežných počítačov ∙ horizontálne škálovanie Typy práce Data store Distributed file system Memory Presentation Transferring Storage Processing Orchestration Advanced analytics Resourcemanagement Data sources Nástroje ∙ pre každý typ práce existuje mnoho nástrojov Transferring ∙ presun dát zo zdrojov (zariadenia, databázy, súbory, webové stránky, . . . ) ∙ aktívne alebo pasívne presúvanie ∙ väčšinou máme možnosť predspracovania dát (filtrovanie, transformácia) Storage ∙ CAP Theorem ∙ consistency – každý uzol má rovnaký pohľad na dáta, vždy vráti najnovší úspešný zápis ∙ availability – každý uzol vráti odpoveď v rozumnom čase ∙ partition tolerance – systém dokáže pracovať aj pri výpadkoch ∙ v distribuovanom prostredí proti sebe "bojujú" consistency a availability ∙ nemôžeme zároveň garantovať, že vždy vrátime odpoveď, a že vrátená informácia je správna Storage ∙ Distributed File Systems ∙ súbory ∙ Relational Database Management Systems ∙ štruktúrované dáta ∙ SQL Storage – NoSQL Database Management Systems Nepotrebujú preddefinovanú schému ∙ Key-Value stores ∙ typicky operácie put, get, delete ∙ rýchle ∙ Document stores ∙ Key-Value, kde Value má štruktúru (JSON, XML, . . . ) ∙ možnosť komplexnejších dotazov Storage – NoSQL Database Management Systems ∙ Column-family stores ∙ column families s riadkami ∙ každý riadok je Key-Value, kde Value je množina stĺpcov (meno-hodnota) ∙ dotazovanie podobné SQL ∙ Graph databases ∙ ukladajú vrcholy a hrany medzi nimi (môžu mať atribúty) ∙ dotazovanie typicky cez jazyk Cypher alebo Gremlin Storage ∙ Multi-model databases ∙ uľahčujú tzv. polyglot persistence ∙ viacero typov databáz v jednej ∙ dotazovanie podobné SQL ∙ špecializované databázy ∙ Time-series, Spatial, . . . ∙ táto funkcionalita môže byť už zahrnutá v iných databázach Processing Výpočty musia byť paralelizovateľné! ∙ dávkové spracovanie ∙ prúdové spracovanie ∙ grafové spracovanie ∙ vysokoúrovňovejšie spracovanie ∙ všeobecne účelové spracovanie Processing - Hadoop MapReduce Processing - Giraph Processing - Hive Processing - Spark Rekapitulácia 1. Čo sú to Big Data? ∙ new oil ∙ 4V ∙ veľa aplikačných domén 2. Ako s nimi pracovať? ∙ superpočítač vs cluster ∙ veeeeľa nástrojov ∙ mnoho účelov ∙ Transferring ∙ Storage ∙ Processing ∙ . . . macak@mail.muni.cz