Quick Longitudinal Access to arrays

Your question is too general to be answered concretely. There are various trade-offs, which depend on the data size and structure.

The most general format is usually called “tidy data”, and conceptually maps to relational databases. You can use the latter, or a DataFrame. See the related papers on how to handle that idiomatically.

That said, “tidy data” can be very redundant. If your data is very large, you may have to consider custom solutions. Eg when dealing with a large dataset, I wrote a thin layer for indexing a ragged array into a vector.