Never design a data model to fit the output. Classic case:
1-to-many contacts: don't design as:
AccountKey, FirstName1, LastName1, Email1, FirstName2, LastName2, Email2, FirstName3, LastName3, Email3 etc.
Just because the input of the system you're outputting to may requires contacts 1-8 in 2 dimensional form doesn't mean your own internal datamodel needs to have it this way.