Thursday 13 April 2017

Tinder like app using elasticsearch - Architecture

I have an application in the works which needs to work in following manner:
- When App User sets a filter and the app returns a set of quotes.
- Then user can like or dislike that "quote"
- The liked or disliked quote is never shown to this user again

The app behaves much like tinder. What I see as a potential bottle neck to this problem using elasticsearch is the fact that changes to a record in ES is not immediate .
So lets suppose if I selected a user with following filters (Male and location from London) and one of the qualifying candidate changes their Quotes or location - the change will not be immediate on ES and it will lead to wrong displaying of selected Data from ES.

I have considered app level joins, which can be huge array of 0 - 20K+ Integer numbers (IDs) which the user has already viewed just in order to make sure that the quotes being returned are always unique.

The current POC uses postgres with nodejs.



via Harshwardhan

No comments:

Post a Comment