Python ネイティブ データ構造「DICTIONARY」と「Redis」データベースの違いは何ですか? 質問する

Python ネイティブ データ構造「DICTIONARY」と「Redis」データベースの違いは何ですか? 質問する

これまでのすべてのテストケースでは、redis の代わりに Python 辞書を使用することもできたようです。そのため、なぜ Redis なのかを自分自身に納得させることができません。注: 私は Redis の初心者なので、このような素朴な質問をお許しください。

ベストアンサー1

質問したことに対して謝罪する必要はありません! :) 実際、数週間前に同僚から同様の質問を受けたばかりです。

Redis オブジェクトは、他の多くのプログラミング言語でよく見かける、おなじみのデータ構造に非常によく似ています。Redis ハッシュは Python 辞書にかなり似ており、Redis セットは Python セットに似ており、Redis 文字列は Python 文字列に似ています。これは事実です。しかし、10 個の要素を含む辞書ではなく、1,000 個の要素を含む辞書を操作しなければならない場合はどうでしょうか。または、それぞれ数十個のキーを含む何百もの辞書を保存しなければならない場合はどうでしょうか。未知の量の情報を保存しなければならない場合はどうでしょうか (たとえば、ユーザーがサービスにサインアップしてプロファイルを作成できるようにする場合)。Redis は、何よりもまずデータ ストレージ エンジンです (MySQL、MongoDB など)。たまたま、アプリケーション コードでデータを構造化する方法と非常によく似た複数のデータ構造化方法も提供しているため、アプリケーション開発者としておそらくおなじみの特定のパターンを Redis のデータに実装するのは非常に簡単です。わかりますか?

私はまた、「データ」は常にアプリケーション ロジックとは別に保存されるべきだという考えを持っていますが、それはおそらく実用性ではなく哲学に関する別の議論になると思います。 ;)

おすすめ記事