Mijn advies is al om te proberen de elasticsearch-jdbc-river te gebruiken om vele redenen.
Een daarvan is dat de elasticsearch-jbdc-river
is meer algemeen voor het geval u besluit RDBMS te veranderen .
Een andere is dat de jbdc-river
wordt nog steeds onderhouden als de andere sinds 2 jaar niet meer is geweest, en Elasticsearch is sindsdien veel geëvolueerd.
De gegevens van MySQL zouden automatisch van MySQL naar het Elasticsearch-cluster moeten worden gestreamd zonder een time-outbeperking, maar het knelpunt is uw JVM-heapgrootte. Ik weet niet zeker hoeveel je nodig hebt om de hoeveelheid gegevens die je hebt te verwerken. Je moet het testen.
Elasticsearch is schemaloos, dus u moet in Elasticsearch beheren . De rivier streamt de gegevens gewoon naar uw cluster. U kunt uw mapping definiëren wanneer u uw index maakt en vervolgens de rivier gebruikt om deze naar het ES-cluster te streamen.
De rivier zal worden vervangen door een andere, schonere manier om deze gegevens te streamen, maar dit is de beste oplossing die je nu hebt.