Wenn Sie auch bei DELETEs benachrichtigt werden müssen und den entsprechenden Datensatz in Elasticsearch löschen, hilft die Logstash-jdbc-Eingabe zwar nicht weiter. Sie müssten eine Lösung verwenden, die das Binlog umgeht, wie hier vorgeschlagen
Wenn Sie jedoch weiterhin die jdbc-Eingabe von Logstash verwenden möchten, können Sie Datensätze in PostgreSQL einfach vorläufig löschen, d. h. eine neue BOOLEAN-Spalte erstellen, um Ihre Datensätze als deleted
zu markieren . Das gleiche Flag würde dann in Elasticsearch existieren und Sie können sie mit einem einfachen term
von Ihren Suchen ausschließen Abfrage auf deleted
Feld.
Wann immer Sie eine Bereinigung durchführen müssen, können Sie alle mit deleted
gekennzeichneten Datensätze löschen sowohl in PostgreSQL als auch in Elasticsearch.