Преимущества и ограничения баз данных «ключ — значение»

Концепции NoSQL

Miriam Antona

Software engineer

Преимущества — простота

  • Пара «ключ — значение»
  • Без фиксированной схемы и типов
  • Базовые операции:
    • Put
      • добавляет новую пару «ключ — значение»
      • обновляет значение, если ключ уже существует
    • Get
      • возвращает значение по заданному ключу
    • Delete
      • удаляет ключ и его значение
  • Быстрые операции
Концепции NoSQL

Преимущества — гибкость

  • Допускают изменение типов данных
    • userID:123 = 123456
    • userID:123 = "Miriam"
  • Добавление дополнительных атрибутов
    • user:457:preferences = {"language" : "en:US"}
    • user:457:preferences = {"language" : "en:US", "color" : "green","timezone" :"GTM-4"}
Концепции NoSQL

Преимущества — хранение данных в памяти

  • Быстрые операции чтения и записи
  • Возможна потеря данных
  • Сочетание хранения на диске и в памяти
Концепции NoSQL

Преимущества — масштабируемость

  • Горизонтальное масштабирование
  • Шардирование
    • распределяет части данных по нескольким серверам

Наглядное объяснение шардирования. Данные распределены по серверам.

Концепции NoSQL

Преимущества — масштабируемость

  • Горизонтальное масштабирование
  • Шардирование
    • распределяет части данных по нескольким серверам

Наглядное объяснение шардирования. Данные распределены по серверам.

Концепции NoSQL

Преимущества — масштабируемость

  • Горизонтальное масштабирование
  • Шардирование
    • распределяет части данных по нескольким серверам

Наглядное объяснение шардирования. Данные распределены по серверам.

Концепции NoSQL

Преимущества — масштабируемость

  • Горизонтальное масштабирование
  • Шардирование
    • распределяет части данных по нескольким серверам

Наглядное объяснение шардирования. Данные распределены по серверам.

Концепции NoSQL

Ограничения

  • Поиск только по ключу
    • Проблема, если ключ неизвестен
    • Некоторые базы данных «ключ — значение» расширили функциональность
      • поиск по значению
      • добавление вторичных индексов
      • поиск по нескольким ключам одновременно
    • Сложные запросы не поддерживаются
Концепции NoSQL

Давайте потренируемся!

Концепции NoSQL

Preparing Video For Download...