I have a kind of interesting scenario- lets say I have a list of people I wish to store in the database, so I create a table 'Person'. Now lets say each person has a 2000 large image files (say high res photos or something). Each image is > 5M. What I need to do at the end of the day is retrieve a person, and upon selection display a selected photo (or photos) in my C# WPF app.
I was looking at FileTable to store the data on the disk, as this would be preferable to storing all these images as blobs. But I wasn't sure how to associate the Person with their images through the FileTable.
Can I add additional columns to a file table (like an fk to Person)? Not sure if that is the right approach. Maybe FileStream is better? Is it better in a case like this to just store a path in the database? Which leads to the next question...
I also need to store other kinds of data, like DeepZoom data- this is interesting stuff, as its about 600M of data, and exists in a single directory structure with multiple levels of data (and images). Apps able to read this need extremely fast access to the data to render it quickly. I think in this case I would need to just store the location of the DZ data on disk. But that seems fragile. Is there a standard accepted way to store file locations in the DB?
Thoughts and advice appreciated!