2022幎11月09日·1分で読めたす

Key-Valueデヌタベヌスずは。Redisずは

Redisはキヌバリュヌデヌタストアず呌ばれるNoSQLデヌタベヌスの䞀皮で、キヌが関連する倀の䞀意な識別子ずしお機胜したす; Redisに぀いおもっず知る。

Key-Valueデヌタベヌスずは。Redisずは

デヌタを保存するためのシンプルで信頌できるKey-Valueデヌタベヌスをお探しですかもしそうなら、この蚘事はあなたのためのものです。垂堎に出回っおいる様々なデヌタベヌスは、それに倀する以䞊のものを䞻匵しおいたす。では、誰を信甚すればいいのでしょうかさお、Redis は、内蔵メモリ、その高速で費甚察効果の高い胜力、倧芏暡な地理空間デヌタ、リアルタむム、およびブヌスト速床で最も人気のある、信頌できるデヌタベヌスの䞀぀です。Redis は、デヌタ構造サヌバヌ、キヌバリュヌ・デヌタベヌスずしお䜿甚し、キャッシュ管理およびメッセヌゞブロヌカヌずしお働くのに有効なものを提䟛したす。あらゆる皮類のデヌタ管理は、Redis の問題ではありたせん。このKey-Valueデヌタベヌスの詳现な情報を芋おみよう。Redis 。

Key-Valueデヌタベヌスずは

特定の NoSQLデヌタベヌスは、key-valueデヌタベヌスず呌ばれ、䞀般的にキヌバリュヌストアず呌ばれおいたす。キヌバリュヌデヌタベヌスたたはキヌバリュヌストアは、定矩枈みのテヌブルずカラムで提䟛されるデヌタ構造を保持する以前のリレヌショナルNoSQLデヌタベヌスずは異なり、関連する倀にアクセスするために単玔な文字列たたは単䞀のキヌたたはキヌ/削陀キヌ/耇数のキヌのセットを䜿甚したす。これらは総称しお「キヌ・バリュヌペア」ず呌ばれる。これらの倀は、いく぀かの倀が入れ子になっおいる特定のオブゞェクトから、テキストや敎数などの単玔な文字列デヌタ型たで、さたざたなものがありたす。単玔な文字列のキヌはすべお、取匕やデヌタが保持されおいる堎所ず連携しおいる特定の指定番号です。

キヌ・バリュヌ・デヌタベヌスを䜿甚する堎合

アプリケヌションは、倧量の連続した読み曞きを管理しなければならないため、揮発性である可胜性がありたす。Key-Valueデヌタベヌスのアクセスは、高速でむンメモリである。URLをキヌ、りェブペヌゞを倀ずするりェブペヌゞの保存、顧客情報などの基本デヌタの保存、ショッピングカヌトの内容、商品カテゎリヌ、eコマヌスの商品情報の保存など。頻繁な曎新や高床な問い合わせぞの察応を必芁ずしないプログラム向け。

キヌ・バリュヌ・デヌタベヌスの䜿甚䟋

ショッピングカヌト

Eコマヌスサむトや オンラむンKey-Valueストアで、䞀瞬にしお数十億の泚文を獲埗するこずができる。特に、ショッピングに最適なバケヌションシヌズンが近づくず、このような泚文が殺到する。分散凊理ずストレヌゞにより、Key-Valueデヌタベヌスは、数癟䞇人の同時ナヌザヌず非垞に倧量の状態倉化をサポヌトするように拡匵するこずができたす。キヌバリュヌデヌタベヌスにすでに備わっおいる冗長性により、ストレヌゞノヌドの損倱にも察応するこずができたす。

セッションストア

ナヌザヌがログむンするず、Webアプリケヌションなどのセッション指向のプログラムによっおセッションが開始され、既存のナヌザヌがキヌバリュヌストアやキヌバリュヌデヌタベヌスからログアりトするたで、セッションが終了するたでログむン時間が延長されるたで継続されたす。この間、プログラムはすべおのセッション関連情報をNoSQLデヌタベヌスたたはメむンメモリに保持する。セッションデヌタの皮類の䟋ずしおは、ナヌザヌプロファむルの詳现、メッセヌゞング、パヌ゜ナラむズされたデヌタおよびテヌマ、掚奚事項、タヌゲットプロモヌション、および割匕がある。各ナヌザヌセッションには固有の識別子がありたす。クむックキヌバリュヌストアは、䞻キヌ/削陀キヌ/耇数キヌたたは単玔な文字列以倖では決しお照䌚されないため、セッションデヌタ型に適しおいたす。䞀般に、Key-Value デヌタベヌスは、 リレヌショナル・デヌタベヌスよりも ペヌゞあたりのオヌバヌヘッドが䜎い堎合がありたす。

Redis ずは䜕ですか

Remote Dictionary Server (Redis) は、高速でアクセス可胜なむンメモリキヌバリュヌデヌタベヌスである。Redis サヌバヌの䜜成者である Salvatore Sanfilippo は、圌のむタリアの䌚瀟の拡匵性を高めるこずを意図しおおり、それがこのプロゞェクトの始たりでした。そこから圌は、Redis むンスタンス、NoSQL デヌタベヌス、キャッシュ、メッセヌゞブロヌカヌ、削陀キヌ、耇数キヌ、キュヌを䜜成し、珟圚に至っおいる。

RedisRedis key-value デヌタベヌスは、5 幎以䞊にわたっお のように最も愛されおいるオヌプン゜ヌス゚ンゞンの 1 ぀にランクむンしおいたす。 サヌバは、その即時か぀迅速な実行のために、キャッシュ、ゲヌム、収集分析、セッション管理、リヌダヌボヌド、チャット/ビデオ通話、地理空間、ラむドヘむリング、ビデオストリヌミング、およびパブアプリのための優れた遞択肢である。Stack OverflowRedis

Redis むンスタンスを実行するために、AWS は2぀の完党に管理されたサヌビスを提䟛したす。Redis キヌバリュヌデヌタベヌスたたはキヌバリュヌストアは、互換性があり、信頌できる、むンメモリデヌタベヌスサヌビスで、光速のパフォヌマンスを提䟛する AmazonMemoryDB forRedis サヌバヌです。マむクロ秒のレむテンシで、フルマネヌゞドキャッシングサヌビスAmazon ElastiCache forRedis は、プラむマリデヌタベヌスやデヌタストアからのデヌタアクセスをスピヌドアップしたす。さらに、ElastiCache はMemcached をサポヌトしおいたす。これもよく知られたオヌプン゜ヌスのキャッシング゚ンゞンです。

Redis はデヌタベヌスずしお優れおいるのでしょうか

マむクロサヌビスパタヌンをサポヌト
マむクロサヌビスの同期やWebSocketの負荷分散にRedis接続を掻甚。
AppMasterを詊す

Redis キヌバリュヌデヌタベヌスたたはキヌバリュヌストアは、圓初キャッシュデヌタベヌスずしお蚭蚈されたしたが、埌に䞭倮デヌタベヌスぞず倉化したした。 サヌバヌは、珟代のアプリケヌションで䜿甚される䞀般的なプラむマリデヌタベヌスです。 サヌビスのプロバむダヌのほずんどは、 むンスタンスをデヌタキヌパヌずキャッシュメンテナヌずしおサポヌトしおいたすが、メむンデヌタベヌスずしおではありたせん。 サヌバヌを䜿うだけでなく、 のような別のデヌタベヌスも必芁です。そのため、耇雑さが増し、応答時間が短くなり、 むンスタンスを十分に掻甚するこずができなくなりたす。RedisRedisRedisRedisDynamoDBRedis

Redis サヌバは、メガバむト - からテラバむト - たでの様々なデヌタ量を凊理し、保存するこずができるデヌタベヌスです。Redisのメむンデヌタベヌスおよびむンメモリキャッシュずしおの機胜を Enterpriseで1぀のシステムに統合するこずにより、2぀の異なるアプロヌチを実行する際の耇雑さず応答時間から解攟されたす。さらに、 は、耇数のモデルをサポヌトするプラむマリデヌタベヌスずしお䜿甚するこずができ、その頂点に珟代的なアプリや䜎時間間隔のマむクロサヌビスベヌスの構築を構築するこずが可胜です。MBTBRedisRedis

Redis Enterpriseのネむティブ機胜モゞュヌルを䜿甚しお、次のような異なるキャッシュオプションやデヌタベヌスの必芁性を眮き換えるこずができたす。

  • Redis むンスタンス JSON、JSON ドキュメントの保存、およびデヌタの収集ず拡散のためのストリヌム
  • 远加むンデックスにはRediSearch
  • ずの関係の耇雑さRedisGraph
  • RedisTimeSeries アプリケヌションの監芖
  • RedisBloom リヌダヌボヌド、ゲヌム、䞍正怜出甚
  • RedisAI 掚論や即時のAI機胜栌玍甚
  • 䌁業クラスタリング、自動スケヌリング、Active-Active であるGeo-Distribution を掻甚しお、䞊蚘のようなものを掻甚したす。

Redis の速さは

キヌ・バリュヌ型アプリをリリヌス
コヌドを曞かずに、キヌ・バリュヌのアむデアを本番察応のWebモバむルアプリに倉える。
アプリを䜜成

Redis は、かなり高速な評䟡ツヌルで、あるず嬉しいものです。 のむンスタンスの動きの速さを知るために。次に、 、Redisの性胜の倧きさを枬るために掻甚できる、プラットフォヌム経隓のあるデヌタ型が必芁です。幞いなこずに、Redisはそのようなツヌルず、広く䜿われおいるハヌドりェアシステムに関するいく぀かの経隓情報を提䟛しおいたす。RedisRedisRedis

Redis の性胜は、 ベンチマヌクを䜿甚しお評䟡するこずができたす。コマンドラむンでは、特定の コマンドがパむプラむンモヌド、ノヌマルモヌド、およびさたざたな圧力䞋でどの皋床動䜜するかを刀断するこずができたす。RedisRedis

Redis は、䟋倖的によく動䜜したす。キヌバリュヌデヌタベヌスシステムの最倧負荷レベルおよびセットずゲットの時間消費レベルは、通垞サブミリ秒です。パむプラむンを䜿甚するこずにより、 の操䜜の有効性を高めるこずができたす。Redis

Redis むンスタンスを高速化した以䞋の芁因をチ ェックしおみおください。

メモリ

Redis はむンメモリ型のNoSQLデヌタベヌスです。したがっお、 の制玄がありたす。そのため、 は、メモリストレヌゞのデヌタを䜿い切ったずきに、メモリ䞍足を匕き起こすか、デヌタを退避させるか、定矩された退避ポリシヌを採甚しおいたす。RAMRedis

コネクション

クラむアントアプリケヌションがRedis に送信するすべおのアクションは、接続コンテキスト内で発生したす。オペレヌティングシステム、Redis の蚭定、サヌビスプロバむダのプランのいずれであっおも、Redis サヌバヌぞの最倧接続数は垞に制限されおいたす。新しいアプリケヌションのクラむアントや゚グれクティブセッションは、利甚可胜な空きリ゜ヌスが十分にあれば、垞に接続できるようにする必芁がありたす。

キャッシュ

プログラムは、キャッシュのために保存されたコンテンツにアクセスし、その機胜を最倧限に発揮する必芁がありたす。

立ち退き

キャッシュのヒット率がある閟倀を䞋回るず、立ち退きが発動され、Redis からデヌタが削陀され、キャッシュミスに぀ながる可胜性がありたす。

期限切れのオブゞェクト

Redis のメモリが少ないずきに eviction が始たったので、キャッシュオブゞェクトを expire しおいない可胜性がありたす。

Redis はMongoDB よりも良いのでしょうか

Redis vs.MongoDB の議論に応えおみたしょう。すべおの状況に適甚できる解決策はありたせん。したがっお、以䞋に瀺すビゞネスニヌズ、財政的制玄、その他の芁玠を考慮しお遞択する必芁がありたす。Redis vs.MongoDB の比范で䜿われる䞻な基準は以䞋の通りです。

機胜

  • Redis は耐久性、キャッシュ、トラブルフリヌなクラッシュフィックスなどの機胜があり、 はマップリダクションずデヌタ集玄の機胜がありたす。MongoDB
  • MongoDB ではロヌルを䜿ったアカりンティングの制埡が可胜ですが、Redis ではできたせん。

性胜

  • MongoDB ず比范するず、Redis は重いワヌクロヌドの凊理に優れおいたす。Redis はシンプルなストリング、シングルコア、シングルスレッドを䜿甚しおいたす。
  • Redisしたがっお、性胜の点ではMongoDB をわずかに䞊回りたす。CPU の制玄を受けるず、MongoDB も同様に応答が遅くなるこずで有名です。

スケヌラビリティ

  • Redis ず比范するずMongoDB はスケヌラビリティの面で優れおいたすMongoDB はRAM の機胜を物理プラットフォヌム䞊で最適化しおいたすがRedis は RAM の消費量を制限しおいたす
  • Redis には倚くの呚蟺機胜がありたすがスケヌリングはMongoDB の方が簡単です

プラットフォヌム察応

  • むンメモリデヌタ構造甚のサヌバずしおRedis がある メッセヌゞブロヌカヌず連携しキャッシュも可胜であるJavaクラむアントを利甚するこずで、springキャッシュをサポヌトする。
  • プラットフォヌムに䟝存しないNoSQLデヌタベヌスMongoDB アナリティクス甚のBIコネクタ、springデヌタのサポヌト、コマンドラむンを䜿ったむンタラクティブなRedis コマンドのク゚リむンタヌフェヌスを備えおいたす。

デヌタベヌスアヌキテクチャ

  • Redis Server ず Client はどちらも Redis のデヌタベヌスアヌキテクチャの構成芁玠である。デヌタは Serverによっおメモリ䞊に保持されたす。RedisRedis
  • ドキュメントに特化したNoSQLデヌタベヌスは、MongoDB 。バむナリデヌタの持ち蟌みず取り出し、セキュリティや特性デヌタぞのアプロヌチ、分散システムの構築のためのツヌル、GridFS 、およびMongoDB Compassは、すべおNoSQLデヌタベヌス構築の䞀郚分である。

プログラミング蚀語サポヌト

  • C, C#, Objective-C, Crystal, Clojure, Fancy, Haxe, Java, JavaScript (Node.js), Python, Lisp, MatLab, Lua, Elixir, OCaml, Pure Data, Swift, Dart, Pascal, Rebol, Ruby, Scheme, Tcl, Visual Basicなどのプログラミング蚀語が、Redis むンスタンスでサポヌトされおいたす。
  • C, Clojure, Java, C++, Groovy, Scala, Dart, Erlang, Haskell, Perl, Lua, Rust, Powershell, Python, PHP, R, Haskell, Prolog, Swift, SmalltalkMongoDB がサポヌトするプログラミング蚀語のほんの䞀䟋です。

レプリケヌション察応

  • Redis Master-MasterおよびMaster-Slaveレプリケヌションをサポヌトしおいたす。
  • MongoDB Master-Slaveレプリケヌションをサポヌトしおいたす。

セキュリティ

  • Redis コマンドを実装する前に、しっかりずした認蚌プロトコルを遵守しおください。しかし、ナヌザヌにアクセスを蚱可するために、単玔なパスワヌドベヌスの認蚌しか必芁ずしないため、セキュリティが損なわれる可胜性がありたす。
  • セキュリティは、MongoDB が真剣に取り組んでいるこずです。暗号化されたRedis のデヌタ型ず、ナヌザヌを確認するための認蚌手順を䜿甚したす。MongoDB でアクセスやコマンドを指定できるため、ナヌザヌは圹割の責任に基づいおアカりントを割り圓おるこずができ、セキュリティが匷化されたす。

ドキュメントのサポヌト

  • Redis key-valueデヌタベヌスの技術文曞、説明曞、プログラミングサポヌトを埗るこずができたす。
  • MongoDB の技術文曞ず拡匵ハンドブックが入手できたす。

䟡栌

  • RedisのEnterprise Cloudの䟡栌は、Redis のデヌタ型をどれだけ保存する必芁があるかによっお倉化したした。そのラむセンスは、サブスクリプションシステムに基づいおいたす-Redisの無料ベヌシック䟡栌オプション。䞊䜍バヌゞョンの䟡栌は、月額 7ドル からです。
  • MongoDB のベヌシックプランも同様に無料である。商甚ラむセンスを远加する堎合は、月額 57ドル です。

簡単に説明するず

セッションストレヌゞを蚭定
ビゞュアルなビゞネスプロセスでログむンフロヌずセッションストレヌゞのロゞックを䜜成。
今すぐ構築

Redis - key-value デヌタベヌスに぀いお説明した埌、Redis key-value デヌタベヌスで操䜜するすべおの基本的なデヌタ型、Redis key-value デヌタベヌスの管理に䜿甚する暙準コマンドRedis に぀いお説明したす。Redis key-value デヌタベヌスに぀いお比范的十分な知識があり、個人およびビゞネスナヌスでRedis を䜿い始めるこずができるはずです。Redis key-valueデヌタベヌスは、デヌタ構造、サヌバヌストレヌゞ、キャッシュなどの甚途で、その本質的な機胜ず䞀般的なナヌザヌによっお、本栌的か぀䜓系的な最適化に有利に貢献するこずができるず総括しおいたす。Redis のサむトにあるオンラむンドキュメントに埓うず、このプラットフォヌムに関するより倚くの情報を抂説するこずができたす。

同様に、䞀床䜿い始めるず、トランザクション、パむプラむンなどの高床なコンポヌネントを远加しお、さらに探求するこずができたす。しかし、これらの高床な特性は、通垞、Redis key-value デヌタベヌス消費者のコマンドラむンむンタヌフェヌスでは䜿甚されず、より䞀般的に、様々なプログラミング蚀語によるコヌディングで䜜成されたアプリケヌションで䜿甚されたす。

コヌディングで䜜られたアプリだけでなく、 のようなプラットフォヌムを䜿甚しお開発されたアプリにも有益です。 no-code AppMasterAppMaster は no-code アプリ開発 プラットフォヌムで、簡単なむンタヌフェむスでりェブやモバむルアプリケヌションを構築するこずができたす。 drag-and-drop のむンタヌフェむスを䜿甚するこずができたす。

AppMaster には モゞュヌルがありたす。開発者は、マむクロサヌビス間の同期やRedis websocket バランシングが䜿甚されおいるケヌスでは、任意の デヌタベヌスぞのキヌバリュヌ接続を䜿甚するこずができたす。Redis

始めやすい
䜕かを䜜成する 玠晎らしい

無料プランで AppMaster を詊しおみおください。
準備が敎ったら、適切なサブスクリプションを遞択できたす。

始める
Key-Valueデヌタベヌスずは。Redisずは | AppMaster