Is there any provision in the system where we can give a direct file upload feature without any need of bucket creation?
A bucket is like a home for a file. Which use case needs your file to be homeless?
In the objects storages (include all implementations of S3) there is no “files”, only buckets and objects. What you usually expect as “folders” actually prefixes in the object’s name. But these objects can be stored only in buckets.
For example, the path
sj://my-bucket/my-folder/my-file.png is actually consist of the bucket
sj://my-bucket, the prefix
my-folder/ and the file name
my-file.png. The full object’s name is
my-folder/my-file.png in the bucket
So, you need to have a bucket, but you can do not use “folders” (prefixes) and store all your objects in that bucket (
The number of buckets is limited by default (you can always increase them though if you have a paid account), but you may use infinite number of “folders” and objects inside the one bucket.
With a combination of usage of a different encryption phrase for the each object, you may separate them even more (you can see only objects, uploaded with “their” encryption phrase). This could be useful if you store data of different customers in the same bucket.
Is there any option available where a default bucket is created when a user registers?
It was before, but you always can create a bucket either in the Storj Console (web UI) or with CLI tools like uplink, rclone or AWS CLI.