Может быть посмотреть в сторону noSQL, например mongoDB или redis. У монго неплохой map/reduce.
Еще можно попробовать postgreSQL — там очень хорошо со структурами таблиц, есть массивы и свои типы — связи между таблицами достаточно просто сделать на нативном уровне.