découverte de redis
TRANSCRIPT
Découverte de RedisJemli Fathi - TB3C
Jemli Fathi
Troisième année ingénierie génie logiciel à ISSATSo
Vice président du Tunisian Big Data and Cloud Computing
Community
Un moteur NoSQL ?
NoSQL(Not Only SQL) ≠ SGBDR.L'unité logique n'y est plus la table.Les données ne sont en général pas manipulées avec SQL.
Moteur NoSQL à base clé-valeur
Les données sont représentés par des couples clé-valeurLa valeur peut être une simple chaîne de caractères, un objet sérialisé...La communication avec la BD se résume aux opérateurs GET, PUT, DELETE,
etc.Les solutions les plus connues sont Redis, Riak et Voldemort.
Redis ?
Crée en 2009 par Salvatore Sanfilippo et Pieter Noordhuis.
Développé en C.
La dernière version est 3.0.4.
Open source.
Sous licence BSD.
Multi plateformes (pas de version officielle pour Windows).
Il supporte des structures de données comme les listes, les hashes, les sets, etc.
Site officiel: http://redis.io/
Qui utilise Redis ?
GitHub
Snapchat
Flickr
StackOvefFlow
Installation de Redis
Allez sur http://redis.io/download
Windows(https://github.com/MSOpenTech/redis/releases/download/win-3.0.500/Redis-x64-3.0.500.zip)
Téléchargez la version stable
Décompressez l’archive: >tar -xvzf redis-x.x.x.tar.gz
>cd redis-x.x.x
>make
Et voila, vous avez installez Redis !
Vous pouvez déplacer le serveur et le client sur /usr/local/bin pour faciliter l'accès:
>sudo cp redis-server redis-cli redis-benchmark /usr/local/bin
>./redis-cli ping
pong
Lancer Redis
Lancer le serveur redis-server:
>cd src
>./redis-server
Lancer le client redis-cli:
>cd src
>./redis-cli
Sauvegarder des données dans Redis
>SET cle valeur OK
Lire des données de Redis
>GET cle
>EXISTS cle
“valeur”
1
Supprimer et Renommer des données dans Redis
>DEL cle
>RENAME cle macle
>RENAMENX cle macle
“valeur”
OK
Les types de données dans Redis
String: chaîne de caractères “binary safe”
Hashe: un ensemble de paires clé-valeur, par exemple: un dictionnaire
List: ensemble d'éléments stocké sous forme de liste ordonnée
Set: liste ou les éléments sont stockés de façon aléatoire(théorie des ensembles)
Sorted Set: Set ou les éléments sont triés selon un score
Pour savoir le type de donnée correspondant à une clé: TYPE clé
Pour plus de détails allez sur: http://redis.io/commands
Manipulation des Strings
Pas de contraintes sur les noms
>SET ! valeur sera acceptée!
Exemples:
>SET user:1 fathi
>GET user:1 “fathi”
>SET user:1:adresse “Sousse Tunisie”
>APPEND user:1 “ jemli”
<STRLEN user:1
>GETRANGE user:1 debut fin
>SETRANGE user:1 debut chaîne
>GETSET user:1 JFCode
>SET user:2 “Clint Amnsell”
>MGET user:1 user:2
>SETNX user:3 “Emmanuel Vagner” 1
>SETNX user:3 “Emmanuel V” 0
Pour plus de détails visitez: http://redis.io/commands#string
Manipulation des Hashes
Exemples:
HSET user:1 prenom fathi
HMSET user:1 prenom fathi nom jemli
HGETALL user:1
HGET user:1 nom
HFXISTS user:1 nom
HLEN user:1
HSET user:1 age 24
HSETNX user:1 age 24
HSET user:1 age 23
HMGET user:1 nom prenom
HKEYS user:1
HVALS user:1
Pour plus de détails visitez: http://redis.io/commands#hash
● Redis d’autres types de supports comme:○ Les listes.○ Les ensembles(set).○ Les ensembles triés(sorted set).
Pour plus de détails: http://redis.io/commands
Merci pour votre attention