Případová studie MongoDB

NoSQL Concepts

Miriam Antona

Software engineer

MongoDB – přehled

Logo MongoDB

  • Populární dokumentová databáze
  • Formát BSON (binární JSON)
NoSQL Concepts

MongoDB – funkce

  • MongoDB Query Language (MQL)
db.users.find({ "address.zipcode" : "10245" })
  • Nativní ovladače pro programovací jazyky: C#, Java, Python, Scala atd.
  • Indexy na libovolném poli
  • Transakce ACID (atomičnost, konzistence, izolace a trvalost)
  • Spojení v dotazech
NoSQL Concepts

MongoDB – funkce

  • Horizontální škálování
    • nativní sharding
    • přidání/přesun shardů
  • Replikace
    • až 50 kopií dat
NoSQL Concepts

MongoDB – produkty

  • MongoDB Compass:
    • Bezplatné grafické rozhraní
    • Prozkoumání schématu, vizuální tvorba dotazů...
  • MongoDB Atlas:
    • Cloudová služba
    • AWS, Azure, Google Cloud
  • MongoDB Enterprise Advanced:
    • Provoz MongoDB ve vlastní infrastruktuře
NoSQL Concepts

MongoDB – produkty

  • MongoDB Atlas Lake:
    • Dotazování a analýza dat
    • AWS S3 a MongoDB Atlas
    • MQL
  • MongoDB Charts:
    • Vizualizace dat
  • Realm Mobile Database:
    • Ukládání dat lokálně na iOS nebo Android
NoSQL Concepts

MongoDB – časté použití

  • Aplikace s jednotným pohledem: finanční služby, státní správa, high-tech, maloobchod...
  • Hry: profily hráčů, žebříčky...
  • Katalogy: finanční služby, státní správa, high-tech, maloobchod...
  • Analytika v reálném čase
  • Správa obsahu
  • Internet věcí
NoSQL Concepts

MongoDB – zákazníci

Loga některých zákazníků MongoDB

NoSQL Concepts

Případová studie Shutterfly – přehled

  • Online fotografická služba
    • Sdílení personalizovaných fotoalb
    • Produkty s tištěnými fotografiemi
  • Miliony zákazníků
  • Více než šest miliard snímků

Logo Shutterfly

NoSQL Concepts

Případová studie Shutterfly – problém a řešení

  • Masivní nárůst dat
  • Výkonnostní limity Oracle
  • Zdlouhavý vývoj aplikací
  • Aplikace nebyly dostatečně rychlé
  • Oracle se stal příliš drahým
  • Zvolen MongoDB
NoSQL Concepts

Případová studie Shutterfly – výsledky

  • Zlepšení výkonu
    • Vkládání 400 ms → 2 ms
  • Horizontální škálování
  • Flexibilní schéma → rychlý vývoj
    • Tagy, komentáře apod. jsou snadné k implementaci
  • Nové vzory dotazů
  • Snížení nákladů
NoSQL Concepts

Případová studie Shutterfly – výsledky

  • Zlepšení výkonu
    • Vkládání 400 ms → 2 ms
  • Horizontální škálování
  • Flexibilní schéma → rychlý vývoj
    • Tagy, komentáře apod. jsou snadné k implementaci
  • Nové vzory dotazů
  • Snížení nákladů
1 https://www.mongodb.com/who-uses-mongodb
NoSQL Concepts

Pojďme si procvičit!

NoSQL Concepts

Preparing Video For Download...