Time logging is quite tricky. You may have noticed that you cannot directly remove or reset a time logged. If you submit spent time, it will add to the previous spent hours. Also, like you mentioned, all the parent issues inherit the spent time from their subtasks.
A neat trick, if you write ".xml" at the end of your URL you will see some information about the issue. For example if you go to "localhost:8080/redmine/issue/500.xml", you will see a break down of the issue with id 500. This also applies to the group of issues.
Now, to see issue history, you can add ".xml?include=journals" to a desired issue link. This will show previous changes made and when they were made in an array format. Unfortunately this doesn't work with the group of issues, but there is a patch found at this link: http://www.redmine.org/issues/12746
There is also a gem called active resource. It allows you to write ruby scripts that can load issues as an object in xml format and you can edit, read, or add any issues or fields that you would like. This avoids using the database and can make things less risky.
Useful link:
http://www.redmine.org/projects/redmine/wiki/Rest_api_with_ruby
Good luck!
-Josh