You are talking about processing all your data integrity in a business layer / web application, which is quite acceptable these days.
Instead of using the table structure at all, why not just save the JSON object? This way you don't have to worry about circuit changes, and you can just serialize / deserialize the object for use with your interface.
Perhaps consider using a key / value store (NOSQL solution) for something similar, although there will actually be enough database.
To answer your question, the difference lies in the possibility of querying the fields, checking data, maintaining data integrity, etc., while in structure B you process all this outside the database in the application.
As for your supposed limitation that you cannot request an object, MapReduce will allow you to run aggregate requests on your JSON data.
Go to option B if you need flexibility and you do not need other advantages provided by a structured database, go for option A if you want to check your data in the database and make it easier to query it.
The benefits of structure A are data integrity rules that are close to data and the ability to easily request your data in a variety of ways.
The advantages of structure B are extensibility and scalability - you can easily change your data structures in the application, and also, if you need to scale, you can easily split your data horizontally.
source share