redis-rb gemには、DBに格納されているすべてのキーのリストを返す関数がありますか?私の最終目標は、すべてのキーと値のペアを繰り返し処理し、それらに対して何らかのアクションを実行することです。Redis(Ruby)に格納されているすべてのキーのリストを取得します
18
A
答えて
22
確かに、redis-rbはすべてのRedisコマンドを公開し、それらをクライアントオブジェクトのメソッドとして表します。
redis.keys('*')
4
redis.keys
これは、アレイ状に結果を返します。
12
あなたのDBにレコードの任意のかなりの量を持っている場合、それはあまりにも多くのRAMを取ることになるので、カーネルはあなたのredis.keys
を殺すでしょう。
バッチでキーを抽出します。あなたはすべてのキーをしたい場合は、単にmatch
オプションを使用しないでください
redis.scan_each(match: 'user:*') do |resume_key_name|
resume_key_name #=> "user:12"
end
:のRedis-RBは(Redisの自体に存在していない)、このための素晴らしい方法があります。
関連する問題
- 1. RUBY WATIR - ハッシュに格納されている重複キーをソート
- 2. Redisに格納されたオブジェクトを設定して取得する方法は?
- 3. OpenCVの:すべての "点" "マット" に格納された取得
- 4. すべてのredisデータベースのキーと値をすべて取得しますか?
- 5. Redisが配列に格納されています
- 6. すべてのマウントポイントはLinuxに格納されています
- 7. drawableに格納されている画像のURIを取得
- 8. 配列に格納されたリストを取得する
- 9. Spring Redisリポジトリを使用して格納されたPOJOのTTLを取得します。
- 10. 私はドキュメントディレクトリに格納していたオーディオのリストを取得する方法
- 11. サポートされているすべてのダイジェストアルゴリズムのリストを取得
- 12. インストールされているすべてのアプリケーションのリストを取得
- 13. Python redisはタイムスタンプに基づいてリストを取得します
- 14. GHashTableに格納されたキーへの参照を取得する
- 15. ファイアベースに格納されているデータの値を取得する
- 16. セレンのスパンクラスに格納されている値を取得する方法
- 17. 変数に格納されているURLのパス名を取得する
- 18. Dynamoに格納されているJSONオブジェクトのサブセットを取得する
- 19. redisテンプレートを使用してRedisからすべてのキーを取得する方法
- 20. Expressセッションは、式セッション - redis接続を使用してredisに格納されていません
- 21. Java HashMapキー値の格納と取得
- 22. ehcacheの中にソートされたリストを格納しています
- 23. リストに格納された特定の情報を取得する方法
- 24. 私はnormalizrスキーマで定義されたすべてのキーのリストを取得しようとしている
- 25. SQL列に 'array'を格納し、すべての行を取得しています。
- 26. Javaスクリプトでキーの値を取得する(キー名を変数に格納して使用する)
- 27. plistファイルに格納されている配列データを取得する
- 28. Java ArrayListに格納されているオブジェクト値を取得する方法
- 29. java.util.Calendarを使用してオブジェクトに格納された日付を格納および取得する
- 30. オブジェクトが格納されているリストのサブリストを作成するリスト
これは私にとって非常に遅かったです。 5.6KのキーだけでRedisデータベースに戻るには15秒かかりました。 –
@AbeVoelkerもっと速くなる 'pipelined'でredisを使うことができます。 – fangxing
@Alexの答えを見てください。シンプルでわかりやすい –