Alternativni pristupi u izgradnji sistema baza · PDF fileAlternativni pristupi u izgradnji sistema baza podataka NoSQL, ugrađene i temporalne baze podataka Alternativni pristupi

  • Upload
    vuque

  • View
    236

  • Download
    7

Embed Size (px)

Citation preview

  • Alternativni pristupi u

    izgradnji sistema baza

    podataka NoSQL, ugraene i temporalne

    baze podataka

    Alternativni pristupi u izgradnji SBP

    Sistemi baza podataka

  • 2 / 117

    Sadraj

    NoSQL baze podataka

    Ugraene baze podataka

    Temporalne baze podataka

    Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    Termin NoSQL

    nastao 2009. godine

    u optem smislu, objedinjuje sve baze podataka i skladita

    podataka koje ne slede primarne principe relacionih baza

    podataka

    No SQL ili Not Only SQL

    ne predstavlja jedan proizvod ili tehnologiju

    ve klasu proizvoda i kolekciju razliitih, ponekad povezanih

    koncepata o nainima skladitenja i manipulacije podacima

    3 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    Motivacija

    pojava Interneta prouzrokuje

    eksploziju koliine podataka koju je potrebno skladititi

    problem velikih koliina podataka

    degradacija performansi RSUBP

    koliina podataka ima trend stalnog rasta

    veliina pojedinanih podataka takoe raste

    potreba za visokim nivoom skalabilnosti

    zahteva se unapreenje skalabilnosti

    potreba za visokim nivoom raspoloivosti

    eksploziju broja istovremenih zahteva nad BP

    milioni istovremenih zahteva

    odgovor mora biti u razumnom vremenskom roku

    4 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    Motivacija

    pojam veliki podaci predstavlja kolekciju digitalnih

    informacija

    eng. big data

    iji obim prevazilazi sposobnost prosene percepcije ljudi pa

    i kapacitete raznih softverskih alata

    za prihvatanje, obradu i upravljanje podacima

    nije tano odreena donja granica veliine, definisane

    pojmom veliki podaci

    trenutno - svaki skup podataka vei od nekoliko terabajta

    duina transakcija postaje problem

    nepredvidiva duina transakcije

    ACID osobine transakcija vie ne odgovaraju zahtevima,

    vezanim za obradu velikih koliina podataka

    5 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    ACID osobine

    skraenica od eng. Atomicity, Consistency, Isolation,

    Durability

    skup osobina BP

    garantuju pravilno izvrenje transakcija

    definisane od strane Jim Gray-a

    krajem 1970-ih godina

    prilikom definisanja pouzdanog transakcionog sistema

    6 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    ACID osobine

    atominost

    u sluaju uspenog izvrenja transakcije

    sve operacije obuhvaene transakcijom e biti uspeno

    izvrene

    baza podataka ostaje u konzistentnom stanju

    u sluaju neuspenog izvrenja transakcije

    efekti izvrenja operacija obuhvaenih transakcijom nee biti

    sauvani u bazi podataka

    baza podataka takoe ostaje u konzistentnom stanju

    onome, koje je prethodilo datoj transakciji

    7 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    ACID osobine

    konzistentnost

    ukoliko su se podaci pre izvrenja transakcije nalazili u

    konzistentnom stanju, nalazie se i po okonanju transakcije

    izolacija

    operacije tekue transakcije ne utiu na druge transakcije

    koje se istovremeno izvravaju

    trajnost

    promene koje nastaju nakon zavretka transakcije ostaju

    trajno sauvane

    ak i u sluaju pada itavog sistema

    8 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    CAP teorema

    sistem koji skladiti deljene podatke ne moe

    obezbediti istovremeno zadovoljenje sledeih uslova

    konzistentnost

    eng. Consistency

    raspoloivost

    eng. Availability

    tolerancija razdvojenosti

    eng. Partition tolerance

    primenljiva na sisteme zasnovane na distribuiranoj

    arhitekturi

    9 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    CAP teorema

    konzistentnost

    svako itanje iz baze podataka kao rezultat ima najnoviju

    verziju podataka

    raspoloivost

    odziv sistema u garantovanim vremenskim okvirima

    baza podataka e uvek biti dostupna

    nezavisno kada je postavljen upit

    postie se

    velikim brojem fizikih servera

    replikacijom podataka

    10 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    CAP teorema

    tolerancija razdvojenosti

    nijedan skup otkaza, osim potpunog otkazivanja, ne sme da

    proizvede neispravan odziv sistema baze podataka

    sistem mora da prihvata delimine otkaze i nastavlja ispravan

    rad

    razdvojenost

    stanje komunikacione mree kod koje su delovi sistema

    podeljeni u dve ili vie particija

    izmeu kojih ne postoji komunikacija

    reenje:

    replikacija

    odloeno (asinhrono) pisanje u trenutno nedostupne

    delove baze podataka

    11 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    CAP teorema - dokaz

    12 / 117 Alternativni pristupi u izgradnji SBP

    A V1 V0

    A V0

    1

    2

    A V1

    A

    P

    V0

    1

    2

    A V1

    B V1 V1

    1

    2

    1 2 3

  • NoSQL baze podataka

    CAP teorema dokaz

    ta se dogaa ako poruka P ne stigne na

    odredite?

    dolazi do razdvojenosti delova sistema

    tri mogua dogaaja

    transakcija A se ponitava

    sistem ne prihvata razdvojenost svojih delova

    transakcija A se uspeno nastavlja

    sistem nije konzistentan

    transakcija A eka na uspeno slanje poruke P

    sistem nije raspoloiv

    nepoznato vreme odaziva

    u svakom od dogaaja jedan od uslova nije

    ispunjen

    13 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    CAP teorema kompromisi

    odbacivanje prihvatanja razdvojenosti

    obezbeuju se konzistentnost i raspoloivost

    alternative

    kompletan sistem na jednom raunaru

    rad bez razdvojenosti

    viestruko umreavanje

    redudantne veze

    veoma skupe

    ree se pravi ovakav kompromis

    14 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    CAP teorema kompromisi

    odbacivanje raspoloivosti

    obezbeuju se konzistentnost i tolerancija razdvojenosti

    u sluaju razdvojenosti ne garantuje se vreme odziva

    problem se redukuje uspostavljanjem to nie sprege izmeu

    vorova

    koristi se ree

    sistem koji nije raspoloiv nije ni upotrebljiv

    15 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    CAP teorema kompromisi

    odbacivanje konzistentnosti

    obezbeuju se raspoloivost i tolerancija razdvojenosti

    ne garantuje itanje poslednje verzije podataka u sluaju

    razdvojenosti

    u suprotnosti sa ACID skupom osobina

    definie se BASE skup osobina

    eng. Basically Available, Soft state, Eventually consistent

    16 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    BASE osobine

    sutinski raspoloiv

    veina podataka je dostupna vei deo vremena

    nekonzistentno stanje

    baza podataka ne mora biti konzistentna u svakom trenutku

    konvergentna konzistencija

    dodatkom novog vora u sistem sadraj se moe replicirati

    na njega

    ne postoji garancija da e u svakom trenutku svi vorovi

    sadrati identine kopije podataka

    tei se vremenskoj taki u kojoj e svi vorovi sadrati

    konzistentne podatke

    17 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    MapReduce algoritam

    omoguava upravljanje velikim koliinama podataka

    posredstvom distribuirane mree vorova

    deli veliki zadatak na manje delove

    pogodne za paralelno procesiranje

    MapReduce okruenje

    upravlja izvrenjem MR algoritma

    obezbeuje spregu sa korisnikom

    18 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    MapReduce algoritam

    map korak

    glavni vor

    preuzima ulazne podatke

    deli ulazne podatke na manje delove

    distribuira manje delove u radne vorove

    radni vorovi

    procesiraju dodeljene zadatke

    vraaju odgovor glavnom voru

    reduce korak

    glavni vor

    preuzima rezultate radnih vorova

    kombinuje rezultate sa ciljem dobijanja traenog rezultata

    19 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    NoSql sistemi

    nastali usled potreba za

    skladitenjem velike koliine podataka

    pristupom od strane velikog broja korisnika

    realizacija baza podataka se oslanja na distribuiranu

    arhitekturu

    CAP teorema

    sa BASE skupom osobina

    uvodi pojam konvergentne konzistentnosti kao

    kompromisno reenje

    MapReduce algoritam

    efikasna obrada podataka

    20 / 117 Alternativni pristupi u izgradnji SBP

  • NoSQL baze podataka

    NoSql sistemi osobine i prednosti

    ne poseduju formalno specificiranu emu baze

    podataka

    rukovanje fleksibilnim strukturama podataka

    nestrukturirani i polustrukturirani podaci

    ne oslanjaju se na relacioni model podataka

    ne podravaju operacije spajanja

    unapreene performanse u radu sa velikom koliinom

    podataka

    horizontalna skalabilnost i ela