Charger des données de mysql vers Elasticsearch en presque temps réel

Salut à tous,
j'aimerais recupérer les données de mysql et les envoyer dans elasticsearch.
Je dois mettre à jour les donnée d'elasticsearch a chaque nouvelle entrée en base de donnée.
Est-ce que je peux détecter des mises à jour sur l'ensemble de la base de donnée ou je dois écouter table après table?
J'utilise elasticsearch 7.10.1; kibana 7.10.1; Logstash 7.10.2
merci

Bonjour,
Déjà tu peux récupérer les données périodiquement.
Ensuite, je vois qu'il y'a une option "tracking_column " qui pourrait répondre à ton besoin.
lien : (https://www.elastic.co/guide/en/logstash/current/plugins-inputs-jdbc.html)https://www.elastic.co/guide/en/logstash/current/plugins-inputs-jdbc.html

1 Like

La plupart de mes idées à ce sujet sont ici

Souvent, je recommande de modifier la couche applicative si c'est possible et d'envoyer les documents dans la même "transaction" que celle utilisée pour mettre à jour la base de données.

J'ai abordé ce sujet ici :

1 Like

Merci j'ai utilisé cette méthode. Elle marche bien :slight_smile:
Seulement pour une table :(.
J'ai regardé du coté de kafka et je vais pouvoir utiliser les topics pour récupérer toutes les tables de la BD. Ensuite je compte utiliser spark pour les envoyer dans elasticsearch :))

Le soucis c'est que je n'ai pas accès au code de l'application.
Je compte donc récupérer les données déjà rendu disponible par l'application en BD.
Ensuite je vais utiliser kafka pour les récupérer et spark pour les envoyer a elasticsearch.
C'est un peu long mais...
Merci pour votre réponse