eCommerce / B2B / Customer specific catalog

Hi all,

I'm interested in getting suggestions about how to structure ElasticSearch, in the following scenario:

  • We're a B2B webshop with thousands of products and categories
  • Customers need to login to see products (thus B2B)
  • Many products have filters applied to them - meaning that they're restricted to certain customers
  • Products contain multi-lingual fields - e.g. display name and description are languagespecific
  • Customers are not bound to a specific language - thus a customer can just change language if he wants

My questions are:

  • Should I create an index per language containing all products - and store the language-specific fields in the language-specific index, and just replicate the other non-language specific fields?
  • Should I create an index per customer, which is basically just a list of products the customer can see - and not containing the actual products. Is it ieven possible?

I hope it makes sense. Will look forward to hear from some of you :slight_smile:

Best Regards