Découverte de Redis
Jemli 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é-valeur
La 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).
Qui utilise Redis ?
Twitter
GitHub
Pinterest
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é
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”
>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
● 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

Découverte de Redis

  • 1.
  • 2.
    Jemli Fathi Troisième annéeingénierie génie logiciel à ISSATSo Vice président du Tunisian Big Data and Cloud Computing Community
  • 3.
    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.
  • 4.
    Moteur NoSQL àbase clé-valeur Les données sont représentés par des couples clé-valeur La 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.
  • 5.
    Redis ? Crée en2009 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).
  • 6.
    Qui utilise Redis? Twitter GitHub Pinterest Snapchat Flickr StackOvefFlow
  • 7.
    Installation de Redis Allezsur 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
  • 8.
    Lancer Redis Lancer leserveur redis-server: >cd src >./redis-server Lancer le client redis-cli: >cd src >./redis-cli
  • 9.
    Sauvegarder des donnéesdans Redis >SET cle valeur OK
  • 10.
    Lire des donnéesde Redis >GET cle >EXISTS cle “valeur” 1
  • 11.
    Supprimer et Renommerdes données dans Redis >DEL cle >RENAME cle macle >RENAMENX cle macle “valeur” OK
  • 12.
    Les types dedonné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é
  • 13.
    Manipulation des Strings Pasde 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” >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
  • 14.
    Manipulation des Hashes Exemples: HSETuser: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
  • 15.
    ● Redis d’autrestypes de supports comme: ○ Les listes. ○ Les ensembles(set). ○ Les ensembles triés(sorted set). Pour plus de détails: http://redis.io/commands
  • 16.