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
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 :
Merci j'ai utilisé cette méthode. Elle marche bien
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
This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.