Utilizziamo ES come db di reporting e quando vengono scritti nuovi record in SQL, eseguiamo le seguenti azioni per inserirli in ES:
- Scrivi la chiave primaria in una coda (usiamo rabbitMQ)
- Rabbit preleva la chiave primaria (quando ha tempo) e interroga il DB di relazione per ottenere le informazioni di cui ha bisogno, quindi scrive i dati in ES
Questo processo funziona alla grande perché gestisce sia i nuovi dati che i vecchi dati. Per i vecchi dati, scrivi un rapido script per scrivere 300 milioni di chiavi primarie in Rabbit e il gioco è fatto!