どのようなデータ型Redisのサポートしていますか?RedisのコマンドDaquanの

Aは、データ型をサポートするのRedis

1)文字列

  • 共通のコマンド:設定/取得/ DECR / INCR / MGETなど。
  • シナリオ:文字列は、共通鍵/値の記憶などに分類することができるデータの最も一般的に使用されるタイプです。
  • 実装:文字列が内部ストレージにRedisのデフォルト文字列がredisObject、顔INCRを参照されている、DECRその他の動作は、INTのフィールドredisObjectケースをコードする、数値計算になります。

2)ハッシュ

  • よく使用されるコマンド:hget / HSET / hgetallなど
  • シナリオ:私たちは、ユーザーID、ユーザー名、年齢、生年月日を含め、ユーザオブジェクトデータに関するストア情報にしたい、私たちは、ユーザーの名前や年齢、生年月日のユーザーIDを介して取得したいです。
  • 実装:ハッシュ値のRedisのは、実際にはHashMapとして内部的に格納し、Mapインタフェースのメンバーへの直接アクセスを提供しています。示されているように、キーはユーザーIDで、値が地図です。地図は値が属性値で、メンバーのキー属性です。そのようなデータは、すなわちキー(ユーザID)+フィールド(タグ属性)の操作に対応するデータを属性することができ、マップキー(フィールドの前記内部にRedisの地図キー)内に直接アクセスして修正することができます。2つの方法でのHashMapの現在の実装:redisObjectにするための対応する値を符号化するとき、メモリを節約する部材HashMapの比較的少ない時間のRedisは、実際のHashMapの構造を用いることなく、コンパクトに収納の一次元アレイと同様のアプローチを採用しますzipmap、メンバーの数を増やしたときに、それは自動的に、本当のHashMapにエンコーディングHTのためのこの時間は変換されます。
  • ハッシュ
3)一覧
  • 共通コマンド:lpush / rpush / LPOP / RPOP / LRANGE等。
  • アプリケーションシナリオ:シナリオのRedisのリストは、リストを達成するためにRedisの構造を使用することができますので、Redisのは、あなたのウォッチリスト、Twitterのファンリストとして、また、最も重要なデータ構造の一つであり、非常に大きいです。
  • 実装:Redisのリストにも使用されている送信バッファのキューなどを含む逆引き参照とトラバーサルをサポートすることができ、二重リンクリスト、より便利な操作が、オーバーヘッドのいくつかの余分なメモリを持って、内部実装のRedisの多くは、として実装されていますこのデータ構造。
4)設定
  • 共通コマンド:SADD / SPOP / smembers / sunion等。
  • シナリオ:外部関数の機能一覧Redisのセットを使用すると、データのリストを格納する必要がある場合、自動的に重複排除に設定することができ、特別な機能のリストを提供したものと同様で、重複データセットにしたくないです非常に良い選択とセットは、重要なインタフェースは、設定されたコレクション内のメンバーは、このリストが提供されていないかどうかを判断する提供します。
  • 実装:実装の内部設定は、常にヌルのHashMapに値であり、実際にメンバーがコレクション内の理由かどうかを判断するように設定されてすぐに重複排除、に計算されたハッシュ方法です。

5)ソートセット

  • 共通コマンド:zadd /のzrange / zrem / zcard等。
  • シナリオ:Redisのは、セットに似た使用シナリオのセット、差が自己規則セットではなく、メンバーをソートするためにユーザに追加のパラメータの優先順位(スコア)を設定ソートされ、順番に挿入さを提供することができるソート自動的にソート。あなたは非反復とコレクションの順序付きリストが必要な場合、あなたは、このようなTwitterの公開タイムラインなどのデータ構造のソートセットがスコアとしてポスト時間まで保存することができます選択することができ、時間が自動的にかかる取得がソートされます。
  • 実装:Redisのは、秩序や店舗のデータを確実にするための内部利用のHashMapとジャンプテーブル(SkipList)の設定ソートHashMapを入れて得点するためのマップのメンバーであり、かつジャンプテーブルは、すべてのメンバーに格納され、ソートされジャンプテーブル構造を使用して、スコアに格納されたハッシュマップは、比較的高い検索効率を得られ、実装が比較的簡単なことができます。

二、RedisのはDaquanのコマンド

1.メモリベースのキー- 値データベース
 2は、C言語に基づいて、複数の言語のAPIをサポートすることができます// 81000回取得取るために、SET毎秒1100万回 
3を持続。サポートするデータ
 4 .Valueのは、文字列を指定できますハッシュ、リスト、セット、ソートセット

使用シナリオ
 1 。最新の動作にn個のデータ
 2.チャート、n個のデータ取らトップ// 人気10の前に最高 
3 。正確な設定の有効期限
 4 カウンタ
 5 。リアルタイムシステム、アンチスパムシステム
 6 。パブ、サブビルドリアルタイムでパブリッシュ・サブスクライブ・システムメッセージング
 7 。メッセージキュー構築する
 8 。キャッシュ

CMDアクセスのRedis 
Redisの -cli.exe -h 127.0.0.1 -p 6379の


キー
    キー * すべてのキーを取得
    するSELECT 0を選択します最初のライブラリ
    の移動のmyString 1データベースは、ライブラリが目標を持って、あなたが移動することはできません、現在のデータベースに移動するための鍵となる
    指定されたライブラリクリアフラッシュデシベルを
    randomkeyランダム鍵
    型キータイプの
    
    設定キーセットキー1値1 
    キー取得するGETキー1を
    MSET KEY1をvalue1キー2値2値3 KEY3 
    mgetはKEY1 KEY2 KEY3 
    デルをキー1キーを削除
    存在するキーキーがあるかどうかを決定する
    ザ・キー期限切れに 10    10の有効期限が切れて
    キーpexpireミリ秒は
    、キーの削除期限切れの時間持続する

文字列
    セット名CXX 
    GET名
    GetRange名 0 -1         文字列セグメント
    new_cxxの設定が古い値を返す、名前をGETSET 
    MSET KEY1 KEY2バッチセット
    MGET key1がKEY2 GETバルク
    setnxキーの値は、挿入(未EXISTS)は存在しません
    SETEXキー時間有効期限値(有効期限切れ)
    開始値置換インデックスからSetRangeキーのインデックス値
    年齢刻みINCR 
    年齢incrby 
    hmget myhash名の年齢注    10の   刻み
    の年齢の減少DECR 
    年齢decrby 10の   デクリメント
    減少フロートincrbyfloatは
    、追加の追加を
    strlenの長さ
    GETBIT / SetBit / BITCOUNT / オペレーティングbitopビット
    
のハッシュ
    HSET myhash名CXXが
    myhash名hget 
    hmsetのmyhash CXX名年齢 25注"I AM注意"を 
    があればhexistsは名前をmyhashを
    hgetall myhashすべて取得
    hsetnxのmyhashスコア 100       に配置された不在
    hincrbyのmyhashのID 1。が          インクリメントされ
    HDELのmyhash名は削除
    キーだけ取るmyhash hkeys 
    値だけ取るmyhash hvalsを
    HLENのmyhash長

一覧
    ABCは左LPUSHのマイリストを挿入
    rpushマイリストxyzの右介在
    LRANGEマイリスト 0 - 1つの  データ収集
    LPOPマイリストポップアップ要素
    RPOPマイリストポップアップ要素
    マイリスト長llen 
    削除カウント値マイリストのlrem 
    LINDEXのマイリスト 2           指定されたインデックス値
    LSETのマイリスト 2nはセッターインデックス 
    LTRIMマイリストを 04          の削除キー
    挿入前linsertのmylistというのA 
    linsertをマイリストに挿入した後
    rpoplpushデータ転送LIST2のリスト一覧
    
SET 
    ・サッドはRedisのMYSET 
    smembers MYSETデータセットを
    SREM MYSET SET1削除
    コレクションの要素かどうかsismember MYSET SET1を判断し
    SCARD番号key_nameは
    sdiffの |シンター| SUNION操作:間の集合演算:差が設定|交差点が| とセット
    コレクション内のランダムな要素を取得しsrandmemberが
    コレクションからポップアップ表示要素SPOP 
    
ZSET 
    Zadd ZSET。1 
    ZaddはZSET 2 TWO 
    Zadd ZSET。3 
    zincrby ZSETを 1。成長スコア1 
    zscore ZSET 2つの取得ポイント
    ZレンジザはZSET 0 -1 withscores値の範囲
    zrangebyscore ZSET 10 25 値のwithscores指定された範囲は、
    ZSET zrangebyscore 10 1 2 25 withscoresが制限タブ
    ZrevrangebyscoreがZSET 10 25 値の範囲を指定withscoresを
    zcard ZSET要素数
    ZCOUNT ZSETを得るの範囲内の要素の数は、分数を指定
    Zremは1~2の削除一つ以上の要素をZSET 
    ZremrangebyrankがZSET 0.1   位置範囲に応じて削除要素を
    ZremrangebyscoreがZSET 0.1 スコアの範囲に応じて削除要素を
    Zrank ZSET 0を-1     のスコアランキングは、最小要素0 
    Zrevrank ZSET0-1   ランキングスコアが最大の要素0 
    Zinterstore 
    LAST_WEEK:zunionstoreランク 7ランク:20150323ランク:ランク20150324:20150325の重み1. 1. 1. 1. 1. 1. 1 
    
    
ソート:
    ソートマイリスト並び
    替えマイリストアルファDESC制限を 0 2 アルファベット順
    で並べ替えリストIT: * コマンドによってDESC 
    ITによってソートリスト: * descをGET IT:*   GETパラメータ
    ITによってソートリスト: * DESCはそれを得る:* ストアSORC:まで結果セットのソートクエリを保存すること:結果のソートストアのパラメータはの指揮

のサブスクリプションそして公開:
    chat1を購読する:購読
    発表:chat1を公開「hell0ニッケルハオ」
    表示チャンネル:のpubsubチャンネルを
    特定のチャンネルに加入者数を見て:のpubsub numsub chat1 
    指定したチャンネルを解除:. unsubscrible chat1を、Javaのpunsubscribe * 
    チャンネル:. Psubscribeジャワのグループに登録 * 
    
:Redisの事
     分離、アトミック、
     ステップ:スタートトランザクションコマンドを実行し、トランザクションがコミットされる
             マルチ   // オープン総務
             ・サッドMYSET ABC 
             ・サッドMYSET EFG 
             マイリストAA BB CC LPUSH 
             LPUSHマイリストDD FF GG 

サーバ管理
    dump.rdb 
    appendonly.aof 
    // AOPのBgRewriteAof非同期実行は、(appendOnlyはファイル)、ファイルの書き換えは、
    AOFの現在のファイルサイズの最適化バージョンを作成
    
    // 保存することbgsave背景非同期データをディスクは、現在のディレクトリdump.rdbにファイルを作成します
     // ディスクに保存された同期データは、それがメインのプロセスをブロックします保存、他のクライアントが接続できない
    
    // クライアント近いキルクライアント接続
     //すべてのクライアントのリストにクライアントリスト
    
    // クライアントには、名前の設定
      setName myclient1クライアント
      クライアントのgetNameの
      
     設定GETポート
     // 書き換えRedisのプロファイルにconfigRewrite 


RDB 
保存 900 1 
割引 300 10 
セーブ 60万

AOPのバックアップ処理
appendonlyはいオープン永続
appendfsync everysecバックアップ1秒に1回

のコマンド:
ディスクに保存bgsave非同期データ(セーブ・スナップショット)
に成功したディスクのUNIXタイムスタンプに保存された最後のLASTSAVEリターン
サーバーと近いRedisのサーバーに保存されたシャットダウン同期
ファイル圧縮処理(コマンド)bgrewriteaof

 

おすすめ

転載: www.cnblogs.com/jxxblogs/p/12238552.html