Sql-server – Setup logical Database model for measurements

database-designsql server

I'm struggling to set up a logical model for the following spreadsheet:

Snapshot of data table
(See a close-up of the table here.)

My problem is that it is not clear to me how to deal with the "gap" values where each gap (nominal, min, max) contains values (forces) from three different sources.

On the right-hand side you can see other forces coming from those three sources but they are not related to the gap – only to the profile which I believe won't let me create a Forces entity.
So I was thinking about one gap entity with (length, min,max,nominal,SourceType,MinForce,MaxForce,NominalForce) but it doesn't look right since I will have repeating data in three rows for each profile.
Or should I manage the different forces within each source?

Also have a look at the FL thickness values. This thickness is an attribute from an FL entity which can have more than one thickness value for a given profile which then changes the Build/Rebuild-Force values for LAB and CalcUnit

I've also left out some columns to not confuse you and myself even more. If I can find a solution for the gap problem I might be able to solve the rest on my own.
Maybe it's the abstract data structure that confuses me.

Hope you can help me with some tips and ideas.

Best Answer

From what I understand of your spreadsheet and your description, this is the normalized logical ERD for your data:

Logical ERD

Now, based on how many GAP_CATEGORY records you have as a rule, and how many FORCE_SOURCE records you have, you might decide to do some denormalization. You have to decide what is easier to build, maintain and use and makes more sense in your application.