2016-07-26 22 views
1

免責事項:私はRedisデータベースを使用していると主張する投稿を多く読んだが、ここでそれについて話し合わないようにしてください。パフォーマンスに対するRedisデータベースインデックスの影響

構造化キーを使用して私の顧客の構成をRedis DBで保持しています。しかし、私はアプリケーションのいくつかのバージョンをサポートしなければならず、それらはわずかに異なる構成を持っているので、私は別のデータベースに異なるバージョンを保存することに決めました。異なるデータベースを使用し、キー構造化の別の層を使用しない主な理由は、一度に1つずつキーを削除するのではなく、特定のDBを即座にフラッシュする機能です。私はバージョンを削除することを決めたときにそれが必要です。 バージョンが登場すると、新しいバージョンを追加して古いバージョンを追加すると、上下のインデックスが自然に登場します。次に、上のインデックスの境界線に当たったとき、私はすでに放棄したインデックスを「再利用する」か、新しいインデックスを追加することができるという2つの選択肢があります。明らかに、インデックスを再利用するには、私が避けたいと思っている余分な管理が必要です。

私の質問は次のとおりです。データベース範囲5-15で作業しているときとデータベース範囲2005-2025で作業しているときのパフォーマンスとメモリの違いはありますか?

答えて

0

は、参考のためにここに投稿し、Redisのののreddit上の解答を受信:

ねえ、

をそれは基本的に、あなたが パフォーマンス/メモリへの影響という点で取得する方法を杓子定規ではなく、短期的に依存しどういたしまして。ここで

は、SELECTコマンドで何が起こるかです:

int selectDb(client *c, int id) { 
    if (id < 0 || id >= server.dbnum) 
     return C_ERR; 
    c->db = &server.db[id]; 
    return C_OK; } 

Redisのは、その後、任意のコマンドのC->デシベルと相互作用し、そしてデータベースの 選択は文字通り配列です見上げる。

常にこれを自分でテストする必要がありますが、私はなぜそれが が意味のある方法でパフォーマンスに影響を与えるかはわかりません。

https://www.reddit.com/r/redis/comments/4wplmc/what_is_redis_database_index_impact_on_performance/d69b4z8

関連する問題