Perché la ricerca elastica è popolare? [chiuso]

1

La ricerca elastica riguarda fondamentalmente l'indicizzazione dei dati.

Nel mondo del database,

È possibile creare più indici su una raccolta MongoDB

La raccolta in MongoDB può essere senza schema .

In MongoDB, la codifica BSON della sintassi JSON viene utilizzata per comunicare le query a MongoDB

In Ricerca elastica , l'indicizzazione viene eseguita su tali documenti senza schema con la sintassi JSON.

1) Non ho potuto vedere la differenza tra,

  • indicizzazione di una raccolta MongoDB

    Vs

  • indicizzazione in ricerca elastica

2) Mi piacerebbe capire il valore aggiunto dell'indicizzazione in Ricerca elastica sull'indicizzazione di una raccolta MongoDB .

3) Perché dovrei usare Ricerca elastica , se indicizzo già una raccolta MongoDB?

Domanda:

Perché la ricerca elastica è così popolare?

    
posta user1787812 20.08.2017 - 23:43
fonte

1 risposta

7

MongoDB è un database . La ricerca elastica è un motore di ricerca . Poiché i loro obiettivi sono diversi, hanno priorità diverse. MongoDB è focalizzato sull'archiviazione dei dati in modo coerente con buone prestazioni e per supportare diversi modelli di accesso. La ricerca elastica si concentra sulla creazione di indici a bassa latenza per la ricerca specifica del testo. MongoDB ha una ricerca full-text (la maggior parte dei database fa), ma è una funzionalità, non l'obiettivo principale del database, quindi potrebbe non avere tante opzioni e potrebbe non essere performante come ElasticSearch.

I would like to understand the value-add of indexing in Elastic search over indexing of a MongoDB collection.

In particolare, dai un'occhiata alla documentazione sull'indice di testo di MongoDB . Supporta solo un tipo limitato di query e opzioni di indice. ElasticSearch supporta molte strategie di tokenizzazione , filtri token, filtri di caratteri, corrispondenza fuzzy , sinonimi e altro.

Why elastic search is so popular?

La maggior parte delle tue domande sta confrontando MongoDB ed ElasticSearch, ma non tutti stanno utilizzando MongoDB. Se stai utilizzando un RDBMS (ad esempio PostgreSQL), è molto comodo raccogliere gli attributi di ricerca e incollarli in un motore di ricerca come ElasticSearch. In questo caso non ha senso usare MongoDB perché è già in uso un RDBMS. Non abbiamo bisogno di un altro database, abbiamo bisogno di un motore di ricerca, ed è qui che risplende ElasticSearch. Se stai già utilizzando MongoDB, puoi comunque scegliere di utilizzare un motore di ricerca dedicato perché è probabilmente più veloce di MongoDB, mette meno carico sul tuo database OLTP e ha più funzioni di ricerca.

    
risposta data 21.08.2017 - 00:00
fonte

Leggi altre domande sui tag