Ho ottenuto milioni di elementi ordinati da un punteggio precompilato. Ogni elemento ha molti attributi booleani. Diciamo che ci sono circa diecimila possibili attributi in totale, ogni oggetto ne ha decine.Soluzione di datastore per la ricerca di tag
Mi piacerebbe poter richiedere in tempo reale (pochi millisecondi) i primi n elementi dati ~ qualsiasi combinazione di attributi.
Quale soluzione consiglieresti? Sto cercando qualcosa di estremamente scalabile.
-
- Al momento stiamo esaminando MongoDB e array di tipo indice, si vede alcuna limitazione?
- SolR è una possibile soluzione, ma non abbiamo bisogno di funzionalità di ricerca testuale.
quando dici "ordinato per punteggio" vuoi dire che questo è già precompilato? In tal caso, SOLR potrebbe non fornire alcun vantaggio. In caso contrario, SOLR fornisce un ranking di pertinenza molto potente e personalizzabile. – nickdos
Milioni di elementi non rappresentano un problema per SOLR, ma 10.000 possibili attributi potrebbero essere un problema. SOLR supporta i campi dinamici in modo da non dover definire tutti gli attributi, ma la memoria potrebbe esplodere con uno schema ampio/spartano? Altri potrebbero essere in grado di consigliarlo meglio. – nickdos
@nickdos si il punteggio è precalcolato. E penso che tu abbia ragione la parte difficile è il gran numero di attributi. Non so come gestirlo mongodb. Crea un indice per attributi? È persino possibile avere tanti indici? Stiamo andando a testare comunque, ma mi piacerebbe essere sicuri di non perdere la strategia corretta. – log0