Geekzone: technology news, blogs, forums
Guest
Welcome Guest.
You haven't logged in yet. If you don't have an account you can register now.


darylblake

1172 posts

Uber Geek
+1 received by user: 410

Trusted

#195361 17-Apr-2016 19:23
Send private message

I am planning to search large(ish) data sets and need to get results back quickly (a few ms). I have an application I am working on which uses a relational database, mainly for integrity of the information, so I am not planning to change this engine.

 

However I will need to factor in stuff like the popularity of the result and relevance. I would rather not lather my queries results with code and would much rather pick a good tool to do this searching. e.g. Im talking about typing a single character like 's' for example, I would want to get an autocomplete for the most popular items that start with 's' and so on. I see NoSQL can provide this information really really quickly. I don't mind keeping a score of the most popular results with my own code if that information is needed, but if there are engines that do this already then their algorithms will probably be better refined.

In the past I have been able to use google I am looking at elastic search and other no-sql products. Has anyone ever done something like this or has used a product that has done it quite well? I am not gonna jump in and use it off the bat, but I might set up a copy or a trial and see if its useful or not.


Create new topic
marpada
487 posts

Ultimate Geek
+1 received by user: 182


  #1534547 17-Apr-2016 19:45
Send private message

ElasticSearch and Solr are both good options.  Both are based on Lucene so I'd expect them to be quite similar in terms of search features.

 

http://solr-vs-elasticsearch.com/

 

Also you may want to take a deeper look at the full text search features your current relational database engine, most can do a decent job for simple use cases, provided you create proper indexes.

 

 

 

 




frankv
5705 posts

Uber Geek
+1 received by user: 3666

Lifetime subscriber

  #1534666 18-Apr-2016 07:09
Send private message

I don't know about NoSQL, but I think that in a SQL database this would be straightforward by indexing the table on a "popularity" field.

 

 


Create new topic








Geekzone Live »

Try automatic live updates from Geekzone directly in your browser, without refreshing the page, with Geekzone Live now.



Are you subscribed to our RSS feed? You can download the latest headlines and summaries from our stories directly to your computer or smartphone by using a feed reader.