I think the repository could be potentially large in real life because there are an unlimited number of entities that the user could load, especially if those entities are automatically created as output from some of the algorithms (like the cascading algorithms).
As far as how to store them, I think a blob would be fine because the repository could initially just retrieve the hashmap wholesale (if a previous session exists). And persist it wholesale upon exiting the workspace.
Everyone, feel free to jump in and correct me if I've made the wrong assumptions here.
Thanks!
Eric