に存在して入手しませんこのオプションもOKです:私のようなRedisのキャッシュ内のハッシュを持ってるすべてのハッシュはRedisの
hashme:1
hashme:2
myhash:1
Redis APIで関連するコマンドが見つかりませんでした。
提案がありますか?
に存在して入手しませんこのオプションもOKです:私のようなRedisのキャッシュ内のハッシュを持ってるすべてのハッシュはRedisの
hashme:1
hashme:2
myhash:1
Redis APIで関連するコマンドが見つかりませんでした。
提案がありますか?
redis(および他のK/vストア)のアイデアは、インデックスを作成するためのものです。データベースはあなたのためにそれをしません。リレーショナルデータベースとの大きな違いは、パフォーマンスの向上につながります。
あなたのアプリがハッシュを作成したら、そのキーをSETに入れます。アプリがハッシュを削除すると、そのキーをSETから削除します。そして、ハッシュIDのリストを取得するには、SMEMBERSを使用してSETの内容を取得してください。
Redisからすべてのキーを取得するには、SCAN
コマンドを使用できます。次に各キーについて、TYPE
コマンドを使用してハッシュかどうかを確認します。
私は必要なコマンドのセットをさらに説明できますか実行するには? – ohadinho
[SCAN](https://redis.io/commands/scan)コマンドは、Redisのキーを段階的に反復するために使用されます。このコマンドを使用すると、すべてのキーをRedisで取得できます。 [TYPE](https://redis.io/commands/type)コマンドは、キーのタイプを取得するために使用されます。詳細については、文書をご覧ください。 –
これはすばらしい回避策ですが、私はこのシナリオのためだけに私のアプリケーションにコードを書いたくありません。 – ohadinho
その回避策ではありません。あなたは通常、SETを使って独自のインデックスを構築し、管理する責任があります。あなたのアプリケーションに関連するいくつかのタイプのHASHをすべて取得できるようにする必要がある場合、ユーザを追加/必要に応じてHASHキーを削除してください –
両方の回答は、状況に応じて有効です。私たちは、どれが良いかを知るための十分なコンテキスト情報を持っていません(例:どのようなキーがDB内にあるのですか?それは本番ですか?) –