0

キーがファイルパスであるredisでデータをモデル化する必要があり、各パスにはN個のキー/値があります。

現在、ハッシュを使用してデータをモデル化しています。

HSET /products/clothes/pants/501-jeans "title" "Levi 501 Jeans"

これはうまくいきますが、すべての「パンツ」ハッシュ「子供」のリストを取得できるようにしたいと考えています。私はこれを行うことができます

KEYS /products/clothes/pants/*

ただし、redis ドキュメントの状態は本番環境KEYS patternでは使用しないでください。

ハッシュに関連付けられたすべての「パス」のセットを作成することを考えていましたが、それらを検索する方法/かどうかはまだわかりません。

このタイプのデータを最適にモデル化する方法について考えていますか?

4

1 に答える 1

0

これが私がデータをモデル化した方法であり、それはかなりうまく機能しているようです。

resources::/path/foo => Redis Hash of Resource data
resources::/path/foo/bar => Redis Hash of Resource data
resources::/path/foo/cat => Redis Hash of Resource data
resources::/path/foo/cat/dog => Redis Hash of Resource data

children::/path/foo => Redis Map [ /path/foo/bar, /path/foo/cat/, /path/foo/dog ]
children::/path/foo/bar => Redis Map [ /path/foo/bar, /path/foo/cat ]
children::/path/foo/bar/cat => Redis Map [ /path/foo/dog ]

子を管理する必要があります::リソースを追加/削除するたびにマップ::キー

子のモデリングを選択しました:: Redisマップを使用するため、パスキーを複製することは不可能ですが、リストを使用することもできます(簡単に

于 2013-03-02T19:38:36.910 に答える