+8
Completed

Prefix wildcard searches

Petri Helin 6 years ago in Archived • updated by petra.tant 2 years ago 4

In DMP we have transferred about 30 customers from our old DAM system to our new Adam based solution. In our old software we had capability to search so that wildcard is in the front of query like:

*example

Some of our biggest customers have used this feature to search for EAN codes (which are consist of company part and product part). These codes are not in one particular field but scattered around metadata. So we can’t make rules to split these fields to several metadata fields to facilitate searching of product codes from EAN codes. Customers have used search criteria like *123456 where the end part is the product code.  We have now hard time explaining this to our customers that this is a technology limitation.

I know that MS FTS engine does not support these kinds of searches and this is expensive if you think about performance. In our previous system this was implemented with SQL queries with LIKE ‘%something%’. What I would like to see at least is a special search, which would implement this so that you can combine classification criteria and permissions if general implementation is not possible.

Thanks,

Petri  Helin

 

 

UX search

Hi Petri,

While MS SQL Full Text is unable to do this for you, a conventional SQL LIKE clause '%something%' will do the trick. However, as you probably already know, this is prohibited in Adam due to performance reasons. If you are using a custom studio you could link your search box to query self generated lucene indexes that you have populated yourself with Adam Data using the API. Lucene.Net is able to handle this for you. It has always some performance drawback, but depending on your index size Lucene can do a very good job, it is very performant (way better then SQL Full Text )

You can also choose to integrate with Apache Solr, wich is a web application (java war) on top op lucene, offering way more possibilities. It does not have an official .Net implementation, but open source projects exist:

https://github.com/mausch/SolrNet/blob/master/Documentation/README.md

Documentation on Solr and suffixing, prefixing:

http://blog.florian-hopf.de/2014/03/prefix-and-suffix-matches-in-solr.html

Official Lucene.net project:

https://lucenenet.apache.org/

 

It will not be done in one day, but there are solutions out there.

Filip.

 

 

 

 

 

Hi everyone,

For ADAM 5.5 we would like to add a configurable partial search. So if you have a field or class which identifies your customer, you should be able to enable partial searches on these items. Then searching for 'ABC' will return all customers who have in there name 'ABC' somewhere.

Implementing a leading wildcard is impactful on performance, therefore systems are very reluctant to do this. By doing the partial search solution we may be able to solve the business case on a less performance consuming way.

I cannot fully commit, since we work agile and we haven't fully specced this out or started work on it. I do have good hope this is going to make it in 5.5.

 

KR,

Petra

 

Thanks for the update Petra.

But let me add weight to the need. The search requirement outlined here by Petri is very much required in our ADAM implementation. So, for what is worth, we would like to add some impetus to see such functionality added to ADAM in 5.5 if at all possible. In other words, sooner rather than later. But then, isn't that what every customer says? ;)

josh

Completed

The partial matching in ADAM 5.5 covers this use case, so I'm closing the ticket. In case additional requests surface, feel free to open a new Idea.