Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Prečo povedať nie SQL

Prečo povedať nie SQL

Slides from the talk I gave at the Dailyweb 2011 conference in Bratislava, Slovakia. A short introduction into various NoSQL databases.

5f27d0b43fc28785db65c57ae7e81ec5?s=128

Milan Cermak

May 01, 2012
Tweet

Transcript

  1. Prečo povedať nie SQL? Milan Čermák @milancermak Wildfuse, s.r.o. @wildfuse

    Tuesday, May 1, 2012
  2. NoSQL v skratke Tuesday, May 1, 2012

  3. NoSQL v skratke • rýchle čítanie Tuesday, May 1, 2012

  4. NoSQL v skratke • rýchle čítanie • rýchly zápis Tuesday,

    May 1, 2012
  5. NoSQL v skratke • rýchle čítanie • rýchly zápis •

    vysoká dátová priepustnosť Tuesday, May 1, 2012
  6. NoSQL v skratke • rýchle čítanie • rýchly zápis •

    vysoká dátová priepustnosť • škálovatelnosť Tuesday, May 1, 2012
  7. NoSQL v skratke • rýchle čítanie • rýchly zápis •

    vysoká dátová priepustnosť • škálovatelnosť • jednoduchšie modelovanie dát Tuesday, May 1, 2012
  8. Výhody Tuesday, May 1, 2012

  9. Výhody • koniec dogmatického používania SQL Tuesday, May 1, 2012

  10. Výhody • koniec dogmatického používania SQL • vhodný nástroj na

    určenú úlohu Tuesday, May 1, 2012
  11. Výhody • koniec dogmatického používania SQL • vhodný nástroj na

    určenú úlohu • jednoduchší a príjemnejší vývoj a údržba Tuesday, May 1, 2012
  12. Výhody • koniec dogmatického používania SQL • vhodný nástroj na

    určenú úlohu • jednoduchší a príjemnejší vývoj a údržba • výborná komunita a podpora Tuesday, May 1, 2012
  13. Nevýhody Tuesday, May 1, 2012

  14. Nevýhody • limity CAP teorému (consistency, availability, partition tolerance) •

    eventual consistency • transakcie Tuesday, May 1, 2012
  15. Nevýhody • limity CAP teorému (consistency, availability, partition tolerance) •

    eventual consistency • transakcie • “neoverené” riešenia Tuesday, May 1, 2012
  16. Nevýhody • limity CAP teorému (consistency, availability, partition tolerance) •

    eventual consistency • transakcie • “neoverené” riešenia • nový spôsob myslenia Tuesday, May 1, 2012
  17. Začíname s NoSQL • RTFM • “How I need to

    access my data?” - Salvatore Sanfilippo a.k.a. antirez Tuesday, May 1, 2012
  18. Tuesday, May 1, 2012

  19. • dokumentová databáza • BSON (binary JSON) Tuesday, May 1,

    2012
  20. Tuesday, May 1, 2012

  21. • indexy Tuesday, May 1, 2012

  22. • indexy • query language Tuesday, May 1, 2012

  23. • indexy • query language • geolokačné dotazy Tuesday, May

    1, 2012
  24. • indexy • query language • geolokačné dotazy • replikácia,

    sharding Tuesday, May 1, 2012
  25. • indexy • query language • geolokačné dotazy • replikácia,

    sharding • MapReduce Tuesday, May 1, 2012
  26. Tuesday, May 1, 2012

  27. • Príklady použitia: • CMS systémy • e-commerce • geolokačné

    systémy • logovanie • real-time analýza dát Tuesday, May 1, 2012
  28. Tuesday, May 1, 2012

  29. • Nevýhody: Tuesday, May 1, 2012

  30. • Nevýhody: • pamäťová náročnosť Tuesday, May 1, 2012

  31. • Nevýhody: • pamäťová náročnosť • 4 MB/dokument Tuesday, May

    1, 2012
  32. Tuesday, May 1, 2012

  33. • advanced key-value databáza • reťazce, zoznamy, množiny, zoradené množiny

    a hash-tabulky Tuesday, May 1, 2012
  34. Tuesday, May 1, 2012

  35. • jednoduchosť • rýchlosť • všestrannosť Tuesday, May 1, 2012

  36. Tuesday, May 1, 2012

  37. • Príklady použitia: • cache • sessions • fronty •

    počítadlá • logy Tuesday, May 1, 2012
  38. Tuesday, May 1, 2012

  39. • Nevýhody: • manuálne udržiavanie indexu • denormalizácia Tuesday, May

    1, 2012
  40. Tuesday, May 1, 2012

  41. • Couchbase • CouchDB + Memcache + Membase • dokumentová

    databáza Tuesday, May 1, 2012
  42. Tuesday, May 1, 2012

  43. • dostupnosť • replikácia • synchronizácia Tuesday, May 1, 2012

  44. Tuesday, May 1, 2012

  45. • Príklady použitia: • zber a analýza veľkého množstva heterogénnych

    dát • mobilné aplikácie Tuesday, May 1, 2012
  46. Tuesday, May 1, 2012

  47. • Nevýhody: • “enterprise” riešenie • vhodné na úzku skupinu

    problémov • náročnejšie na pochopenie a štart Tuesday, May 1, 2012
  48. Tuesday, May 1, 2012

  49. • distribuovaná key-value databáza • inšpirovaná Amazon Dynamo Tuesday, May

    1, 2012
  50. Tuesday, May 1, 2012

  51. • master-less Tuesday, May 1, 2012

  52. • master-less • vysoká dostupnosť Tuesday, May 1, 2012

  53. • master-less • vysoká dostupnosť • fulltextové vyhľadávanie Tuesday, May

    1, 2012
  54. • master-less • vysoká dostupnosť • fulltextové vyhľadávanie • MapReduce

    Tuesday, May 1, 2012
  55. • master-less • vysoká dostupnosť • fulltextové vyhľadávanie • MapReduce

    • jednosmerné relácie Tuesday, May 1, 2012
  56. Tuesday, May 1, 2012

  57. • Príklady použitia: • multimediálne úložište • veľké objemy stále

    meniacich sa dát • sessions • “cloud-based” systémy Tuesday, May 1, 2012
  58. Tuesday, May 1, 2012

  59. • Nevýhody: • slabšia podpora programovacích jazykov a nástrojov •

    zložitejší kód Tuesday, May 1, 2012
  60. milan.cermak@gmail.com Ďakujem za pozornosť Tuesday, May 1, 2012