načítání...
nákupní košík
Košík

je prázdný
a
b

Big Data a NoSQL databáze - Jiří Kosek Irena Holubová Karel Minařík David Novák

Elektronická kniha: Big Data a NoSQL databáze
Autor:

Na českém trhu jedinečná kniha nabízí srozumitelné a rychlé seznámení s oblastí Big Data a NoSQL databází. Zjistěte, zda je to správná cesta pro realizaci vašich aplikací, kterou ...
Titul je skladem - ke stažení ihned
Médium: e-kniha
Vaše cena s DPH:  281
+
-
Doporučená cena:  331 Kč
15%
naše sleva
9,4
bo za nákup

ukázka z knihy ukázka

Titul je dostupný ve formě:
elektronická forma tištěná forma

hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%hodnoceni - 0%   celkové hodnocení
0 hodnocení + 0 recenzí

Specifikace
Nakladatelství: » Grada
Dostupné formáty
ke stažení:
PDF
Zabezpečení proti tisku: ano
Počet stran: 281
Rozměr: 24 cm
Úprava: tran : ilustrace, portréty
Vydání: První vydání
Médium: e-book
ADOBE DRM: bez
ISBN: 978-80-247-5466-6
Ukázka: » zobrazit ukázku
Popis

Na českém trhu jedinečná kniha nabízí srozumitelné a rychlé seznámení s oblastí Big Data a NoSQL databází. Zjistěte, zda je to správná cesta pro realizaci vašich aplikací, kterou NoSQL databázi zvolit pro daný problém nebo kdy naopak NoSQL databáze rozhodně nejsou vhodné.

Předmětná hesla
big data
Zpracování dat
Databázové systémy
softwarové technologie
Zařazeno v kategoriích
Recenze a komentáře k titulu
Zatím žádné recenze.


Ukázka / obsah
Přepis ukázky






Tuto knihu bychom rádi věnovali:
Kryštofovi.
– Irena
Rodině, která mne podpořila při práci na knize,
i když dobře věděla, co ji čeká.
–Jirka
Mýmučitelům z Ústavu filosofie a religionistiky FF UK.
–Karel
Sofince,která mi rostla před očima spolu s knihou.
–David










Upozor nění pro čtenáře a uživatele této knihy
Všechna práva vyhrazena. Žádná část této tištěné či elektronické knihy nesmí být
reprodukována a šířena v papírové, elektronické či jinépodobě bez předchozího
písemnéhosouhlasu nakladatele.
Doc.RNDr. Irena Holubová, Ph.D., Ing. Jiří Kosek, Mgr. Karel Minařík
a RNDr. David Novák, Ph.D.
BigData a NoSQL databáze
Knihaje monografie
VydalaGrada Publishing, a.s.
U Průhonu 22, 170 00 Praha 7
tel.:+420 234 264 401, fax: +420 234 264 400
www.grada.cz
jakosvou 6041. publikaci
Odborní recenzenti:
Doc.Ing. Michal Krátký, Ph.D.
RNDr. Jiří Materna, Ph.D.
Vydáníknihy schválila Vědecká redakce nakladatelství Grada Publishing, a.s.
Odpovědný redaktor Petr Somogyi
SazbaJiří Kosek
Grafickézpracování obrázků Milan Vokál
Návrha zpracování obálky Vojtěch Kočí
Počet stran 288
Prvnívydání, Praha 2015
Knihabyla připravena v XML formátu DocBook
a vysázenapomocí XSL-FO v programu XEP.
VytisklaTiskárna v Ráji, s.r.o., Pardubice
©2015 Grada Publishing, a.s.
CoverPhoto © fotobanka allphoto
ISBN978-80-247-5939-5 (ePub)
ISBN978-80-247-5938-8 (pdf)
ISBN978-80-247-5466-6 (print)





Stru čný obsah
O autorech.............................................................................................. 13
Předmluva ............................................................................................... 15
I. PojemBig Data a principy distribuovaného zpracování dat
1. Úvod................................................................................................... 19
2. Datovéformáty .................................................................................... 29
3. Základníprincipy ................................................................................. 47
4. Zpracovánídat pomocí MapReduce ........................................................ 63
II. NoSQLdatabáze
5. Základníprincipy NoSQL databází .......................................................... 87
6. Databázetypu klíč-hodnota ................................................................... 95
7. Dokumentovédatabáze ...................................................................... 109
8. Sloupcovédatabáze ............................................................................ 127
9. Grafovédatabáze ............................................................................... 143
III. Pokročilé aspekty zpracování Big Data
10. Další aspekty zpracování Big Data ...................................................... 171
11. Dotazovánínad NoSQL databázemi .................................................... 193
12. Transakcev distribuovaném prostředí ................................................. 205
13. Pokročilé aspekty grafových databází ................................................. 217
14. Další databáze pro Big Data .............................................................. 243
Závěr .................................................................................................... 261
Použitá literatura ................................................................................... 263
Rejstřík ................................................................................................. 273
5
Big Dataa NoSQLdatabáze










Obsah
O autorech .............................................................................................. 13
Předmluva ............................................................................................... 15
I. PojemBig Data a principy distribuovaného zpracování dat
1. Úvod................................................................................................... 19
1.1Jak velká jsou Big Data? ................................................................... 20
1.2Historie a vznik NoSQL databází ........................................................... 22
1.2.1Konec relačních databází? ............................................................... 25
1.3O čem budekniha ........................................................................... 27
2. Datovéformáty .................................................................................... 29
2.1JSON ......................................................................................... 30
2.1.1JSON schéma ........................................................................... 33
2.2XML .......................................................................................... 35
2.2.1XML schémata .......................................................................... 37
2.3YAML ......................................................................................... 39
2.4Formáty Linked Data ........................................................................ 41
2.4.1RDF/XML .............................................................................. 41
2.4.2JSON-LD ............................................................................... 42
2.5CSV ........................................................................................... 43
2.6Optimalizace ukládání a přenosu dat ...................................................... 44
2.6.1Protocol Buffers ........................................................................ 44
2.6.2Apache Thrift ........................................................................... 45
2.6.3BSON .................................................................................. 45
2.6.4EXI a FastInfoset ........................................................................ 45
2.6.5ASN.1 .................................................................................. 46
2.7Jaký formát vybrat ......................................................................... 46
3. Základníprincipy ................................................................................. 47
3.1
Škálovatelnost ............................................................................... 48
3.2Konzistence .................................................................................. 49
3.2.1Souběh transakcí ....................................................................... 50
3.2.2CAP teorém ............................................................................. 52
3.2.3Občasná konzistence .................................................................... 54
7
Big Dataa NoSQLdatabáze





3.3 Distribuce .................................................................................... 56
3.3.1Rozdělení dat (sharding) ................................................................ 57
3.3.2Master-slave replikace .................................................................. 58
3.3.3Peer-to-peer replikace .................................................................. 59
3.3.4Replikace + sharding ................................................................... 61
4. Zpracovánídat pomocí MapReduce ........................................................ 63
4.1Funkce Map a Reduce ....................................................................... 66
4.1.1Další příklady .......................................................................... 68
4.2MapReduce framework ..................................................................... 68
4.2.1Další vlastnosti ......................................................................... 70
4.3Hadoop ....................................................................................... 72
4.3.1HDFS ................................................................................... 72
4.3.2Hadoop MapReduce ..................................................................... 74
4.3.3Další nadstavby systému Hadoop ........................................................ 76
4.4Kritika a ústup od MapReduce .............................................................. 82
II. NoSQLdatabáze
5. Základníprincipy NoSQL databází .......................................................... 87
5.1Společné principy NoSQL databází ......................................................... 88
5.2Datové modely v NoSQL databázích ....................................................... 89
5.3Typologie NoSQL databází .................................................................. 93
6. Databázetypu klíč-hodnota ................................................................... 95
6.1Principy ...................................................................................... 96
6.1.1Základní operace a práce s klíči ......................................................... 96
6.1.2Jmenné prostory klíčů .................................................................. 97
6.1.3Druhy úložišť typu klíč-hodnota ......................................................... 98
6.2Realizace a vlastnosti ....................................................................... 99
6.2.1Distribuce dat ........................................................................... 99
6.2.2Konzistencea dostupnostdat ........................................................... 102
6.2.3Lokální organizace dat ................................................................ 105
6.3Práce s daty ................................................................................ 105
6.3.1Sekundární indexy .................................................................... 106
6.3.2Redis ................................................................................. 106
7. Dokumentovédatabáze ...................................................................... 109
7.1Datový model „dokument“ ............................................................... 109
7.2Dotazování a manipulace s daty .......................................................... 115
7.2.1Dotazy ................................................................................ 115
7.2.2Modifikace databáze .................................................................. 116
7.2.3Agregované dotazy a MapReduce ...................................................... 117
7.2.4Shrnutí ................................................................................ 117
Big Dataa NoSQLdatabáze
8





7.3 Vlastnosti dokumentových databází ...................................................... 118
7.3.1Indexy ................................................................................ 118
7.3.2Replikace dat a dostupnost systému .................................................... 119
7.3.3Rozdělení dat ......................................................................... 122
7.3.4ACID pro jednotlivé operace a transakce ................................................ 123
7.4Závěr ....................................................................................... 124
8. Sloupcovédatabáze ............................................................................ 127
8.1Datový model .............................................................................. 128
8.2Cassandra: datový model sloupců v praxi ................................................ 132
8.2.1Data jako multidimenzionální pole ..................................................... 133
8.2.2Data jako řídké tabulky ............................................................... 134
8.3Struktura a vlastnosti systému ............................................................ 136
8.3.1Distribuce a replikace dat .............................................................. 136
8.3.2Lokální organizace dat ................................................................ 137
8.4Dotazy, indexy a transakce ............................................................... 138
8.4.1Dotazy ................................................................................ 139
8.4.2Indexy ................................................................................ 140
8.4.3Transakce ............................................................................. 141
9. Grafovédatabáze ............................................................................... 143
9.1Typy grafů a související pojmy ............................................................ 145
9.2Databáze Neo4j ............................................................................ 146
9.2.1Datový model Neo4j ................................................................... 146
9.3Přístup k databázi Neo4j .................................................................. 147
9.3.1Java API .............................................................................. 147
9.3.2Gremlin ............................................................................... 149
9.3.3Cypher ................................................................................ 152
9.4Pokročilé rysy Neo4j ....................................................................... 156
9.4.1Neo4j HA ............................................................................. 156
9.4.2Transakce ............................................................................. 157
9.4.3Indexy ................................................................................ 158
9.5Další grafové databáze ................................................................... 162
9.5.1Sparksee .............................................................................. 163
9.5.2InfiniteGraph .......................................................................... 163
9.5.3OrientDB .............................................................................. 163
9.5.4Titan .................................................................................. 164
9.6RDF databáze .............................................................................. 164
9.7Srovnání úložišť pro grafy ................................................................. 165
9.8Závěr ....................................................................................... 167
9
Big Dataa NoSQLdatabáze





III. Pokro čilé aspekty zpracování Big Data
10. Další aspekty zpracování Big Data ...................................................... 171
10.1Analytické zpracování Big Data ........................................................... 172
10.1.1Schéma dat ........................................................................... 172
10.1.2Tvorbadatovýchskladů................................................................ 175
10.1.3Analytické zpracování ................................................................. 176
10.2Vizualizace Big Data ....................................................................... 178
10.2.1Vizualizacepropojenýchdat ............................................................ 179
10.2.2Nástroje pro vizualizaci ................................................................ 181
10.3Invertovaný index jako databáze ........................................................ 182
10.3.1Apache Lucene a jeho nástavby ........................................................ 183
10.3.2Zpracování logů ....................................................................... 186
10.4Cloud computing ........................................................................... 187
10.4.1Cloudcomputinga Big Data............................................................ 189
11. Dotazovánínad NoSQL databázemi .................................................... 193
11.1Přímý přístup pomocí programového rozhraní .......................................... 194
11.2MapReduce ................................................................................. 196
11.3Specifické dotazovací jazyky .............................................................. 196
11.3.1ElasticsearchQuery DSL ................................................................ 197
11.4Univerzální dotazovací jazyky ............................................................ 199
11.4.1Deriváty SQL .......................................................................... 199
11.4.2Rozšíření SQL ......................................................................... 199
11.4.3XQuery ............................................................................... 202
11.4.4JSONiq ................................................................................ 203
11.4.5SPARQL ............................................................................... 203
11.5Závěr ....................................................................................... 204
12. Transakcev distribuovaném prostředí ................................................. 205
12.1Vlastnosti CAP podrobněji ................................................................. 205
12.2Základní transakční modely ............................................................... 206
12.2.1Ploché transakce ...................................................................... 207
12.2.2Zřetězené transakce ................................................................... 207
12.2.3Hnízděné transakce ................................................................... 207
12.3Transakce v distribuovaném prostředí .................................................... 208
12.3.12PC protokol .......................................................................... 209
12.3.23PC protokol .......................................................................... 210
12.4Optimistické a pesimistické off-line zámky .............................................. 210
12.4.1Optimistický přístup ................................................................... 211
12.4.2Pesimistickýpřístup.................................................................... 211
12.5Uspořádání časových razítek .............................................................. 213
12.5.1Pesimistické uspořádání ............................................................... 213
12.5.2Optimistické uspořádání ............................................................... 214
Big Dataa NoSQLdatabáze
10





12.6 MVCC ........................................................................................ 215
12.7Závěr ....................................................................................... 216
13. Pokročilé aspekty grafových databází ................................................. 217
13.1Reprezentace grafů ........................................................................ 217
13.1.1Maticesousednosti..................................................................... 218
13.1.2Seznam sousedů ...................................................................... 218
13.1.3Matice incidence ....................................................................... 219
13.1.4Laplaceova matice ..................................................................... 219
13.2Lokalita dat ................................................................................ 220
13.3Distribuce grafu ............................................................................ 221
13.4Dotazování nad grafy ..................................................................... 223
13.4.1Typy dotazů ........................................................................... 224
13.4.2Vyhodnocování dotazů a indexace grafových dat ....................................... 225
13.4.3Dotazovací jazyky pro grafy ........................................................... 234
13.5Závěr ....................................................................................... 242
14. Další databáze pro Big Data .............................................................. 243
14.1Hybridní databáze ......................................................................... 243
14.1.1PostgreSQL ............................................................................ 244
14.1.2MarkLogic ............................................................................. 249
14.2Databáze ve webovém prohlížeči ......................................................... 250
14.2.1Web Storage .......................................................................... 250
14.2.2Indexed Database ..................................................................... 252
14.3NewSQL databáze .......................................................................... 254
14.3.1VoltDB ................................................................................ 255
14.4Array databases ............................................................................ 256
14.4.1SciDB ................................................................................. 257
Závěr .................................................................................................... 261
Použitá literatura ................................................................................... 263
Rejstřík ................................................................................................. 273
11
Big Dataa NoSQLdatabáze










O autorech
Doc. RNDr. Irena Holubová, Ph.D. se habilitovala v roce
2014v oboru informatika na MFF UK v Praze, kde v
současnédobě působí jako docent na Katedře softwarového
inženýrství.Současně externě působí na Katedře počítačů FEL
ČVUT. Je autorkou více než 80 původních článků, které
bylypublikovány na mezinárodních konferencích a v
impaktovanýchčasopisech, z oblasti analýz reálných dat a operací,
odvozováníXML schémat, XML benchmarkingu, generování
testovacíchdat a efektivní propagace změn v komplexních
systémechtýkajících se převážně semi-strukturovaných dat. Čtyři z nich získaly
významnámezinárodní ocenění. Je spoluautorkou knihy „T echnologieXML“
vydanév roce 2008 v nakladatelství Grada, která v tomtéž roce získala Cenu děkana
MFFUK za nejlepší monografii. V rámci svého pedagogického působení
(spolu)vytvářela na MFF UK a FEL ČVUT předmět „T echnologieXML“ a „Pokročilé aspekty
a novétrendy v XML“ . V nedávné době vytvořila nový předmět „Big Data
managementa NoSQL databáze“. Na tyto oblasti také zaměřuje vedené bakalářské,
diplomovéa dizertační práce. Více informací je možné nalézt na stránce
http://www.ksi.mff.cuni.cz/~holubova/.
Ing.Jiří Kosek již více než 15 let poskytuje školení a
konzultacev oblasti webových a XML technologií. Celá generace
tvůrců webu vyrostla na jeho knížkách o HTML a PHP a je
i autorem řady článků vydaných jak v Česku, tak v zahraničí.
Napůdě Vysoké školy ekonomické v Praze vytvořil a učí
předměty zaměřené na webové technologie a XML. Ve svém
volnémčase spolupořádá a programově zajišťuje konferenci
XMLPrague.
1
Jirka se podílí na tvorbě a údržbě důležitých
standardů v několika organizacích – zejména W3C, OASIS
a ISOa přispívá do několika open source projektů. Více se o jeho aktivitách
můžete dozvědět na jeho stránkách http://www.kosek.cz a http://xmlguru.cz.
1
http://xmlprague.cz
O autorech





Mgr . Karel Minařík je webový designér a vývojář.
Vystudovalfilosofii na FF UK. Věnuje se programovacímu jazyku
Ruby,využití nerelačních databází a vizualizaci dat. V
současnosti pracuje pro společnost Elastic.
2
Ž ije v Praze. Více
informací naleznete na webových stránkách http://karmi.cz.
RNDr. David Novák, Ph.D. získal doktorát z informatiky
v roce2008 na Fakultě informatiky MU v Brně, kde nyní
pracujejako vědecký pracovník. Ve svém výzkumu se
věnujezejména technikám pro podobnostní vyhledávání,
vyhledávánív multimédialních datech a distribuovaným
datovýmstrukturám. Pracoval na více než deseti národních a
evropských výzkumných projektech a je autorem třiceti
publikacína mezinárodních odborných fórech. V roce 2014
zavedlna FI MU předmět o NoSQL databázích. V roce 2015 získal Fulbrightovo
stipendiumna semestrální pobyt na University of Massachusetts Amherst v USA.
Víceinformací naleznete na jeho stránce http://disa.fi.muni.cz/david-novak/.
2
http://elastic.co
Big Dataa NoSQLdatabáze
14





P ředmluva
KnihaBig Data a NoSQL databáze má tři hlavnícíle: vysvětlit pojem Big Data,
představit svět NoSQL databází a objasnit jeho souvislost s Big Data. Rozhodli
jsmese ji napsat, protože zatím žádná ucelená publikace na dané téma v češtině
neexistovala.
Knihujsme rozdělili do tří částí. V první části vysvětlujeme fenomén Big Data a
principydistribuovaného zpracování dat. Ve druhé představujeme několik typů
databázovýchsystémů označovaných jako NoSQL databáze. Poslední část knihy
přináší přehled dalších nových typů databázových systémů, popisuje pokročilejší
aspektydistribuovaného zpracování dat a nabízí přehled dalších souvisejících
technologií.
Naprvní pohled různorodý autorský kolektiv spojuje právě dlouhodobý zájem
o oblastzpracování dat. Irena Holubová a David Novák působí v akademickém
prostředí. Big Data a související technologie vysvětlují v širších souvislostech.
Přinášejí srovnání s tradičními technologiemi a ukazují, jak fenomén Big Data ovlivnil
přístup ke zpracování dat a vývoj databázových systémů. Jiří Kosek se ve své
praxii v této knize věnuje zpracování strukturovaných dat, formátům pro jejich
ukládánía možnostem dotazování. Karel Minařík sleduje vývoj NoSQL databází
odjejich počátku a aktivně se ho účastní. Knihu obohatil zejména o cenné postřehy
z praxe.Konkrétně se na obsahu knihy autoři podíleli následovně: Irena
Holubová– kapitoly 1, 3, 4, 9, 12, 13 a sekce 10.2, 10.4, 14.3, 14.4; Jiří Kosek – kapitoly
2, 11 a sekce14.1.2, 14.2; Karel Minařík – sekce 6.3.2, 10.3, 14.1.1 a většina šedých
doplňujících rámečků; David Novák – kapitoly 5, 6, 7, 8 a sekce 10.1.
Natomto místě bychom rádi poděkovali prof. RNDr. Jaroslavu Pokornému, CSc.,
doc.RNDr. Vlastislavu Dohnalovi, Ph.D. a RNDr. Martinu Svobodovi, Ph.D. za
přečtení rukopisu textu a řadu cenných připomínek, které přispěly ke zkvalitnění
výsledku.Dále děkujeme RNDr. Davidu Hokszovi, Ph.D., RNDr. Filipu Zavoralovi,
Ph.D.,RNDr. Jakubu Klímkovi, Ph.D., RNDr. Leu Galambošovi, Ph.D., Ing.
VladimíruKyjonkovi, RNDr. Jakubu Lokočovi, Ph.D., Mgr. Jindřichu Mynarzovi a Lence
KoskovéTřískové za kontrolu vybraných kapitol textu a odborné konzultace
k nim.V neposlední řadě pak patří velký dík recenzentům, doc. Ing. Michalu
Krátkému,Ph.D. z Vysoké školy báňské – Technické univerzity Ostrava a
RNDr. Jiřímu Maternovi, Ph.D. ze společnosti Seznam.cz. Děkujeme také sponzorům
za významnoufinanční pomoc. Autoři byli při přípravě knihy částečně financování
z Programurozvoje vědních oblastí na Univerzitě Karlově (PRVOUK) č. 204-04/1204
(IrenaHolubová).
P
ř
edmluva





Do knihy se promítají dlouholeté zkušenosti autorů z výuky kurzů zaměřených
nazpracování dat, Big Data a NoSQL databáze. Látka byla Irenou Holubovou
zpracovánapro jednosemestrální kurz v informatické sekci MFF UK, který vznikl
v roce2012 a dnes je povinně volitelnou součástí magisterské výuky. Obdobný
kurzvytvořil David Novák v roce 2014 na FI MU v Brně. V roce 2016 bude kurz
v upravenépodobě Irenou Holubovou vyučován i na FEL ČVUT. Studentům
uvedenýchi obdobných kurzů bude kniha sloužit jako studijní opora.
Knihaobsahuje velké množství příkladů, které je možné nalézt i na webové
stráncehttp://www.ksi.mff.cuni.cz/bigdata. Na stránkách naleznete i opravy
případnýchchyb a další informace. Připomínky a dotazy ke knize můžete zasílat na
adresu bigdata@ksi.mff.cuni.cz.
Přejeme vám příjemné čtení.
Auto ři
Praha,Brno, Fryšava, Oldřichov v Hájích a Amherst, MA, USA, 25. září 2015
Big Dataa NoSQLdatabáze
16





Č ást I.
PojemBig Data a principy
distribuovaného
zpracovánídat






       

internetové knihkupectví ABZ - online prodej knih


Knihy.ABZ.cz - knihkupectví online -  © 2004-2017 - ABZ ABZ knihy, a.s. TOPlist