Greetings! I have a question concerning how to design the data structures for a particular problem. I have a set of records, each record may have 0 to 20 strings associated with it. If I was to use an SQL database, I would use a table such as: table strings ( long record_id, int index, string string ); I was thinking of using a BAT within a BAT, something like: BAT[ BAT[ lng, int ], str ] but this cannot be made persistent. Using: bat(lng, str).rename("string_1"); bat(lng, str).rename("string_2"); ... bat(lng, str).rename("string_20"); just feels wrong (if for no other reason, what if there is a 21st string in the future?). I could do: bat(lng::1, lng::2).rename("record_strings"); bat(lng::1, int).rename("record_string_index"); bat(lng::1, str).rename("record_string_string"); But this means I am essentially limiting my record IDs to not be the full rnage of a long. What would be the suggested structure to use in this case? Regards! Ed