Maison > base de données > Redis > La différence entre elasticsearch et redis

La différence entre elasticsearch et redis

(*-*)浩
Libérer: 2022-05-13 11:04:27
original
10903 Les gens l'ont consulté

La différence entre elasticsearch et redis

Elasticsearch (ES)

Comparé à MongoDB et Redis, ES, sorti un an plus tard, est peut-être moins bien -connu Mais la réputation d'ES dans le domaine des moteurs de recherche est définitivement retentissante.

Recommandation de cours → : "Elasticsearch Full Text Search Practical Combat" (Vidéo pratique)

Extrait du cours " Solution de concurrence de données de niveau dix millions (théorique + pratique)》

Par rapport à d'autres produits de base de données haut de gamme, ES a une expérience beaucoup plus ancienne.

Le créateur d'ES, Shay Banon, était autrefois un programmeur au chômage. Lorsqu'il n'avait rien à faire, il a créé ES pour faciliter la recherche de recettes de sa femme (bien sûr, cela ne s'appelait pas ES à l'époque). . De manière inattendue, grâce à une intervention involontaire, la base de données des moteurs de recherche les plus populaires d'aujourd'hui a été créée. Il s'avère que les filles sont la plus grande motivation des programmeurs !

ES a également créé sa propre société Elastic et a reçu des centaines de millions de dollars de financement. Shay Banon, le programmeur perdant de l'époque, a déjà contre-attaqué pour devenir PDG et a atteint le sommet de sa vie. Programmeurs, après avoir lu cette histoire, avez-vous déjà commencé à imaginer le jour où vous deviendrez PDG et épouserez Bai Fumei ?

La fonctionnalité d'ES, comme son nom l'indique, est la recherche. À proprement parler, ES n’est pas une base de données, mais un moteur de recherche, et tous les aspects d’ES sont conçus autour de la recherche.

ES prend en charge la recherche en texte intégral. Voici une brève explication de ce qu'est la recherche en texte intégral : Pour des données telles que "Je travaille pour une société Internet à Pékin", si vous recherchez "Pékin". ", "Internet", " Si des mots clés tels que "travail" peuvent atteindre ces données, il s'agit d'une recherche en texte intégral. Baidu et Google que vous utilisez quotidiennement sont des recherches en texte intégral.

Il convient de mentionner que la recherche en texte intégral d'ES prend également en charge le chinois (il existe à lui seul de nombreux segmenteurs de mots chinois), ce qui peut certainement répondre aux besoins de recherche en texte intégral de la plupart des Chinois.

En plus de la recherche, ES indexera automatiquement tous les champs pour que vous puissiez réaliser des requêtes d'agrégation complexes hautes performances. Par conséquent, tant que les données sont stockées dans ES, quelle que soit la complexité de la requête d'agrégation. peut obtenir de bonnes performances et vous n'avez plus à vous soucier de la façon de créer divers index complexes.

Redis

Redis est actuellement la base de données clé-valeur la plus populaire. Il a été publié en 2009 en même temps que MongoDB, et c'est également un chef-d'œuvre de base de données au début de l'ère du Big Data.

La plus grande fonctionnalité de Redis est bien sûr la simplicité et les hautes performances apportées par le stockage clé-valeur. (Apprentissage recommandé : Tutoriel vidéo Redis)

Le stockage dit clé-valeur signifie que chaque enregistrement ne contient qu'une clé utilisée pour interroger les données et la valeur correspondante pour stocker les données. comme les numéros de maison et les résidents dans la vie réelle, il n'y a pas de concepts complexes tels que les tables et les champs nécessaires dans les bases de données conventionnelles. Toutes les requêtes reposent uniquement sur des valeurs clés.

Par conséquent, la base de données clé-valeur peut être considérée comme la structure de données la plus simple de la base de données. Elle bénéficie également de cette structure simple, et Redis chargera toutes les données en mémoire, Redis peut Les performances de lecture et d'écriture. est bien supérieur à celui des bases de données classiques telles que MongoDB.

Bien sûr, la fonction de Redis n'est pas aussi simple que le stockage clé-valeur. Par rapport à son prédécesseur clé-valeur Memcached, Redis prend également en charge la persistance des données, les listes, les ensembles et d'autres structures de données, maître-esclave. la réplication et la sauvegarde ainsi qu'une série de fonctions, Redis peut donc certainement être considéré comme le modèle le plus complet et le plus simple à utiliser parmi les bases de données clé-valeur.

Le stockage clé-valeur de Redis apporte des avantages en termes de performances, mais il apporte également de nombreuses limitations aux requêtes complexes. Étant donné que des fonctionnalités importantes telles que les tables de données et les champs sont éliminées et que toutes les requêtes reposent sur des clés, Redis ne peut pas fournir de fonctions de requête complexes telles que les requêtes multi-colonnes et les requêtes de section dont disposent les bases de données conventionnelles. Dans le même temps, étant donné que Redis doit stocker des données en mémoire, cela limite également considérablement la quantité de données que Redis peut stocker, ce qui détermine également que Redis est difficile à utiliser dans des scénarios d'application avec de grandes échelles de données.

Différence

Si vous avez des exigences extrêmement élevées en matière de lecture et d'écriture de données et que vos données ne sont pas à grande échelle et ne nécessitent pas de temps -stockage à terme, choisissez redis ;

Si vous avez besoin de créer un moteur de recherche ou si vous souhaitez créer une plate-forme de visualisation de données haut de gamme et que vos données ont une certaine valeur analytique ou si votre patron est une personne riche, choisissez ElasticSearch;

Pour plus d'articles techniques liés à Redis, veuillez visiter la colonne Tutoriel d'introduction sur l'utilisation de la base de données Redis pour apprendre !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal