4

我还没有深入了解 SDL Tridion 在其内部搜索引擎 (SOLR) 中存储数据的内容和方式的详细信息,但我需要构建一个 GUI 扩展,该扩展需要跨出版物对组件/元数据字段执行搜索。

我看不出有任何理由不研究 SOLR,但在我投入时间之前,有没有人知道为什么这是一个坏主意?

提前致谢!

4

3 回答 3

4

一般来说,绕过 API 直接查询 SOLR 是个坏主意。从你的问题来看,我认为没有理由这样做。

您是否需要索引比 Tridion 已索引的数据更多的数据?如果没有,您肯定可以使用 API 进行搜索吗?

如果这样做,您可以考虑为附加数据实现自定义搜索索引处理程序。尽管目前没有很好的文档记录,但创建起来似乎相当简单(实现 ISearchIndexingHandler 并更新您的 CM 和 SOLR 配置)。好处是您的数据也可以使用标准的 Tridion 搜索来搜索。

于 2012-02-20T13:05:23.933 回答
2

这实际上取决于您的搜索要求。如果只是简单的搜索 - 那么它可能没问题,但如果您想进行一些 Tridion 特定的搜索,那么这将非常困难,因为 SDL Tridion 会对 SOLR 结果进行大量后处理。为什么不能只使用 CoreService 并有一个方便的支持搜索界面?

于 2012-02-20T12:41:32.477 回答
0

正如 Peter 所说,与 Tridion 附带的 SOLR 交互确实是个坏主意。Tridion 有一个抽象层来隐藏 SOLR 查询的复杂性。例如 tridion 隐藏搜索关键字的大小写敏感性。

我强烈建议使用 tridion search api 来构建你的界面。Tridion search api 也支持直接执行 solr 查询。但它不推荐。

对于索引附加数据,你可以实现 ISearchIndexingHandler。solr 配置文件(添加新字段)有一些复杂性。

于 2012-04-03T17:51:25.850 回答