Supponiamo che io scriva un sito di incontri, simile a okcupid. ci sono profili, e ho bisogno di calcolare la tabella "match" (N ^ 2) - dato ogni 2 profili che cosa è la corrispondenza tra loro?
Stavo pensando che questo potrebbe essere fatto creando uno spout per ascoltare su una coda "profili nuovi / aggiornati" (diciamo kafka, non importa), ma allora come abbattere la corrispondenza per raggiungere qualsiasi grado di parallelismo?
Se ho un singolo bullone che confronta il profilo con l'intero DB che non scala.
Se creo un altro beccuccio, per "tutti i profili" verrà eseguito in un ciclo continuo e non si fermerà mai (?)
Ovviamente il presupposto è che il "tasso di abbandono" (tasso di profili nuovi / aggiornati) è meno di un problema rispetto alla pura dimensione del database.
Qualche suggerimento su come progettare la topologia sarebbe molto gradito.