Studiu de caz MongoDB

Concepte NoSQL

Miriam Antona

Software engineer

MongoDB - prezentare generală

Logo MongoDB

  • Bază de date de documente populară
  • Format BSON (Binary JSON)
Concepte NoSQL

MongoDB - funcționalități

  • MongoDB Query Language (MQL)
db.users.find({ "address.zipcode" : "10245" })
  • Drivere native pentru limbaje de programare: C#, Java, Python, Scala etc.
  • Indecși pe orice câmp
  • Tranzacții ACID (Atomicitate, Consistență, Izolare și Durabilitate)
  • Join-uri în interogări
Concepte NoSQL

MongoDB - funcționalități

  • Scalare orizontală
    • sharding nativ
    • adăugare/mutare shard-uri
  • Replicare
    • 50 de copii ale datelor
Concepte NoSQL

MongoDB - produse

  • MongoDB Compass:
    • Interfață grafică gratuită
    • Explorare schemă, creare interogări vizual...
  • MongoDB Atlas:
    • Serviciu cloud
    • AWS, Azure, Google Cloud
  • MongoDB Enterprise Advanced:
    • Rulare MongoDB în infrastructura proprie
Concepte NoSQL

MongoDB - produse

  • MongoDB Atlas Lake:
    • Interogare și analiză date
    • AWS S3 și MongoDB Atlas
    • MQL
  • MongoDB Charts:
    • Vizualizări ale datelor
  • Realm Mobile Database:
    • Stocare locală date pe iOS sau Android
Concepte NoSQL

MongoDB - utilizări populare

  • Aplicații cu vizualizare unică: servicii financiare, administrație, tehnologie, retail...
  • Gaming: profiluri jucători, clasamente...
  • Cataloage: servicii financiare, administrație, tehnologie, retail...
  • Analiză în timp real
  • Gestionarea conținutului
  • Internet of Things
Concepte NoSQL

MongoDB - clienți

Logo-uri ale unor clienți MongoDB

Concepte NoSQL

Studiu de caz Shutterfly - prezentare generală

  • Serviciu online de fotografie
    • Partajare albume foto personalizate
    • Produse cu fotografii tipărite
  • Milioane de clienți
  • Peste șase miliarde de imagini

Logo Shutterfly

Concepte NoSQL

Studiu de caz Shutterfly - problemă și soluție

  • Creștere masivă a datelor
  • Limitele de performanță ale Oracle
  • Timp îndelungat pentru dezvoltarea aplicațiilor
  • Aplicații cu performanță insuficientă
  • Oracle a devenit prea costisitor
  • S-a ales MongoDB
Concepte NoSQL

Studiu de caz Shutterfly - rezultate

  • Îmbunătățirea performanței
    • Inserări 400 ms. -> 2 ms.
  • Scalare orizontală
  • Schemă flexibilă -> dezvoltare rapidă
    • Tag-uri, comentarii etc. sunt ușor de implementat
  • Noi tipare de interogare
  • Reducerea costurilor
Concepte NoSQL

Studiu de caz Shutterfly - rezultate

  • Îmbunătățirea performanței
    • Inserări 400 ms. -> 2 ms.
  • Scalare orizontală
  • Schemă flexibilă -> dezvoltare rapidă
    • Tag-uri, comentarii etc. sunt ușor de implementat
  • Noi tipare de interogare
  • Reducerea costurilor
1 https://www.mongodb.com/who-uses-mongodb
Concepte NoSQL

Să exersăm!

Concepte NoSQL

Preparing Video For Download...