sql >> データベース >  >> NoSQL >> Redis

Redisでソートされたセットを介した逆ページネーション

    要素のランクを取得してから、インデックスで作業するのは簡単です。アプリケーションで使用できる入力が72と46の初期スコア境界のみであると仮定すると、次のことができます。

    redis 127.0.0.1:6379> ZREVRANGEBYSCORE mySortedSet 72 (46
    1) "G"
    2) "F"
    3) "E"
    redis 127.0.0.1:6379> ZREVRANK mySortedSet G
    (integer) 4
    redis 127.0.0.1:6379> ZREVRANGE mySortedSet 1 3
    1) "J"
    2) "I"
    3) "H"
    redis 127.0.0.1:6379> 
    

    追加の呼び出しは、O(log(N))ZREVRANKのみです。 電話。そこから、関心のある範囲の新しいインデックスとZREVRANGEを取得するのは、クライアント側の計算です。 必要な値を取得します。

    これをRedis2.6rc5でテストしましたが、2.0以降のすべてのバージョンで動作するはずです。




    1. MongoDBで、配列の一部のみを返す方法は?

    2. Laravel-頻繁な更新でEloquentをキャッシュする

    3. 流星生産サーバーからローカルまでのMongorestore

    4. ノードサーバーを使用してMongoDBに接続する際の警告