Redisベースとnode-redisライブラリの使用


データ型
  • 文字列String
  • リストList Redisリストは文字列リスト
  • のみである.
  • ハッシュHashes
  • 集合Set
  • 秩序化集合Sorted Set
  • 文字列アクション
  • > set str "test String 1"  
    OK
    > get str
    "test String 1" 
    
  • ハッシュhashes類似PHP配列["hello"=>123]
  • > HMSET myhash name "redis hash" age 20   //     myhash name ="redis hash" age = 20
    OK
    > HMGET myhash name  age              //     myhash name age (        key)
    "redis hash"
    20
    
    > HGETALL myhash   //     myhash      
    "name"
    "redis hash"
    
    
    
  • リストRedisリストは文字列リスト
  • のみである.
    > LPUSH lis1 123 223 //    123 223 333   list1   
    (integer) 3
    
    > LLEN list1    //   list1    
    (integer) 3
    
    > LRANGE list1 0 1 //   list1 0~3    
    "123"
    "223"
    "333"
    
    > LINDEX list1 1 //  list1       
    "223"
    
    > RPOP list1  //            
    "333"
    
    > LPOP list1  //           
    "123"
    
    
  • 集合Set一意文字列の無秩序集合
  • > SADD myset "set1" "set2" "set3"  //   "set1" "set2" "set3"  myset
    "set1"
    > SCARD myset  //        
    (integer) 3
    > SPOP myset //            
    
    

    node-redis
    // yarn add redus
    
    var redis = require("redis"),
     client = redis.createClient(6379, "localhost");
    
    client.on("error", function(err) {
     console.log("Error " + err);
    });
    
    client.on("error", function(err) {
     console.log("Error " + err);
    });
    
    client.set("hello", "This is a value");
    
    console.log(new Date().getTime());
    client.LINDEX("list1",1, function(err, v) {
     console.log(new Date().getTime());
     console.log("redis get hello err,v", err, v);
    });
    
    client.quit();
    

    文字列アクション
  • set所与のキーに格納値OK set(‘key’,‘value’)
  • を設定する.
  • get所与のキーに格納値value/null get(「key」)
  • を取得する.
  • del所与のキーに格納値(任意のタイプ)1/0 del(「key」)
  • を削除する.
  • incrbyキー格納値に整数increment incrby(‘key’,increment)
  • を加算
  • decrbyキー格納値から整数increment decrby(‘key’,increment)
  • を減算
  • incrbyfloatキー格納値に浮動小数点数increment incrbyfloat(‘key’,increment)
  • を加算
  • append所与のキーの現在記憶値の末尾append(‘key’,‘new-value’)
  • に値valueを追加する.
  • getrange指定キーのindex範囲内のすべての文字からなるサブ列getrange(‘key’,‘start-index’,‘end-index’)
  • を取得する
  • setrange指定キー値の指定オフセット量から始まるサブストリングを指定値setrange(‘key’,‘offset’,‘new-string’)
  • に設定.
    リストアクション
  • rpush所与の値をリストの右端
  • に押し込む.
  • lrange取得リスト所定範囲のすべての値array lrange('key',0,-1)(すべての値を返す)
  • lindexは、指定された位置にリストされた単一の要素lindex(‘key’,1)
  • を取得する.
  • lpopはリストの左端から値をポップアップし、ポップアップされた値lpop(「key」)
  • を返す.
  • rpopはリストの右端から値をポップアップし、ポップアップされた値rpop(「key」)
  • を返す.
  • ltrimリストを指定したindex範囲でltrim(‘key’,‘start’,‘end’)
  • を削減する
    ハッシュアクション
  • hsetハッシュ内に所定のキー値対1(新規)/0(更新)hset(‘hash-key’,‘sub-key’,‘value’)(配列、文字列をサポートしない)
  • を関連付ける
  • hget指定ハッシュキーの値hget(‘hash-key’,‘sub-key’)
  • を取得する
  • hgetallハッシュに含まれるキー値対json hgetall(‘hash-key’)
  • を取得する
  • hdel所与のキーがハッシュ内に存在する場合、このキーhdel(‘hash-key’,‘sub-key’)
  • を除去する.
  • hmsetはハッシュ内の1つまたは複数のキー設定値OK hmset(‘hash-key’,obj)
  • である.
  • hmgetハッシュから1つ以上のキーの値array hmget(‘hash-key’,array)
  • を取得する
  • hlenは、ハッシュに含まれるキー値ペアの数hlen(‘hash-key’)
  • を返す.
  • hexists所与のキーがハッシュ内の1/0 hexists(‘hash-key’,‘sub-key’)
  • であるかどうかをチェックする.
  • hkeysハッシュに含まれるすべてのキーarray hkeys(「hash-key」)
  • を取得する
  • hvalsハッシュに含まれるすべての値array hvals(「hash-key」)
  • を取得
  • hincrby保存されているキー値を、増加した値を返すhincrby(‘hash-key’,‘sub-key’,increment)(注:現在のvalueが文字列でない場合、出力がなく、プログラムが停止する)
  • を指定するために増加します.
    セット
  • sadd所与の要素を集合挿入要素数
  • に追加する.
  • smembersは、セットに含まれるすべての要素array(無秩序)smembers('key')
  • を返します.
  • sismenber所与の要素が集合中の1/0 sismenber(‘key’,‘value’)
  • に存在するかどうかを調べる
  • srem所与の要素がセット内にある場合、その要素1/0 srem(‘key’,‘value’)
  • を除去する.
  • scadは、セットに含まれる要素の数sacd(‘key’)
  • を返す.
  • spopは、セット内の1つの要素をランダムに除去し、この要素spop(‘key’)
  • を返す.
  • smove集合要素の移行smove(‘source-key’dest-key’,‘item’)
  • sdiffは、第1の集合に存在するが、他の集合に存在しない要素(差集合)sdiff(‘key 1’,‘key 2’[,‘key 3’,...])
  • を返す.
  • sdiffstoreは、sdiff操作の結果を指定したキーに格納するsdiffstore(‘dest-key’,‘key 1’,‘key 2’[,'key 3...])
  • sinterは、同僚がすべての集合に存在する要素(交差)sinter(‘key 1’,‘key 2’[,‘key 3’,...])
  • を返す.
  • sinterstore sinter操作の結果を指定したキーのsinterstore(‘dest-key’,‘key 1’,‘key 2’[,'key 3...])
  • に格納する
  • sunionは、少なくとも1つのセットに存在する要素(並列セット)sunion(‘key 1’,‘key 2’[,‘key 3’,...])
  • を返す.
  • sunionstore sunion操作の結果を指定したキーにsunionstore(‘dest-key’,‘key 1’,‘key 2’[,‘key 3...])
  • に格納する
    ちくじしゅうごう
  • zadd所与のブランチを有するメンバーを秩序化集合に追加するzadd(‘zset-key’,score,‘key’)(scoreはint)
  • zrangeは、要素の整列中の位置に基づいて、要素
  • を取り出す.
  • zrangebyscore所定のスコア範囲内の秩序化集合のすべての要素
  • を取得する
  • zrem所定のメンバーが整列集合に存在する場合、
  • を除去する.
  • zcardは、1つの順序セット内のメンバー数順序セットの要素個数zcard('key')
  • を取得する.