Best way to allocate storage (sqlite database, storage folder) between SSD and external HD?
Zotero has long been my reference manager and standard advice for my students.
I have over 20 gig (and growing) of PDF files in my storage folder, and 600 meg in the sqlite database. Both in the Zotero folder of my C drive (a SSD), which is getting cramped on my laptop. I always have an external HD with me, where my massive files are stored. I need to free space on C, so I am wondering whether to move the entire Zotero folder over from the C drive to the HD (and then redirect location in Zotero settings), or attempt to retain the database on the C drive SSD for speed advantages, moving only the storage folder.
Any recommendations?
Thanks
I have over 20 gig (and growing) of PDF files in my storage folder, and 600 meg in the sqlite database. Both in the Zotero folder of my C drive (a SSD), which is getting cramped on my laptop. I always have an external HD with me, where my massive files are stored. I need to free space on C, so I am wondering whether to move the entire Zotero folder over from the C drive to the HD (and then redirect location in Zotero settings), or attempt to retain the database on the C drive SSD for speed advantages, moving only the storage folder.
Any recommendations?
Thanks
On macOS or Linux you would just do that with a symlink, but I don't know how achievable that is on Windows these days.
For an academic, adjusting your Zotero data setup is a bit like brain surgery, so I want to make sure I will be doing this right ...
So, I close down the app, backup and then move 'storage' folder to new location on external HD, leaving the rest (sqilite DB etc.) as it was on the SSD, and then open the app, and define the new path to the external HD in preferences ("linked attachment base directory")?
Zotero doesn't support splitting zotero.sqlite and 'storage' — it just expects those to exist in the data directory, so that's what it needs to look like from Zotero's perspective. As I say, on macOS and Linux you'd use a symlink to do this, but I don't know whether it's possible with an alias or symlink on Windows.
Any sense of the speed/reliability penalty of moving the sqlite to the external HD with the 'storage' as well? (I assume it is accessed afresh from SSD/HD each time one accesses Zotero, rather than it being in RAM)
But it would not be great. Databases in particular strongly benefit from the random-access speed of SSDs.
Thanks for the guidance!
---------------------
Am using Windows 7. Rather than doing things by command line I created a hard link using Link Shell Extension (https://schinagl.priv.at/nt/hardlinkshellext/linkshellextension.html#download)
So, I closed Zotero, backed up and then moved the "storage" folder to a large external HD that is always connected to the laptop, and then created a hard link (called a junction) to that destination folder in the standard Zotero folder. I open Zotero, and it starts fine (somewhat more slowly than usual) but functions as normal and as fast.
When I examine the properties of that hard link folder (whose icon now denotes that it is a link) I see 20 gig, reflecting the size of the remote target folder. But when I look at the properties of the overall Zotero folder containing it, it is less than 2 gig.
Thus, I have freed up scarce place on the SSD, and the sqlite database enjoys the speed of SSD. Wonderful.