次のパターンのキーがたくさんあります。
config:id:attr
ここで、最初に で始まるすべてのキーを見つけてからconfig:
、関連する値を取得して、すべての構成を読みたいと思います。
これを行う効率的な方法は何ですか?
注:keys()
メソッドはジョブを実行しますが、本番環境での使用はお勧めしません。
次のパターンのキーがたくさんあります。
config:id:attr
ここで、最初に で始まるすべてのキーを見つけてからconfig:
、関連する値を取得して、すべての構成を読みたいと思います。
これを行う効率的な方法は何ですか?
注:keys()
メソッドはジョブを実行しますが、本番環境での使用はお勧めしません。
Keys は O(N) であり、N は redis インスタンスのキーの数であるため、本番環境での使用はお勧めしません。設定値があまりない場合は、キーを使用するのが合理的です。ただし、あまりスケーラブルではないため、お勧めしません。
私の解決策は、すべての構成キー名を redis の別のリストに保存することです。新しい構成値を追加するときにも、リストに挿入するだけです。
別の合理的な代替手段は、すべての構成値を次のようにハッシュに格納することです。
config => { "id:attr" => value }
その後、hkeys('config') を呼び出して、すべての構成キーを取得できます。