When it comes to search there are numerous obstacles that need to be tackled in order to provide an exceptional user experience. Especially when it comes to structured data search engines such as Google are at a loss. They specialize in searching large amounts of unstructured data. For anything else, this is where we come in and fill in the blanks.
The success of big search engines shows that customers value a perfect search experience. We will help to make your data accessible to your customers or employees.
A search solution has to be loosely coupled with the source systems in order to provide best performance and robustness. An easy mistake is to have the source also deliver search capabilities. This will eventually lead to enormous costs to scale the source system out as well as performance penalties, especially for transactional systems.
For fast retrieval, the data has to be denormalized. While this seems counter-intuitive to database architects, this is actually best practice when it comes to search engines. This also underlines that search engines are fundamentally different from establised database systems and need to be treated very differently.
In order to deliver constant and predictive performance, the search cluster needs to scale out vertically. In this context, it is important to understand that this lead to eventually consistant data in contrast to strong consistency across the search cluster.