From Filesystems to the Cloud and Back

Cloud storage solutions are a great alternative to storing data on a local computer or network-attached storage (NAS) device. Originating with Amazon S3, cloud storage solutions are now offered by dozens of major companies such as Google and Microsoft. The advantages of cloud storage include practically infinite storage capacity, data protection (i.e. inability to lose data in a physical accident), effective regulation of third-party access, and the low cost of data management.

However, cloud storage solutions often work in a manner that doesn't match orthodox approaches to data storage (i.e., hierarchical filesystems and relational databases). Internally designed as huge tables with an index and BLOB field for data, they can't match the flexibility that filesystems or database management systems can offer. This means that developers often need some sort of translation layer between their application and the cloud-based data storage.

Another significant disadvantage of cloud storage is the differences between APIs offered by the different services. The request commands, parameters, and functions offered by the different services differ significantly. Due to this, cloud services require writing separate code for each API.

Finally, there's the fact that you have to trust your cloud storage provider with your data in the first place. While it's true that most reputable cloud storage service providers offer some sort of "at rest" data encryption, it's often desirable (or, for certain kinds of data, legally necessary) to supplement that with your own layer of encryption—one that doesn't depend on the cloud storage provider in any way.

Thankfully, CBFS Storage helps you have the best of both worlds: a familiar files-and-folders data storage interface, and the ability to store the raw data of your vault wherever you want using Callback Mode. Since CBFS Storage vaults store data in pages (i.e., fixed-size blocks of data), you can easily use callback mode to store those pages anywhere—including the cloud.

We appreciate your feedback. If you have any questions, comments, or suggestions about this article please contact our support team at