Alternatywne podejście do baz danych - MongoDb

7,836 views
7,585 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
7,836
On SlideShare
0
From Embeds
0
Number of Embeds
528
Actions
Shares
0
Downloads
15
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Alternatywne podejście do baz danych - MongoDb

  1. 1. Alternatywne podejście do baz danych – Mongo DB Wojciech Soczyński, SoInteractive
  2. 2. About me Napój Główne narzędzie pracy Pracodawca Zdjęcie do prawa jazdy
  3. 3. Czy potrzebujemy coś poza SQL-em ? <ul><li>TAK!
  4. 4. Istnieje świat poza bazami relacyjnymi
  5. 5. Dzisiejsze strony www – wielkie agregatory danych (Facebook / Twitter / next popular social site)
  6. 6. Skalowalności
  7. 7. Elastyczności </li></ul>
  8. 8. Alternatywy dla SQL <ul><li>Bazy dokumentowe </li><ul><li>CouchDb
  9. 9. MongoDb
  10. 10. Amazon SimpleDb </li></ul><li>Bazy obiektowe </li><ul><li>Zope Object Database
  11. 11. Db4o </li></ul><li>Mieszane podejście </li><ul><li>Apache Cassandra </li></ul></ul>
  12. 12. Podejście dokumentowe <ul><li>Brak schematu
  13. 13. Dane przechowywane w formacie klucz – wartość
  14. 14. Brak relacji </li></ul>
  15. 15. Zalety <ul><li>Nie trzeba dbać o schemat
  16. 16. Szybszy rozwój
  17. 17. Szybsza migracja
  18. 18. Koncentracja na celu, nie na środkach do jego osiągnięcia
  19. 19. Agile ;) </li></ul>
  20. 20. Dokument FirstName=&quot;Bob&quot;, Address=&quot;5 Oak St.&quot;, Hobby=&quot;sailing&quot; FirstName=&quot;Jonathan&quot;, Address=&quot;15 Wanamassa Point Road&quot;, Children=[{Name:&quot;Michael&quot;,Age:10}, {Name:&quot;Jennifer&quot;, Age:8}, {Name:&quot;Samantha&quot;, Age:5}, {Name:&quot;Elena&quot;, Age:2}]
  21. 21. Enter MongoDb <ul><li>Projekt open source (AGPL oraz komerycjne licencje, pod patronatem 10gen)
  22. 22. Zorientowana dokumentowo
  23. 23. Brak schematu </li></ul>
  24. 24. Enter MongoDb cd. <ul><li>Łatwe skalowanie (sharding)
  25. 25. Implementacja w C++
  26. 26. Sterowniki dla popularnych platform (PHP, Ruby, Python, Java, C# ...)
  27. 27. Dane w formacie JSON
  28. 28. Wspiera map-reduce </li></ul>
  29. 29. Struktura <ul><li>Baza danych
  30. 30. Kolekcja
  31. 31. Dokument </li></ul>
  32. 32. Jak używać ? <ul><li>Wbudowana konsola MongoDb żyje Javascriptem
  33. 33. Oparta na silniku SpiderMonkey
  34. 34. Pełna obsługa składni JS, ale zmodyfikowane API </li></ul>
  35. 35. Kod - kreacja
  36. 36. Kod - zapytania
  37. 37. Kod – map reduce
  38. 38. Najważniejsze wady <ul><li>Pożeracz przestrzeni dyskowej
  39. 39. Jednowątkowy map-reduce </li></ul>
  40. 40. Biblioteki <ul><li>Doctrine 2 ODM – PHP
  41. 41. Mongoid ODM - Ruby </li></ul>
  42. 42. Linki <ul><li>http://www.mongodb.org/ - główna strona projektu wraz z interaktywnym shellem
  43. 43. http://leifw.wickland.net/2011/04/weird-buggy-and-disappointing-behavior.html - wady MongoDb
  44. 44. http://girbal.net/jmongobrowser/ - darmowy i Javowy browser MongoDb
  45. 45. http://www.slideshare.net/gabriele.lana/couchdb-vs-mongodb-2982288 - porównanie MongoDb i CouchDb
  46. 46. Http://blog.wsoczynski.pl - mój blog </li></ul>
  47. 47. Dziękuję za uwagę
  48. 48. Pytania ?!

×