Namísto příliš mnoha sloupců s pouze hodnotou true/false bych navrhoval mít sloupec typu integer pojmenovaný jako 'some_status', který by nahradil některé vlastnosti stejnou kategorií. Jako například some_status =10 znamená aktivní, some_status =20 znamená neaktivní, some_status =30 znamená čekající atd. Pravděpodobně to pomůže zredukovat některé sloupce.
NÁVRH 2
Jak jste zmínili, budete pravidelně přidávat binární vlastnosti, takže bych vám doporučil navrhnout vaši databázi jako níže, abyste mohli tabulku Binary_property kdykoli aktualizovat.
A pro vaši situaci, kdy bude pravdivých pouze několik binárních vlastností, můžete zvážit přidání těchto binárních vlastností do tabulky Entry_Binary_properties pouze tehdy, když jsou pravdivé. Když později vyberete, pokud vlastnost Binary není v tabulce Entry_Binary_properties, bude ve výchozím nastavení false.
Doufám, že to pomůže. =)