Кейс-стаді MongoDB

Концепції NoSQL

Miriam Antona

Software engineer

MongoDB — огляд

Логотип MongoDB

  • Популярна документна база даних
  • Формат BSON (Binary JSON)
Концепції NoSQL

MongoDB — можливості

  • MongoDB Query Language (MQL)
db.users.find({ "address.zipcode" : "10245" })
  • Рідні драйвери для мов програмування: C#, Java, Python, Scala тощо
  • Індекси на будь-якому полі
  • Транзакції ACID (атомарність, узгодженість, ізоляція, довговічність)
  • З'єднання (joins) у запитах
Концепції NoSQL

MongoDB — можливості

  • Горизонтальне масштабування
    • вбудований шардинг
    • додавання/переміщення шардів
  • Реплікація
    • до 50 копій даних
Концепції NoSQL

MongoDB — продукти

  • MongoDB Compass:
    • безплатний GUI
    • Дослідження схеми, візуальне створення запитів…
  • MongoDB Atlas:
    • хмарний сервіс
    • AWS, Azure, Google Cloud
  • MongoDB Enterprise Advanced:
    • Запуск MongoDB у власній інфраструктурі
Концепції NoSQL

MongoDB — продукти

  • MongoDB Atlas Lake:
    • Запити й аналіз даних
    • AWS S3 і MongoDB Atlas
    • MQL
  • MongoDB Charts:
    • Візуалізації даних
  • Realm Mobile Database:
    • Локальне зберігання на iOS або Android
Концепції NoSQL

MongoDB — популярні застосування

  • Single view-застосунки: фінансові сервіси, держсектор, хай-тек, ритейл…
  • Ігри: профілі гравців, таблиці лідерів…
  • Каталоги: фінансові сервіси, держсектор, хай-тек, ритейл…
  • Аналітика в реальному часі
  • Керування контентом
  • Інтернет речей
Концепції NoSQL

MongoDB — клієнти

Логотипи деяких клієнтів MongoDB

Концепції NoSQL

Кейс-стаді Shutterfly — огляд

  • Онлайн-сервіс фотографій
    • Обмін персоналізованими альбомами
    • Продукти з друкованими фото
  • Мільйони клієнтів
  • Понад шість мільярдів зображень

Логотип Shutterfly

Концепції NoSQL

Кейс-стаді Shutterfly — проблема й рішення

  • Стрімке зростання даних
  • Межі продуктивності Oracle
  • Довга розробка застосунків
  • Застосунки працювали повільно
  • Oracle став занадто дорогим
  • Обрали MongoDB
Концепції NoSQL

Кейс-стаді Shutterfly — результати

  • Зростання продуктивності
    • Вставки 400 мс → 2 мс
  • Горизонтальне масштабування
  • Гнучка схема → швидка розробка
    • Теги, коментарі тощо легко реалізувати
  • Нові шаблони запитів
  • Зниження витрат
Концепції NoSQL

Кейс-стаді Shutterfly — результати

  • Зростання продуктивності
    • Вставки 400 мс → 2 мс
  • Горизонтальне масштабування
  • Гнучка схема → швидка розробка
    • Теги, коментарі тощо легко реалізувати
  • Нові шаблони запитів
  • Зниження витрат
1 https://www.mongodb.com/who-uses-mongodb
Концепції NoSQL

Давайте потренуємось!

Концепції NoSQL

Preparing Video For Download...