Expand my Community achievements bar.

Dive into Adobe Summit 2024! Explore curated list of AEM sessions & labs, register, connect with experts, ask questions, engage, and share insights. Don't miss the excitement.
SOLVED

Solr Integration - custom implementation vs ootb oak solr Index

Avatar

Level 5

Hello, 

What would be the pros/cons of a custom solr integration implementation vs using solr oak index?

By custom implementation, I mean using the solrJ APIs to index and search for content or doing something similar to what's outlined in this link:

https://helpx.adobe.com/experience-manager/using/aem_solr.html

By oak index, I mean what's given in this link:

http://jackrabbit.apache.org/oak/docs/query/solr.html

One con of using the oak index seems to be that the developer has no control over whether the solr or lucene index will be used since it seems to be based on cost calculation done by jackrabbit. But this seems avoidable by having only solr indexes in the repo.

Any one have any other thoughts on this?

Thanks

1 Accepted Solution

Avatar

Correct answer by
Level 9

jakej40603950 wrote...

One con of using the oak index seems to be that the developer has no control over whether the solr or lucene index will be used since it seems to be based on cost calculation done by jackrabbit. But this seems avoidable by having only solr indexes in the repo.

That is default behaviour, In your custom component use native query so that you can specify to pick solr index only.

View solution in original post

4 Replies

Avatar

Administrator

Please have a look at this fourm post:- http://help-forums.adobe.com/content/adobeforums/en/experience-manager-forum/adobe-experience-manage...

// It talks about internal search vs external search +  Lucene VS Solr Vs 3rd party.

Comment for Opkar :- 

If you wanted to do Federated search, then you should do that with an external search engine, you don't want to be pulling content from other sites into AEM to do federated search. If you wanted to do semantic or natural language search, then you would need an external search engine(there are some other features not available with OOTB search). 

External search engines are good if all the content is public, as enabling ACL's can become complicated and take time, if you use the OAKSOLR integration, then this does apply ACL's to solr content.

With an external search engine, you obviously have the latency of making a call to the external search engine and pulling the results, depending on the network latency, this may or may not be an issue for you.

 

I hope this would help you.

~kautuk



Kautuk Sahni

Avatar

Correct answer by
Level 9

jakej40603950 wrote...

One con of using the oak index seems to be that the developer has no control over whether the solr or lucene index will be used since it seems to be based on cost calculation done by jackrabbit. But this seems avoidable by having only solr indexes in the repo.

That is default behaviour, In your custom component use native query so that you can specify to pick solr index only.

Avatar

Level 5

MC Stuff wrote...

jakej40603950 wrote...

One con of using the oak index seems to be that the developer has no control over whether the solr or lucene index will be used since it seems to be based on cost calculation done by jackrabbit. But this seems avoidable by having only solr indexes in the repo.

That is default behaviour, In your custom component use native query so that you can specify to pick solr index only.

 

 

Thanks. By native query - you mean jcr-sql or xpath? If you could elaborate on how to specify which index to pick that'll be great!