Java基础弹性搜索引擎

时间:2018-03-02 04:19:52

标签: elasticsearch elastic-stack

我有一个用例,我希望在数十亿条记录中进行搜索。我想在我的UI上显示该数据。我知道我可以用分页来做,但问题是数据很大,我们不想创建任何性能问题。

我计划将Elasticsearch与Java API一起使用,但不确定如何设计。如果以下解决方案可行,请告诉我

  1. 从Oracle数据库中读取数据,并使用Java API提供给Elasticsearch引擎。我不想手动启动弹性引擎。有什么方法可以在我的项目中嵌入该服务器吗?

  2. 用Java代码编写Elasticsearch客户端并发出搜索请求。因此,搜索将在Elastic引擎端而不是实际数据库中进行。

  3. 不确定如何实现这一点。有人能指导我吗?我做了一些研究,发现客户端代码使搜索请求不是实际的,这将使数据库命中并存储在Java中的Elasticsearch引擎中。

1 个答案:

答案 0 :(得分:0)

不幸的是,对于Elasticsearch,您必须像其他任何DBMS一样将服务器作为一个单独的进程运行并维护它(我怀疑具有十亿个对象的集合可以很好地适应一台机器)。此外,High level Http client是从Java访问Elasticsearch的推荐方法。

但是,对于Java嵌入式搜索功能,您可以考虑直接使用Lucene