In our continuous progress toward enabling enterprise applications on Oracle Cloud Infrastructure (OCI), we’re excited to announce cloning capability for File Storage. With this feature, you can turn any snapshot into an independent live file system instantaneously and access it for read and write immediately.
Until now, to create copies of a file system, you had to manually copy a snapshot into an empty file system, which is time- and capacity-expensive to business operations, especially when managing multiple file systems. With the introduction of this unique technology that no other public cloud has yet offered with their managed file service, we continue to invest heavily in adding comprehensive features to File Storage. Now with this new capability, you can continue to enjoy the advantages of the highly available, durable, and full elasticity of OCI File Storage with enterprise-grade features to simplify your operations.
By default, snapshots preserve the state of the data of a file system at a particular point in time to provide the initial blueprint for a clone. File Storage clones are space- and time-efficient because creating a clone doesn’t replicate or move any data from the parent file system to its descendant clones. Instead, the clone references the parent file system for any data they share. After a clone is created, changes made to the data in the parent file system aren’t included in the clone. Conversely, any data changes to the clone aren’t included in the parent, although the clone continues to reference the parent for data that remains common to both. A clone automatically inherits the directory hierarchy and file data of the parent file system. All snapshots that exist in the parent file system are in the clone, up to and including the snapshot that is used as the source of the clone. You can create a clone of a clone or have multiple clones for the same file system.
We understand that enterprise applications typically require the ability to quickly create copies of file systems for variety of use cases. Now test and development use cases are expedited, because you can easily create copies to run experiments, then delete them in the most optimal way to save on time and capacity.
Moreover, customers running Oracle applications, such as Oracle E-Business Suite, usually have multiple copies of their production environments for validation purposes. Maintenance of Oracle E-Business Suite environments benefit significantly with the capability provided by clones, because the time to create these copies will be drastically reduced, giving Oracle E-Business Suite customers more time to focus on managing their applications instead. In this scenario, customers can create a snapshot before applying a patching operation to the Oracle E-Business Suite technology stack to have a point-in-time recovery if unexpected results occur. Customers can quickly turn that snapshot to a clone to go back to the previous state. Alternatively, customers may start by cloning the snapshot first to apply patching operation to the clone, then delete the clone in case of unexpected results without interfering with the parent file system that is hosting applications.
You can select any snapshot to turn it into a live file system instantaneously, with a click from the OCI Console. You can also create clones using CLI, API, or Terraform. Clones are available for access immediately after creation, even while the hydration of a clone’s metadata is in progress. Hydration is the process of copying metadata from the source snapshot to the clone. To learn more, see File Storage clones.
Here’s how you can create one. On the Console, under the Core Infrastructure services, go to File Storage and then File systems. In the Snapshots list, find the snapshot you want to use as the source of the clone and click Clone at the top. The Create Clone window is an easy and seamless step where you can edit any details before the creation of a clone. Access the clone immediately by creating an export for it and mounting it to an instance in the same manner as any other file system. Visit our documentation on how to create an export for a file system and how to mount file systems.
Cloned file systems are managed in the same way that you manage any other file system. In fact, any clone has an independent unique OCID. For information on how to view the clone’s details page, edit its properties, or delete the clone, see our documentation on how to manage file systems.
The snapshot used to create a clone is referred to as the source. The source contains data referenced by one or many clones. When creating a clone, you must specify which source is used as the blueprint for the clone directory hierarchy and file data.
A parent file system is a file system that contains the source snapshot. If you delete a clone’s parent, the file system parent’s parent (the clone's grandparent) becomes the clone’s new parent.
Hydration is the process of copying metadata from the source to the clone. The clone is immediately available on creation and can be used for regular operations while hydration is in progress. You can see whether a clone is still in the process of hydration by visiting its Details page. For more details, visit our documentations on how to view file system details.
A clone tree is a group of clones that all descend from the same root file system. The root and the descendant clones have a transitive relationship. Any clone can be deleted at any time with the exception of the root of the clone tree. To delete the root of a clone tree, all its descendants must first be deleted. In the following diagram, B, C, D, E, F, G are all clones. A→ B→ C→D and A→ B→ E→ F→ G are branches and part of a clone tree. File system A is the root of this clone tree and the parent of the file system B.
Performance: Creating a clone is instantaneous, and you can immediately access the clone for both read and write operations. However, the performance of both the parent and clone is marginally impacted while hydration is in progress. The duration of impact depends on the size of the source. For more details, visit Clone Limitations and Considerations.
Metering and billing: A parent file system is metered for all the data shared with its descendant clones. A clone is metered for its metadata and incremental changes made to its data. When a clone is deleted, all blocks that only it references are reclaimed. If another clone is hydrating from the deleted clone, the referenced blocks are reclaimed after hydration is complete. For more details, visit Clone Metering and Billing.
We want you to experience these new features and all the enterprise-grade capabilities that Oracle Cloud Infrastructure offers. Interested in trying File Storage? Sign up for a free trial.
We value your feedback as we continue to make our service the best in the industry. Send your thoughts on how we can continue to improve or if you want more details about any topic. More feature updates are on the horizon for our cloud storage platform.
Mona Khabazan is a Principal Product Manager for Oracle Cloud Infrastructure, responsible for the launch and the growth of File Storage service from its inception in 2018. She is a seasoned product manager with strong customer focus and passion to drive innovation in global development teams.
Based in Cambridge, MA, Mona is a strategic innovator with progressive experience in successfully directing new product initiatives, 1.0 product launches, and leading great teams to drive change and growth. Mona has a Bachelor's degree in Computer Science from University of Waterloo in Canada and a Masters degree from Harvard University.