sql >> Databáze >  >> NoSQL >> Redis

Jak funguje ServiceStack Redis při získávání dat

Efektivita je méně síťových hovorů vs více dat . Data v Redis se prostě blobují, většinou jediné volání API mapuje 1:1 s operací serveru redis. Což znamená, že o důsledcích výkonu můžete uvažovat jako o prostém stažení objektu blob datové sady json z paměti vzdáleného serveru a jeho deserializaci na klientovi – což je vlastně vše, co se stane.

V některých rozhraních API, jako je GetAll(), vyžaduje 2 volání, 1 k načtení všech ID v sadě entit a druhé k načtení všech záznamů s těmito ID. Zdrojový kód klienta Redis je docela přístupný, takže doporučuji podívat se, co se přesně děje.

Protože máte pouze 3 kategorie, neušetříte tolik dat navíc, když se pokusíte filtrovat na serveru.

Takže vaše možnosti jsou v zásadě:

  • Stáhněte si celou datovou sadu entity a filtrujte na klientovi
  • Udržujte vlastní mapování indexu z kategorie> ID
  • Pokročilejší:Použijte operaci LUA na straně serveru k použití filtrování na straně serveru (vyžaduje Redis 2.6)



  1. Mongo agregace se stránkovanými daty a součty

  2. socket.io redis a únik paměti

  3. 20 Pozoruhodný rozdíl mezi Hadoopem 2.x a Hadoopem 3.x

  4. Odstranění klíče/hodnoty z existující položky MongoDB