Comments (5)
S3 does not support "folders", the objects are being grouped based on the path, to avoid this you'd need to keep at least one object.
Amazon S3 has a flat structure instead of a hierarchy like you would see in a file system.
The console does this by using a shared name prefix for the grouped objects. In other words, the grouped objects have names that begin with a common string. This common string, or shared prefix, is the folder name.
https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-folders.html
from mountpoint-s3.
Hey @revanhernandy. As @mschfh wrote, the objects are being grouped based on path. This is also described in our semantics documentation for reference: https://github.com/awslabs/mountpoint-s3/blob/83fa7c654623cba34b44f99c3b8930b693ebd0b1/doc/SEMANTICS.md#directories
One way to resolve your issue would be to create either an empty file for persisting a directory (similar to .gitkeep
files for Git), or to create a directory marker. We don't recommended using directory markers generally since they can have adverse effects with larger workloads, but it may work best for your use case.
A directory marker is an empty object with the key matching the prefix of objects that would be contained within. For some directory "dir1", you could create an empty object dir1/
which will be interpreted by many file-oriented connectors/views as a directory. For example, the S3 Console will create this type of object when creating a directory. Note that directory markers cannot be removed by Mountpoint today, and you would need to use another S3 client to remove them later.
Please let us know if this resolves your issue or if you need any further help with it.
from mountpoint-s3.
Hi @dannycjones thank you for the response. Got it and makes sense.
Currently, we have an Azure blobfuse filesystem and it can be handled by a temporary path but we need to migrate into S3 stuff 😄 it would be very perfect if Mount S3 could do similar.
But, the first workaround is ideal in this case with making a persistence file with a dot(.) would be helpful in case, vsftpd by default would hide the files and directories starting with dot(.)
from mountpoint-s3.
Currently, we have an Azure blobfuse filesystem and it can be handled by a temporary path but we need to migrate into S3 stuff 😄 it would be very perfect if Mount S3 could do similar.
Sorry @revanhernandy, I didn't understand what the ask is. What do you mean by a temporary path?
from mountpoint-s3.
We plan to add the scenario in this issue to a new FAQ/troubleshooting document we're creating, tracking this scenario here: #722.
from mountpoint-s3.
Related Issues (20)
- Mountpoint operations hang indefinitely HOT 12
- Installation fails in Sagemaker Classic kernel console HOT 4
- Implement statfs operation to report basic stats HOT 3
- CRT error 2054 (AWS_ERROR_HTTP_INVALID_PATH) when mounting S3 Express bucket HOT 4
- Listing all files under specific prefix is very slow HOT 6
- Disable TLS / certificate verification HOT 3
- Caching performance should be better HOT 4
- Improvements to error reporting (RFC)
- Add the expected behaviours of Mountpoint in the troubleshooting page that customers face HOT 1
- Duplication of file and directory of same name in S3 Express Zone One bucket using Mountpoint
- Build is not reproducible HOT 1
- Double `touch` errors HOT 2
- Include creation of files for benchmarking Mountpoint in benchmarking script HOT 1
- token is not refreshed when running in k8s pod connected to serviceaccount HOT 8
- Unable to Write HOT 4
- Files unexpectedly released leading to `Bad file descriptor` HOT 5
- Disabling data cache isn't mentioned in the documentation HOT 3
- Unable to mount non-aws storage due to "Host name was invalid for dns resolution" HOT 2
- Clarify the expected behavior of the `--metadata-ttl` option set to zero HOT 3
- Separate part sizes for GET and PUT
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mountpoint-s3.