Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
MongoDB - baza danych zorientowana dokumentowo. Czy ruch NoSQL ma sens? Wojciech Sznapka 28.05.2010
Plan <ul><li>Ruch NoSQL – definicja i rozwiązania
MongoDB – opis i możliwości
Zastosowania MongoDB
Kto używa MongoDB?
Analogie do baz SQL
Migracje, a raczej ich brak
Przykłady użycia „na żywo”
Czy ruch NoSQL ma sens? </li></ul>
Ruch NoSQL <ul><li>Promuje klasę nierelacyjnych baz jako alternatywę dla tradycyjnych baz relacyjnych, nazywając je czasam...
Te bazy nie posiadają sztywnych schematów, unikają poleceń JOIN i dobrze się skalują. </li></ul>
Ruch NoSQL - rozwiązania Bazy zorientowane dokumentowo : <ul><li>MongoDB,
Apache CouchDB. </li></ul>Bazy typu klucz/wartość : <ul><li>BigTable (Google App Engine),
Nächste SlideShare
Wird geladen in …5
×

MongoDB - baza danych zorientowana dokumentowo. Czy ruch NoSQL ma sens?

6.675 Aufrufe

Veröffentlicht am

Prezentacja wygłoszona na "Piątku z XSolve" 28 maja 2010.

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

MongoDB - baza danych zorientowana dokumentowo. Czy ruch NoSQL ma sens?

  1. 1. MongoDB - baza danych zorientowana dokumentowo. Czy ruch NoSQL ma sens? Wojciech Sznapka 28.05.2010
  2. 2. Plan <ul><li>Ruch NoSQL – definicja i rozwiązania
  3. 3. MongoDB – opis i możliwości
  4. 4. Zastosowania MongoDB
  5. 5. Kto używa MongoDB?
  6. 6. Analogie do baz SQL
  7. 7. Migracje, a raczej ich brak
  8. 8. Przykłady użycia „na żywo”
  9. 9. Czy ruch NoSQL ma sens? </li></ul>
  10. 10. Ruch NoSQL <ul><li>Promuje klasę nierelacyjnych baz jako alternatywę dla tradycyjnych baz relacyjnych, nazywając je czasami bazami następnej generacji,
  11. 11. Te bazy nie posiadają sztywnych schematów, unikają poleceń JOIN i dobrze się skalują. </li></ul>
  12. 12. Ruch NoSQL - rozwiązania Bazy zorientowane dokumentowo : <ul><li>MongoDB,
  13. 13. Apache CouchDB. </li></ul>Bazy typu klucz/wartość : <ul><li>BigTable (Google App Engine),
  14. 14. Dynamo (Amazon Web Services),
  15. 15. Apache Cassandra (Facebook),
  16. 16. Project Voldemort (LinkedIn). </li></ul>
  17. 17. <ul><li>Baza danych zorientowana na przechowywanie dokumentów JSON,
  18. 18. Bardzo wydajna (napisana w C++),
  19. 19. Skalowalna,
  20. 20. Bezschematowa – prostota i elastyczność,
  21. 21. Wsparcie dla wielu platform i języków programowania,
  22. 22. Rozwijana od Sierpnia 2007, pierwsze wydanie w 2009,
  23. 23. Open Source (GNU AGPL). </li></ul>
  24. 24. Możliwości MongoDB <ul><li>Przechowywanie dynamicznych dokumentów JSON (reprezentowanych wewnętrznie jako BSON – Binary JSON),
  25. 25. Pełne wsparcie dla indeksów,
  26. 26. Replikacja i wysoka dostępność,
  27. 27. Auto-Sharding (skalowanie poziome),
  28. 28. Złożone zapytania (jako dokumenty),
  29. 29. Map/Reduce – elastyczny mechanizm agregacji i przetwarzania danych,
  30. 30. GridFS – przechowywanie plików w bazie. </li></ul>
  31. 31. Zastosowania TAK : <ul><li>Zastosowanie webowe,
  32. 32. Wysokie obciążenia / wymóg skalowalności,
  33. 33. Cache'owanie,
  34. 34. Rozwiązań GIS (wsparcie dla indeksów 2d – szerokość/wysokość geograficzna). </li></ul>NIE: <ul><li>Wysoka transakcyjność,
  35. 35. Problemy wymagające SQLa. </li></ul>
  36. 36. Czy ktoś tego używa?
  37. 37. Analogie do baz SQL MongoDB Baza SQL Dokument Wiersz / rekord Kolekcja Tablica _id Klucz główny Zagnieżdżenie Relacja 1:N Tablica referencji do obiektów Relacja M:N Indeks Indeks
  38. 38. Migracje, a raczej ich brak MongoDB jest bezschematowa, więc jeśli potrzebujemy nowego pola w dokumencie to po prostu zaczynamy go używać w aplikacji, bez konieczności modyfikacji czegokolwiek w bazie (można zapomnieć o ALTER TABLE, czy symfony doctrine:migrate)
  39. 39. Przykłady użycia w praktyce <ul><li>Dokument,
  40. 40. Dokument zagnieżdżony,
  41. 41. Sortowanie, limitowanie,
  42. 42. Wyszukiwanie,
  43. 43. Regexp,
  44. 44. Indeksy,
  45. 45. Zaawansowane zapytania,
  46. 46. Geospatial index. </li></ul>
  47. 47. Czy ruch NoSQL ma sens? Tak, jeśli termin NoSQL nie będzie nadużywany jako całkowite porzucenie baz relacyjnych, ale jako „Not only SQL”.
  48. 48. Dziękuję za uwagę :-) Pytania ?

×