如何将AEM与ElasticSearch集成?

时间:2016-11-15 15:01:06

标签: elasticsearch cq5 aem

我已经浏览了目前可用于推荐AEM和AEM的所有网站。 ElasticSearch,但无法找到与这两者的集成相关的确切内容。

要求:为发布创建网站搜索功能,该功能将显示与特定关键字相关的所有结果。目前我们正在使用默认的AEM站点搜索功能,这非常慢,因此我们希望将其迁移到ES。关于这两者的整合,可用的文件非常少,因此我们对此感到不安。主要是我们必须在Java中这样做。

4 个答案:

答案 0 :(得分:1)

那是因为你的问题很模糊。您尚未指定您要实现的目标。您是否希望Elastic发布方面的搜索结果由Elastic Search提供,或者您是否希望所有内容(即使在AEM作者中被编入索引?)。有多种模式因此无法提供一般答案。您可以通过多种方式进行整合。

1)在AEM中编写自定义复制代理以将内容推送到ES。

2)创建一个工作流程,只要添加/修改节点,就可以使用启动器触发该工作流程。我建议你不要这样做并考虑选项1,因为这会触发太多的工作流实例,并会影响整体性能。

3)您可以编写抓取工具来抓取您的aem发布&索引ES中的内容。

4)你可以编写在ES(ES术语中的河流)中运行的代码来从AEM&获取内容。索引它。

答案 1 :(得分:1)

以下是使用AEM 6.5-https://github.com/tadijam64/search-engines-comparison

的Apache Solr,Elasticsearch和Apache Lucene的完整实现。

其中详细说明了每个搜索引擎的工作方式以及如何将其与AEM集成-在六个文章here

中逐步进行了说明。

答案 2 :(得分:0)

它是一个旧的回购,但可能会帮助您进行整合.. https://github.com/viveksachdeva/elasticsearch-cq

答案 3 :(得分:0)

我知道,这是一个老问题,但我遇到了同样的问题,想出了一个你可以在github上找到的新实现:

https://github.com/deveth0/elasticsearch-aem

使用非常简单,您必须包含多个捆绑包然后进行配置,使用哪个Elasticsearch实例。 页面激活AEM会触发将数据推送到Elasticsearch的Replication Agent。

有关详细信息,请查看我的blog