In scenarios such as AI training and inference, high-performance data preprocessing, EDA, rendering, and simulation, you can use SFS Turbo file systems to accelerate access to your data in OBS. SFS Turbo supports seamless access to objects stored in OBS buckets. You can bind a directory in your SFS Turbo file system to an OBS bucket and then create import and export tasks to synchronize data between the file system and bucket. Before starting upper-layer training tasks, you can preload data from your OBS bucket into SFS Turbo to accelerate data access. Intermediate data and result data generated by these tasks can then be written to SFS Turbo at a high speed. Downstream services can read and process the intermediate data, and result data can be asynchronously exported to OBS buckets for long-term, low-cost storage. In addition, SFS Turbo allows you to configure a cache eviction duration to automatically delete data that has not been accessed for a long time to free up cache space.
Figure 1 Add OBS Bucket

Parameter | Description | Constraints | Can Be Modified |
|---|---|---|---|
Interworking Directory Name | SFS Turbo will create a subdirectory with this name in the file system root directory and bind this subdirectory with the specified OBS bucket, so this name must be unique. |
| No |
OBS Endpoint | The OBS endpoint. To view the OBS endpoint, see section "Viewing Bucket Information" in the Object Storage Service User Guide. | The OBS bucket and the SFS Turbo file system must be in the same region. | No |
Bucket Name | The name of an OBS bucket. To view the OBS bucket name, see section "Viewing Bucket Information" in the Object Storage Service User Guide. |
| No |
Permissions on Files to Import | The permissions on the files to be imported. Enter a three-digit number. One digit from left to right represents the permissions of the owner, group, and other users. Each digit is the total of the numerical values of the permissions. Read permission is represented by a value of 4, write permission 2, execute permission 1, and no permission 0. | This parameter is optional. Enter a three-digit number, with each digit ranging from 0 to 7. | Yes |
Permissions on Directories to Import | The permissions on the directories to be imported. Enter a three-digit number. One digit from left to right represents the permissions of the owner, group, and other users. Each digit is the total of the numerical values of the permissions. Read permission is represented by a value of 4, write permission 2, execute permission 1, and no permission 0. | This parameter is optional. Enter a three-digit number, with each digit ranging from 0 to 7. | Yes |
User ID | The ID of the user who owns files or directories to be imported. | This parameter is optional. Enter an integer ranging from 0 to 4294967294 (2^32 – 2). | Yes |
User Group ID | The ID of the user group to which the files or directories to be imported belong. | This parameter is optional. Enter an integer ranging from 0 to 4294967294 (2^32 – 2). | Yes |
Auto Export | If enabled, all updates made on the file system will be automatically exported to the OBS bucket. | - | Yes |
Data to Export | This parameter shows up if you enable Auto Export. Select the type of updated data to export to the OBS bucket. Supported types include New, Changed, and Deleted. Data is exported from SFS Turbo to OBS asynchronously. New: Files created and then modified in the SFS Turbo interworking directory. Any data or metadata modifications made will be automatically synchronized to the OBS bucket. Changed: Files previously imported from the OBS bucket and then modified in the SFS Turbo interworking directory. Any data or metadata modifications made will be automatically synchronized to the OBS bucket. Deleted: Files deleted from the SFS Turbo interworking directory. Deletions will be automatically synchronized to the OBS bucket, and only such files that were previously exported to the bucket will be deleted. | - | Yes |
You can configure auto synchronization when adding an OBS storage backend or after an OBS storage backend is added.
If you enable auto export, SFS Turbo will asynchronously export data to OBS based on the types of data you select.
Supported types include New, Changed, and Deleted.
To configure auto synchronization when adding an OBS bucket, see Adding an OBS Bucket.
To configure auto synchronization after an OBS bucket is added, perform the following steps:
Figure 2 Auto Synchronization

Figure 3 Auto Export

After you add an OBS bucket as a storage backend, you can use the metadata import function.
Before accessing data in your OBS bucket from SFS Turbo, you need to use metadata import to import the object metadata (name, size, and last modification time) from the bucket to the file system. You can access data in the OBS bucket from the SFS Turbo interworking directory only after the metadata has been imported. This operation only imports the metadata. The data will be loaded from the bucket and cached in the file system when it is accessed for the first time. When the same data is accessed later, it will be accessed from the file system, instead of the bucket.
SFS Turbo supports two metadata import methods: quick import and additional metadata import. After the metadata import is complete, you can view the imported directories and files in the interworking directory.
Figure 4 Import Metadata

After you add an OBS bucket as a storage backend, you can use the data import function.
By default, after a metadata import, data is not imported into the SFS Turbo file system. Instead, the data is loaded from the bucket to the file system upon the first access, which may take some time. If your workloads are latency-sensitive and you know which directories and files will be accessed, for example, AI training involves a large number of small files and is highly sensitive to latency, you can import the required directories and files in advance.
During a data import, both data and metadata will be imported, and a quick metadata import will be performed, meaning that the additional metadata (such as uid, gid, and mode) will not be imported.
Figure 5 Data import

If you enter the path of a directory, end it with a slash (/).
After you add an OBS bucket as a storage backend, you can use the data export function.
Data export allows you to export any files newly created in the interworking directory, as well as any imported objects that you later modify, to the OBS bucket. You can also specify a prefix so that only the directories and files matching that prefix are exported.
Figure 6 Export

If it was previously imported to and then modified in SFS Turbo, it will overwrite its peer object in the bucket if it is newer. Otherwise, it will not overwrite its peer object in the bucket. During an overwrite process, the file's peer object in the bucket is deleted first, and then the updated file is written to the bucket. This may remove a peer object that is still in use. When auto export is enabled, if a file in the SFS Turbo file system is frequently modified, it is recommended that you avoid accessing its peer object in the OBS bucket.
If you upload an object to OBS when an object with the same name is being exported, the object you uploaded may be overwritten.
After you add an OBS bucket as a storage backend, you can use the cold data eviction function. Only data is deleted during an eviction. The metadata is retained. When the deleted file data is accessed later, SFS Turbo loads the data from the OBS bucket.
Time-based Eviction
After adding an OBS bucket, you can configure a cold data eviction duration to delete data from the cache by time. Files that have not been accessed within the specified duration will be evicted.
The procedure is as follows:
Figure 7 Setting a cold data eviction duration

Capacity-based Eviction
SFS Turbo file systems also support capacity-based data eviction.
When the capacity usage of a file system reaches 95%, SFS Turbo will delete data that has not been accessed in the last 30 minutes until the capacity usage falls below 85%.
For the files imported from OBS to SFS Turbo, if they are not accessed within the configured eviction duration, they will be evicted.
For the files created in SFS Turbo, they will only be evicted when they have been exported to OBS and meet the eviction rule. If they have not been exported, they will not be evicted.
When an SFS Turbo file system contains only the file metadata (because only metadata was imported or data eviction occurred) and the object in the OBS bucket has been deleted, importing data or accessing the file will fail.
Tasks are asynchronous. After a task is submitted, you can query the task status based on the task ID.
No.
In the SFS Turbo file system, when you edit a file (data or metadata) with vim, the editor doesn't just modify the file. It actually deletes and recreates it. Auto synchronization treats this as a new file rather than a changed file, so the changes cannot be exported with the "changed data" policy. To fix this, configure auto synchronization to export new data. That way, files edited with vim will be properly exported.