Imagine:
- a set of five million documents representing articles you can buy (article id)
- a set of ten thousand users representing the buyers (customer id)
- white lists and black lists defined daily on the articles: this buyer can only search
and find these articles. These lists can contain from 5 tot 500.000 articles (on article id) - users are assigned one or more white or black lists (on list id (?))
In a search query on the articles,
- return results only out of the allowed combined subset of articles as defined by the original and, white and blacklists.
- the search queries are real time, so return a result set asap.