ECV

Entrepôts Clés-Valeurs.

Besoin

Accéder rapidement à une donnée persistante.

Analyse

Un ECV permet de récupérer une donnée de structure quelconque (objet, grappe d'objet liés, fichier video ou audio, nombre, etc.).

Conception

Un ECV est similaire à une tâble de hâchage distribuée, généralement avec un modèle de cohérence à terme (eventual consistence).

Parce que le type des valeurs associé au clé peut varier, le risques de conflit augmente (une clé pour une valeur de type donné pouvant être identique à celle pour une valeur d'un autre type). Pour pallier ce problème, certains ECV proposent de partitionner leur espace de stockage "horizontalement", i.e. le type de données détermine le noeud où elle est stockage (sharding). .

Exemples

Produits

Des exemples d'ECV sont :

  • Standalone
    • Redis
  • Distribués
    • DynamoDB (Amazon)
    • Voldemort
    • Riak

Cas d'utilisation

Une utilisation typique d'ECV est le stockage d'informations liées à des utilisateur (session, préférences, panier de commandes).

A contrario, les ECV sont inefficaces lorsqu'il s'agit de rechercher en fonction des valeurs (et non des clés) puisque cela oblige à itérer sur toutes les valeurs (au mieux toutes d'un certain type).