EPI Find on Database

Vote:
 

Hi,

Queries:

I have used EPI find on Article search and its working very fine.

Now there is one exiting project where we are thinking  to replace Solr search with EPI Find for Big Jobs and Job seaker DataBase.

As we haven't done any database with EPI find implimentation before.

  1. It will be a good desicion?
  2. Any sample app aviailble to check such kind of implimentaion.

Please suggest.

Thanks

Abhishek

#202821
Apr 02, 2019 6:42
Vote:
 

Hi Abhishek

According to the Find documentation, indexing objects from outside of Episerver is supported. But you need to do the indexing yourself (e.g. on an event or in a scheduled job), loading the entities from your database and batch index them through the Find API. There are small code samples on that documentation page.

Working with Find is easier than Solr and you will end up having a single consolidated search solution. I cannot see why this would not be a good decision.

#202822
Apr 02, 2019 7:42
Vote:
 

Custom indexing objects is pretty easy just make sure to add an attribute ID  and SearchTitle to any custom indexed models. I've covered those parts at the bottom of my recent Find blog post and a few other things to consider. https://world.episerver.com/blogs/scott-reed/dates/2019/3/episerver-find---performance-reloading-custom-data-and-getcontent-vs-getcontentresult/

#202849
Apr 02, 2019 13:28
Vote:
 

Allan Thraen created an Episerver Find code challenge some years ago.

https://world.episerver.com/blogs/Allan-Thran/Dates/2015/3/want-to-try-out-episerver-find-here-is-an-easy-way-and-a-fun-challenge/

Have a look at Patrick's solution.

#202877
Apr 03, 2019 9:02
Vote:
 

I've worked with both SOLR and Episerver Find to index custom objects. It's definitely easier using Find than SOLR. 

IClient client = //A client retrieved from config or injected into the method
BlogPost blogPost = //An instance of an arbitrary class

client.Index(blogPost)

You can then search for it and get a strongly typed result

var searchResult = client.Search<BlogPost>()
                        .For("Beethoven")
                        .GetResult();

You can read more about it here

https://world.episerver.com/documentation/developer-guides/find/NET-Client-API/Indexing/

Worth noting that Episerver Find is built upon Elastic search which is a generic search solution. So Episerver Find has plenty of power in this area if needed. But you will need to configure the indexing and search a little by yourself unlike for Episerver content that is setup to work automagically.

#202890
Apr 03, 2019 10:16
Vote:
 

It has a couple of year on it but this is a great example of how to use Find with custom objects


The indexing part you can find info on with links in the other comments so this is for the query part

https://github.com/AThraen/HotelsSample/

/Henrik

#202891
Apr 03, 2019 10:19
This topic was created over six months ago and has been resolved. If you have a similar question, please create a new topic and refer to this one.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.