In a few minutes reading, I am going to introduce our experience in Tajawal.com for one of our challenging parts, the DB performance. And how it evolved until we had the convenient solution that gives us the ability to help the business to go forward.

Introduction (Problem Statement)

I was working in one of our back office applications that helps our customer service agents, fulfillment, fraud and other internal teams to manage/fulfill the bookings whether it is coming from online customers or through our agents.

And some of our mission as a team towards our agents:

Giving the flexibility to search with different criteria/patterns to retrieve the correct customer data. Performance, the agent doesn’ t have to wait on the call too much time waiting for the data to come.

And as our business was growing fast (and still :)), the number of bookings was growing and the DB queries started to be slower.

Note that: our DB is a MongoDB and the search engine/index DB we are using is Elasticsearch (ES).