如何使用JPA作为弹性使用弹簧数据的备份?

时间:2018-04-19 21:38:06

标签: spring elasticsearch spring-data spring-data-jpa spring-data-elasticsearch

如果我必须在弹性搜索上设计一个GET API,那么如果Elastic中还没有数据,那么它应该查询后备DB并查看该记录是否存在。

我们需要考虑这个问题的主要原因是因为DB和Elastic之间存在几秒钟的延迟,并且GET调用将被多次调用以使其直接命中DB。

有什么想法吗?我现在正在使用spring-data-elasticsearch。

1 个答案:

答案 0 :(得分:0)

如果您使用Elastic进行搜索,请将其保留为仅弹性。我建议如果数据不存在则重新索引(从Elastic中删除特定数据,如果存在,然后再从数据库(Jpa)中保存)。你的弹性需要与Jpa一致。无论如何,你仍然想继续它,然后创建一个if条件为null,如果它来了,然后搜索JPA存储库。