Ho un database mysql con coppie di tabelle, voglio migrare i dati mysql in ElasticSearch. È facile migrare l'intero database in ES tramite un processo batch. Ma come dovrei aggiornare ES da mysql realtime. Ad esempio, se ci fosse un'operazione di aggiornamento in mysql, dovrei fare la stessa operazione in ES. Ho ricercato mysql binLog che può riflettere qualsiasi modifica da mysql. Ma devo analizzare la sintassi binLog con ES, penso che sia davvero doloroso. Grazie! (lo stesso caso con Solr)come migrare i dati mysql in ElasticSearch in tempo reale
risposta
c'è un progetto esistente che prende il tuo binlog, la trasforma e le navi a elasticsearch, è possibile controllare fuori a: https://github.com/siddontang/go-mysql-elasticsearch
Un altro potrebbe essere questo: https://github.com/noplay/python-mysql-replication.
Nota, tuttavia, quale che si sceglie, è una buona pratica pre-creare il proprio indice e mappature prima di indicizzare il proprio file. Questo ti dà più controllo sui tuoi dati.
La migliore soluzione open source sarebbe this. È possibile eseguire ciò come una riga di comando e fornire anche la logica incrementale nel comando.
GO through this sessione per avere un'idea completa.
Grazie! ma non è quello che sto cercando. Il documento mostra solo come ottenere dati incrementali, ma ho bisogno di monitorare i dati cancellati e i dati aggiornati. – Jack
- 1. Monitoraggio MySQL in tempo reale
- 2. Dati in tempo reale con D3
- 3. Tempo reale grafico dei dati
- 4. MongoDb Streaming dei dati inseriti in tempo reale (o quasi in tempo reale)
- 5. Chiamata sleep in tempo reale() in tempo reale?
- 6. Come ottenere foto reali da instagram dati in tempo reale?
- 7. Come si aggiornano i modelli in giallo (in tempo reale)?
- 8. Prezzo in tempo reale R
- 9. Invia dati in tempo reale da Java all'applicazione Android
- 10. Visualizzazione di dati in tempo reale sulla pagina web
- 11. Come funzionano i sistemi operativi in tempo reale?
- 12. Mappatura WPF/visualizzazione di dati in tempo reale
- 13. Visualizzazione dati in tempo reale ad alte prestazioni
- 14. Come memorizzare i dati in elasticsearch _source ma non indicizzarli?
- 15. tempo reale pianificazione in Linux
- 16. streaming video in tempo reale in C#
- 17. Instagram Aggiornamenti in tempo reale tag - ottenere dati vuoti, perché?
- 18. dove arriva la parte superiore dei dati in tempo reale
- 19. Come partizionare correttamente una tabella in tempo reale in kdb?
- 20. Come eseguire modifiche simultanee in tempo reale?
- 21. pyserial/python e acquisizione dati in tempo reale
- 22. Streaming audio in tempo reale
- 23. Lucene indicizzazione in tempo reale?
- 24. Come funzionano gli aggiornamenti in tempo reale?
- 25. Come migrare il database SQL Server in MySQL?
- 26. Come implementare i dati temporali in MySQL
- 27. Streaming di dati da Kafka a Cassandra in tempo reale
- 28. Grafico a linee NVD3 con dati in tempo reale
- 29. Grafico in tempo reale in Java
- 30. Come riordinare i dati dal database in tempo reale di Firebase
Grazie mille! go-mysql-es è fantastico! Solo una domanda: hai idea di come funziona l'operazione Upsert? Ad esempio, ho due tabelle t1 (uid, name), t2 (uid, age) che hanno lo stesso id e le due tabelle corrispondono ad un indice. Ma quando una tabella veniva aggiornata, sovrascriveva (rimuoveva) il record esistente in ES. In realtà spero che questo aggiornamento non venga sovrascritto. – Jack