I’m just starting to use odrive and wanted to use S3 for storage. I created a new bucket and then moved a bunch of files from my Dropbox folder on my computer to the new S3 odrive folder. Everything seems to have worked ok, except all of the files on S3 (viewed through the S3 console) have guid’s as file names. This isn’t preferred, as I can’t then use any other mechanism for accessing these files except for odrive (and if something goes wrong, it appears I’m going to lose all of the names of the files).
Did I do something wrong? Is there a way to get it to use the actual directory and file names?
Hi @shawn1 ,
It sounds like you chose S3 Enhanced instead of simple ‘/’ delimited. Here are the relevant sections from the FAQ section at the bottom of the S3 link page here https://www.odrive.com/links/s3
What is the Enhanced odrive FS directory structure?
If you don’t have an existing storage bucket to link to yet, we highly recommend using the Enhanced odrive FS directory structure option to connect to your bucket (anyone else connecting to this S3 bucket in the future should use the same option).
You will notice improved performance, particularly on file move and rename operations. Always use odrive to access your Enhanced odrive FS bucket–your files will still technically be accessible using non-odrive applications, but the file and folder names will be encoded in such a way that it will be more difficult to browse around.
If you have an existing S3 bucket with preexisting data in it (or if you plan on accessing the bucket from applications other than odrive), use the Simple ‘/’ Delimited directory structure instead.
What is the Simple ‘/’ Delimited directory structure?
Information is stored into the storage bucket in the same way that Amazon S3 normally stores its information. By using a ‘/’ character in the file’s key, a directory structure can be simulated. That way, when you browse the bucket using the Amazon Web Services console or with a third-party app such as the S3 Browser, you see a file folder structure.
Unless you need to use the Simple ‘/’ Delimited directory structure, we recommend using the Enhanced odrive FS directory structure option whenever possible for best results.
Can I connect to an existing S3 storage bucket with existing content?
Yes. Please note that you will need to use the simple ‘/’ delimited directory storage option to connect.
It sounds like you want to link using the Simple ‘/’ Delimited option.
Where do you choose this? It doesn’t say how you do or don’t choose S3 Enhanced? Also is there a way to change it?
You seem to be suggesting that you SHOULD use S3 enhanced, meaning I should be using this version where it stores as GUIDs on S3, correct? I assume there is some kind of mapping file that defines the relationships between the GUIDs and the filenames, what if that becomes corrupted? This is what I’m mostly worried about.
You choose the type of link you want when linking S3. You can see it here at the bottom of the form:
Enhanced actually stores most of the information it needs in the S3 object names. As long as you do not modify the names of the objects outside of odrive, you do not have to worry about losing the relationships.
S3 enhanced is great when linking against a brand new bucket as it provides more efficiency for the types of operations folks would typically use in their everyday filesystem use. You will feel the benefit most if you are moving things around/restructuring the cloud data.
Since it sounds like you may have other applications viewing this data, though, it may be best to re-link using simple delimited, to ensure compatibility and readability outside of odrive. Keep in mind that you will need to re-upload the existing data to ensure it is properly named and organized with simple delimited, after re-linking with the proper settings.