NebStore

NebStore is designed with simplicity and reliability in mind - we deliver a dependable and expandable cloud storage solution for your data storage requirements.


Data in NebStore is structured in 2 layers: buckets and objects.

Folder management is coming soon! Check out the Roadmap for more details.

Storage buckets

  • A bucket is persistent object storage that is constantly available and automatically scales with your usage.
  • Your organization can create, view, or manage storage buckets depending on the roles each user has. Learn more about Roles and permissions in the Onboarding guide.
  • Each bucket has a unique ID called Nebula resource name.
  • Each bucket has a direct Bucket URL. You can set this URL to be public or private during bucket creation.

Enable public access if you want to deliver and share objects externally. Public access means that all objects within a bucket are accessible.

Objects

  • Objects are files that you upload to a storage bucket.
  • Your organization can upload, access, or manage objects depending on the roles each user has. Learn more about Roles and permissions in the Onboarding guide.
  • Objects inherit the access type of the bucket they are in. Public or private access to objects depends on the setting you choose when you create a bucket.

An example: if you want to store your website’s image assets in NebStore, you need a bucket with public access.


Create storage buckets

You have 3 ways to create buckets.

The easiest tool for using NebStore is the Nebula Console, with a clear interface for bucket and object managment, usage metrics and access controls.

Creating a NebStore bucket only takes a couple of steps:

NebStore bucket creation flow

The Console guides you through these steps:

  1. Name your bucket

    These are the naming conventions for a NebStore bucket:

    • The name has to be globally unique.
    • Only numbers and characters are allowed. Special charaters will be stripped.
    • The name cannot be longer than 25 characters.
  2. Enable public or private access

    Enable public access if you want to deliver and share objects externally. Public access applies to all objects within a bucket.

  3. Enable versioning - coming soon

    Versioning enables you to keep and access multiple versions of the same object in your storage bucket. Versioning applies to all objects in a bucket.

You're done! You can now access the storage bucket and start uploading objects.

You can also create buckets using the NebStore API, through the Create bucket endpoint, and also programmatically via the NebStore SDK.


Upload and download objects

Once you create a bucket, you can upload objects in 3 ways:

  1. Through the Console:

    • Open your new bucket and click on Add object
    • Select the files you want to upload
  2. Using the NebStore API, through the Upload object endpoint

  3. Programmatically via the NebStore SDK

The Console allows bulk file upload. Simply select multiple files from your device.

Nebula buckets accept objects regardless of file type or size. Large files are automatically uploaded in chunks.

There is a limitation though: you cannot extract archives or unpack image files after they are uploaded to a Nebula bucket.

  • After objects are uploaded, you can view metrics like number of objects, average object size, and total bucket size for every bucket. This forms the basis of your usage and billing.
  • Open an object in Console to view the properties. This is where you can find each object’s direct URL.

You can download objects in 3 ways:

  1. Directly from the Console

  2. Using the NebStore API, through the URL returned in the location field from the Get object or List all objects endpoints

  3. Programmatically via the NebStore SDK

You can use an object’s URL to share it directly, or embed it in your website.

However, you need to enable public access in a bucket if you want to deliver and share objects externally. Public access means that all objects within a bucket are accessible.


Migrate your objects

Thinking about moving your objects from a different provider to Nebula? The easiest way to migrate is using bulk file upload through the Console, or through the NebStore SDK, which enables you to do this programmatically.

To move objects from your current storage into your Nebula storage bucket using the Console, follow these steps:

  1. Download objects from your previous storage provider.
  2. When creating storage buckets on Nebula, define your bucket structure keeping in mind that every bucket is similar to a standalone folder.
  3. Upload files from your local environment.
  4. You’re done!

To move objects using the NebStore SDK, take a look at how object upload works in the SDK documentation here.


Manage buckets and objects

Use the Storage page in the Console to manage your buckets. You can:

  • Update access type
  • Empty bucket
  • Delete bucket

Nebula only allows deleting buckets that are empty.

For each object in your bucket, you can:

  • Copy the object URL
  • Open the object
  • Download the object
  • Delete the object

You can also use the NebStore API and the NebStore SDK to perform the same operations programmatically.


Usage and billing

NebStore prices are based the cumulative size of objects stored within your instance over time, per month. Nebula only bills you after you actually start storing objects in the resource you created.

Your usage and billing for NebStore is grouped on a project level. You can check the billing status, costs and usage over time for all buckets within a project through the Projects page.

We are working on a core Billing page in Console, which will give you even more visibility and control over your billing and usage. You will be able to see detailed costs and usage for every storage bucket you have across all of your projects. Check out the Roadmap for more details.


Need help?

If you have any technical questions or bump into any problems, get in touch with our Support team! We are here to help, and welcome any feedback you might have about NebStore.