Best way to do search word structure?

I want to build up a database where there will be about 400 strings. I want to make the database searchable.

The structure of the database will be like:
Brand | model |additional products | price | search words | (this is 1 string, there will about 400 strings)

There will be between 2 and 50 search words on each string. The search are done by clicking a checkbox and the marked checkboxes words will be searched for in the database.

My question is how is the best way to index all the search words?
I’m thinking of 2 ways:

In the field | search words |all searchable words will be displayed like: 1GB RAM, 512GB RAM, ATA, SATA… and so on for each string. This means that ALL words will be in the same raw on a specific string separated by “,”.

Each search word will have its own row like: | search words 1| search words 2| search words 3 | search 4 words 5|…… and so on. In |search words 1| the word 1GB RAM will be. In | search words 2| the word 512GB RAM will be and so on… This means in a string maybe half the search words row will be filled with a search word.

In option 2 there will be more than 50 raw in the database and all search words in different column (1 in each column for each product). In option 1 there will be 1 raw with all words in the same column for each product.

Or is there a better way to do this?