[eluser]obiron2[/eluser]
I have had the same problem with a very complicated data set for a fantasy f1 site.
The player team model consisted of two drivers, a car,engine and tyres.
Points were scores for finishing positions for each element.
the 'real life' data was based on racing teams with their car,engine and two drivers.
To get the current cumulative score for each player team:-
get driver 1, get their result for the race, get the points for the result, add to driver 1 cumulative score.
repeat for driver 2
get engine, get racing team, get racing team driver 1, get race result, get points, add to cumulative. Repeat for racing team driver 2.
repeat engine search for car.
repeat for 17 races in the season
repeat for 40 player teams.
What could be done in one HUGE SQL query with a whole bunch (about 12 from memory) of inner joins and sub-selects, when moved into proper MVC required 7200 trips to the database with the subsequent overhead on performance.
I think you need to go with whatever feels right. If it is getting too complicated to support, move to full MVC. If the performance hit is too large then you may want to look at saving cached results in the database, rather than cacluating them each time, or move the complicated logic into the database server using stored procedures - which is outside MVC and CI.
Obiron