128
Views
7
Comments
Solved
How to implement search engine like Google search engine?
Question
Application Type
Reactive

I want to implement search engine like Google search engine.

If Anyone worked on search engine implementation could you please provide oml.


2022-03-29 14-13-57
Hassan Shaddad
Solution

dear @Praveen Relli you can investigate this component from the mvp João Marques you 'll found all what you need there
https://www.outsystems.com/forge/component-overview/11689/google-search
and of course implementing it always is a big challenge as @Marlies Quaadgras  said

2024-01-20 14-53-12
Ahmed Essawy

Implementing a search engine similar to Google's within an OutSystems environment is a complex task that involves various aspects such as crawling, indexing, ranking, and querying data. While for sure I cannot provide an OML file because it is a mega project, not a question and answer, and this is not the best use case for Outsystems.

Given the complexity of search engines like Google, starting with a basic version and gradually adding features is a practical approach. If you're looking for more advanced search capabilities, consider integrating third-party search services like Elasticsearch or Apache Solr with your OutSystems application.

Remember, building a search engine is a significant undertaking and requires a deep understanding of algorithms, database management, and web technologies. It's also worth engaging with the OutSystems community or consulting with OutSystems professionals for specific advice or collaboration opportunities.

2022-03-29 14-13-57
Hassan Shaddad

If you want to use Google's search engine within your OutSystems application to search the content of your app, you would be looking to implement Google Custom Search. Google Custom Search Engine (CSE) allows you to create a search engine tailored to your needs and to your website's content.

Here's how you can integrate Google Custom Search into an OutSystems application:


1- Go to the Google Custom Search website and create a new search engine.

2- Add your OutSystems application's URL to the list of sites to search.

2-Customize the search engine according to your preferences.

Once created, Google will provide you with a unique search engine ID (cx parameter).

Embed the Custom Search in OutSystems:

1- In Service Studio, open your application.

2- Go to the screen where you want to add the search functionality.

3- Drag an 'HTML Element' widget from the toolbox onto the screen where you want the search box to appear.

4- Set the HTML content of the widget to the embed code provided by Google, which usually looks something like this:

<script async src="https://cse.google.com/cse.js?cx=YOUR_UNIQUE_ID"></script> <div class="gcse-search"></div>

5- Replace YOUR_UNIQUE_ID with the unique ID of your Google Custom Search engine.


  • If your application requires different Google Custom Search engines for different environments, you can store the unique IDs in Site Properties and retrieve them dynamically.
2025-08-14 07-11-56
Praveen Relli

Hi @Hassan Shaddad 

Thank you for giving solution I have created custom search engine according to my preference and Google also provided search engine unique ID ( CX Parameter) but I am not able to implement  or integrate into Outsystems. Could you please help me  how to implement or if you already implemented, please provide OML file to me.


Thank you 

2022-03-29 14-13-57
Hassan Shaddad
Solution

dear @Praveen Relli you can investigate this component from the mvp João Marques you 'll found all what you need there
https://www.outsystems.com/forge/component-overview/11689/google-search
and of course implementing it always is a big challenge as @Marlies Quaadgras  said

2025-08-14 07-11-56
Praveen Relli

Hi @Hassan Shaddad  

Firstly, I appreciate your efforts, I have been trying to implement for 2 days but I was not able to implement. If you are able to find out how to implement, I am giving my custom search engine Unique ID: c425ea3d46b8b40cd and if you will implement this functionality, please provide OML for me.

Thank you.

2023-10-31 07-36-11
Marlies Quaadgras
Champion

Hi @Praveen Relli 

The google-like searchbar is a great functionality, that I imagine that all the functional designers / product owners want it in their application.

However implementing it always is a big challenge. There need to be a search done on several entities and on several attributes inside entities. Most of those attributes don't contain an index, and you can not add indexes to all searchable attributes.  Simply said, you have to create a lot of aggregates or advanced queries for the wanted result. And it would be very slow, bad performance.

For technical solutions it is better to narrow the search on less attributes and less entities. First I think you need to discuss this option with your product owner.


When you really need to implement it, you can imagine that those sequence of aggregates and advanced queries won't work.  In my project we also have this google-like searchbar and we implemented several technical solutions to make it better, although we search in only 4 entities.


Searching on the internet, you find a lot of options. My favourite is add some kind of search attribute in the entities to be searched in. In this (indexed) attribute, you add all the attributes, with delimiters as a big text field. You can fill it / change it easily in the CRUD actions. Then you search on this field. 

This solution seems to me the first try, when this gives bad performance you can look for other options, a lot of them you can find on the internet, but you must find the best option for your challenge. That can not be answered in the forum, the only one who can find this answer is you.

Good luck, Marlies


2026-01-03 13-44-38
Erwin van Rijsewijk
Champion

Relational Databases, like SQLServer that is most commonly used in OutSystems, are not really tailored to build a Google-like search engine.

Maybe you can use some external thingy that is specialized in full text search like Splunk
or ElasticSearch.



Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.