Produkte nach einem Flag filtern, Performance durch JSON Speicherung

Wir suchen gerade nach einem Weg spezielle Produkte nur für ein bestimmte Kunden zu zeigen.
Der erste Lösungsansatz geht dabei die Produkte über unterschiedliche Ansätze zu markieren. Dabei kommt man dann zu Tags oder Custom_Fields. Beide werden ja in der Product-Tabellen (bzw. abhängigen Tabellen) als JSON abgelegt.

Ich frage mich hier inwieweit die Nutzung von JSON ohne das man hier dann mit „virtual column“ und einem Index gegensteuert nicht die Performance massiv in den Keller treibt.

Wir haben oft Abfrage wo dann potentiell 100K Sätze geprüft werden müssen. Ohne Index halt eine Katastrophe. Zumindest für CustomFields ist das Konzept nicht wirklich zu Ende gedacht.