Výhody a omezení databází klíč–hodnota

NoSQL Concepts

Miriam Antona

Software engineer

Výhody – velmi jednoduchý model

  • Dvojice klíč–hodnota
  • Žádné schéma ani typy
  • Základní operace:
    • Put
      • vloží novou dvojici klíč–hodnota
      • aktualizuje hodnotu, pokud klíč existuje
    • Get
      • vrátí hodnotu pro zadaný klíč
    • Delete
      • odstraní klíč a jeho hodnotu
  • Rychlé operace
NoSQL Concepts

Výhody – flexibilita

  • Umožňuje změny datových typů
    • userID:123 = 123456
    • userID:123 = "Miriam"
  • Přidání dalších atributů
    • user:457:preferences = {"language" : "en:US"}
    • user:457:preferences = {"language" : "en:US", "color" : "green","timezone" :"GTM-4"}
NoSQL Concepts

Výhody – ukládání dat v paměti

  • Rychlé čtení i zápis
  • Možná ztráta dat
  • Kombinace diskové a paměťové perzistence
NoSQL Concepts

Výhody – škálovatelnost

  • Horizontální škálování
  • Sharding
    • rozděluje data mezi více serverů

Vizuální vysvětlení shardingu. Data jsou rozdělena mezi servery.

NoSQL Concepts

Výhody – škálovatelnost

  • Horizontální škálování
  • Sharding
    • rozděluje data mezi více serverů

Vizuální vysvětlení shardingu. Data jsou rozdělena mezi servery.

NoSQL Concepts

Výhody – škálovatelnost

  • Horizontální škálování
  • Sharding
    • rozděluje data mezi více serverů

Vizuální vysvětlení shardingu. Data jsou rozdělena mezi servery.

NoSQL Concepts

Výhody – škálovatelnost

  • Horizontální škálování
  • Sharding
    • rozděluje data mezi více serverů

Vizuální vysvětlení shardingu. Data jsou rozdělena mezi servery.

NoSQL Concepts

Omezení

  • Hledání pouze podle klíče
    • Problém, pokud klíč neznáme
    • Některé databáze rozšířily funkce
      • vyhledávání podle hodnoty
      • přidání sekundárních indexů
      • hledání podle více klíčů najednou
    • Složité dotazy nejsou podporovány
NoSQL Concepts

Pojďme si procvičit!

NoSQL Concepts

Preparing Video For Download...