JAVA Spring(JPA)中的PostgreSQL + Elasticsearch同步

ima*_*man 4 postgresql spring jpa elasticsearch spring-data

我们使用JAVA Spring(JPA),并在应用程序中编写,修改和删除PostgreSQL中的数据。

如何在PostgreSQL和Elasticsearch之间同步数据?因此,它们将具有相同的数据。

小智 5

我假设您使用PosgreSQL作为主要存储来存储数据,而使用Elasticsearch作为辅​​助存储来索引PosgreSQL中的数据以进行搜索。

我建议Logstash是最好的选择。您将创建一个将PosgreSQL与elasticsearch连接的配置文件。使用JDBC输入插件和elasticsearch输出插件,并使用该配置文件运行Logstash。每个文档将从此处同步。

您还有其他选择:

批处理同步:编写一个应用程序/脚本(perl / python)以将数据从PosgreSQL中提取到索引到Elasticsearch中。您可以安排此作业在您希望的特定时间执行。

实时同步:在将记录成功插入/更新到PostgreSQL之后,您立即使用相同的API发送一个请求,以将该记录编入索引/更新到Elasticsearch。