Figure out what you need first.
And initially, don’t worry about your storage structure. Use something else to input static data in your initial stages, rather than loading during all of the testing. Once you’re fairly sure what you need, then look at the sort of storage structure you’re going to use.
As for the structure, how you’re reading/filling in your data should not be causing that large of an effect. Except that you’ll need to have some form of loading order to ensure that you can get all of your references straight before you start filling in stuff.