Here's a simple hierarchy of how my data would be stored.
jobs/
|---- movie1/
| |---- shot1/
| | |---- shot1_fx/
| | | |---- shot1_fx_v001/
| | | |---- shot1_fx_v001.mov
| | | |---- shot1_fx_v001.project
| | |---- shot1_anim/
| | | |---- shot1_anim_v023/
| | | |---- shot1_anim_v023.mov
| | | |---- shot1_anim_v023.scene
...
Now I need to plan out the database
What I have in mind:
- Each movie/project gets its own
database
. - In that database will be 4
collections
. To relate it to the tree above:
Collection 1: Shots (eg: shot1/
)
Collection 2: Working Types (eg: shot1_anim/
)
Collection 3: Working Versions (eg: shot1_anim_v023/
)
Collection 4: Working Sources (eg: shot_anim_v023.mov
)
I see some potential problems with this setup. One is that, since each project is a separate database I have no way to know what all the active jobs are in my pipeline. There is no database that contains data of all the jobs, only one per job.
So if I decide to instead create a global database that holds everything, then would every project be a collection? And everything else (Collections 2-4) would just be merged into one, and I would have to specify their types as metadata?
I'm kind of stuck on this and wan't to make the best choice before I make the tools and scripts depend on a certain structure.