sql >> データベース >  >> NoSQL >> Redis

値でキーを検索

    redisを使用してすばやく学習することの1つは、特にリレーションに関しては、アクセスのニーズに合わせてデータ構造を設計できることです(結局のところ、リレーショナルデータベースではありません)

    すでに気付いたように、O(1)の時間計算量で「値」で検索する方法はありませんが、redisを使用して説明する内容にアプローチする方法はあります。これが私がお勧めするものです:

    • すでに行っているように、ユーザーID(ハッシュなど)でユーザーデータを保存します。
    • 問題の講師IDに対応するすべてのユーザーIDを含む各講師IDの追加セットを用意します。

    ユーザーデータには講義IDを保存する必要があり、講義データにはユーザーIDを保存するため、これは関係のデータを複製しているように見えるかもしれませんが、関係を構築する場合の(わずかな)代償です。 -redisのようなリレーショナルデータストア。実際には、これはうまく機能します。小さなデータセット(数千のIDを考えてください)のボトルネックになることはめったにありません。

    人々がredisを使用してリレーションを持つアプリケーションをモデル化する方法をよりよく理解するには、単純なTwitterクローンの設計と実装、およびLamernewsのソースコードを読むことをお勧めします。どちらもredisの作成者であるSalvatoreSanfilippoによって作成されています。



    1. Redis、ZINCRBYを使用してzsetのすべてのスコアを増やす方法は?

    2. PyMongoを使用してPandasデータフレームをmongodbに挿入します

    3. 埋め込まれたドキュメントのみを返すMongoDBクエリ

    4. MongoDBでの遅いクエリの分析