ホームページ > データベース > Redis > elasticsearch と redis の違い

elasticsearch と redis の違い

(*-*)浩
リリース: 2022-05-13 11:04:27
オリジナル
10888 人が閲覧しました

elasticsearch と redis の違い

Elasticsearch (ES)

MongoDB や Redis と比較すると、1 年後にリリースされた ES は性能が劣る可能性がありますしかし、検索エンジン分野における ES の評判は間違いなく高く評価されています。

おすすめコース→: 「Elasticsearch 全文検索実戦」 (実践動画)

コースより 1,000 万レベルのデータ同時実行ソリューション (理論と実践)》

他のハイエンド データベース製品と比較すると、ES ははるかに古い歴史を持っています。

ES の創始者であるシェイ・バノン氏は、かつては失業中のプログラマーで、何もすることがなかったときに、妻のレシピ検索を容易にするために ES を作成しました (もちろん、当時は ES とは呼ばれていませんでした)。 。予期せぬ介入により、今日最も人気のある検索エンジンのデータベースが作成されました。案の定、プログラマーにとって女性は働く最大のモチベーションです。

ESも独自のElastic会社を設立し、数億ドルの資金調達を受けており、当時負け組プログラマーだったシェイ・バノン氏はすでに反撃してCEOとなり、人生の頂点に達しています。プログラマーの皆さん、この話を読んで、自分がCEOになって白富美と結婚する日をすでに想像し始めていますか?

ESの特徴はその名の通り検索です。厳密に言えば、ES はデータベースではなく検索エンジンであり、ES のすべての側面は検索を中心に設計されています。

ES は全文検索をサポートしています。全文検索とは何かについて簡単に説明します。「私は北京のインターネット会社で働いています」などのデータの場合、「北京」を検索すると、 "、"インターネット"、" 「仕事」などのキーワードでこのデータがヒットすれば、これが全文検索です。皆さんが日常的に使っているBaiduやGoogleも全文検索です。

ES の全文検索は中国語も適切にサポートしており (中国語の単語セグメンターだけでも多数あります)、中国のほとんどの人々の全文検索のニーズを確実に満たすことができることは言及する価値があります。

検索に加えて、ES はすべてのフィールドに自動的にインデックスを付けて、高パフォーマンスの複雑な集計クエリを実現します。したがって、データが ES に保存されている限り、集計クエリがどれほど複雑であっても、優れたパフォーマンスを得ることができ、さまざまな複雑なインデックスの構築方法について心配する必要がなくなります。

Redis

Redis は、現在最も人気のあるキー/値データベースです。 これは、MongoDB とともに 2009 年にリリースされ、ビッグデータ時代初期のデータベースの傑作でもあります。

Redis の最大の特徴は、言うまでもなく、キーバリュー ストレージによってもたらされるシンプルさと高いパフォーマンスです。 (推奨学習: Redis ビデオ チュートリアル )

いわゆるキー/値ストレージとは、各レコードには、データのクエリに使用されるキーと、データを保存するための対応する値のみが含まれていることを意味します。実生活における家番号や居住者のような、従来のデータベースに必要なテーブルやフィールドなどの複雑な概念はなく、すべてのクエリはキー値のみに依存します。

したがって、キーと値のデータベースは、データベース内で最も単純なデータ構造であると言えます。この単純な構造からも利点が得られます。さらに、Redis はすべてのデータをメモリにロードします。Redis は、読み取りと読み取りを行うことができます。書き込みパフォーマンスは、MongoDB などの従来のデータベースよりもはるかに優れています。

もちろん、Redis の機能はキーと値のストレージのように単純なだけではありません。キーと値の前身である Memcached と比較して、Redis はデータの永続化、リスト、セット、その他のデータ構造、マスター/スレーブもサポートしています。レプリケーションとバックアップと一連の機能を備えているため、Redis はキーバリュー データベースの中で最も包括的で使いやすいモデルであると言えます。

Redis のキー/値ストレージはパフォーマンス上の利点をもたらしますが、複雑なクエリに多くの制限ももたらします。データテーブルやフィールドなどの重要な機能が削除され、すべてのクエリがキーに依存するため、Redis は従来のデータベースが備えていた複数列クエリやセクションクエリなどの複雑なクエリ機能を提供できません。同時に、Redis はデータをメモリに保存する必要があるため、Redis が保存できるデータ量も大幅に制限され、データ規模が大きいアプリケーション シナリオでは Redis を使用することが困難になります。

違い

データの読み取りと書き込みに非常に高い要件があり、データのサイズが大きくなく、長時間を必要としない場合-term storage、redis を選択します;

検索エンジンを構築する必要がある場合、またはハイエンドのデータ視覚化プラットフォームを構築したい場合で、データに特定の分析価値がある場合、または上司が金持ちである場合は、redis を選択してください。 ElasticSearch;

Redis 関連の技術記事の詳細については、Redis データベース使用法チュートリアル 列にアクセスして学習してください。

以上がelasticsearch と redis の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート