PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Sincronizza i dati postgreSql con ElasticSearch

Se è necessario essere informati anche sui DELETE ed eliminare il rispettivo record in Elasticsearch, è vero che l'input jdbc di Logstash non sarà di aiuto. Dovresti usare una soluzione che aggira il binlog come suggerito qui

Tuttavia, se desideri comunque utilizzare l'input jdbc di Logstash, ciò che puoi fare è semplicemente eliminare i record in PostgreSQL, ovvero creare una nuova colonna BOOLEAN per contrassegnare i tuoi record come deleted . Lo stesso flag esisterebbe quindi in Elasticsearch e puoi escluderli dalle tue ricerche con un semplice term query sul deleted campo.

Ogni volta che devi eseguire un po' di pulizia, puoi eliminare tutti i record contrassegnati come deleted sia in PostgreSQL che in Elasticsearch.