Function Storage Selection
This section describes the application scenarios and differences of the storage types supported by FunctionGraph.
Function Storage Comparison
FunctionGraph provides various storage types, including Elastic Cloud Server (ECS), Scalable File Service (SFS) Turbo, Object Storage Service (OBS), Ephemeral Storage, and Dependency. For details about the storage comparison, see Table 1.
Item |
ECS |
SFS Turbo |
OBS |
Ephemeral Storage |
Dependency |
---|---|---|---|---|---|
Scenarios |
Log and service file storage |
Log and service file storage |
Log and service file storage |
Ephemeral service file storage |
Release and deployment of public dependency libraries, runtime environments, and function extensions |
Maximum space |
Expandable |
Scalable |
Scalable |
The default value is 512 MB. You can change the value to a maximum of 10 GB. |
300 MB |
Persistence |
Persistent |
Persistent |
Persistent |
Temporary |
Persistent |
Invocation sharing |
Supported |
Supported |
Supported |
Not supported |
Supported |
Storage content |
Writable |
Writable |
Writable |
Writable |
Unwritable |
Storage type |
File system |
File system |
Object |
File system |
Code dependency archiving |
Event source integration |
Not supported |
Not supported |
Supported |
Not supported |
Not supported |
Function access speed |
Fast |
Fast |
Faster |
Fastest |
Faster |
Billing |
Free of charge when the disk size is less than or equal to 512 MB. For details, see Billing Item. |
None |
Storage Type Description
FunctionGraph supports the following storage types:
ECS provides secure, high-performance, reliable, and easy-to-use file storage services by enabling the NFS file service.
FunctionGraph can seamlessly integrate with ECS, allowing functions to mount ECS shared paths. Once configured, functions can access the specified ECS shared paths the same way as accessing a local file system.
Advantages of using ECS for function mounting include:
- Ephemeral files can be stored in ECS shared paths. Their size will not be limited by instance local disk space.
- Multiple functions can share the same ECS shared path.
For details, see Configuring Disk Mounting.
SFS Turbo provides scalable, high-performance shared file storage (NAS) for shared file access from ECSs, Bare Metal Servers (BMSs), Cloud Container Engine (CCE) containers, and Cloud Container Instance (CCI) containers.
FunctionGraph supports seamless integration with SFS Turbo, allowing functions to mount the SFS Turbo file system. After configuration, functions can access the specified file system the same way as accessing a local file system.
The advantages of using SFS Turbo for function mounting are as follows:
- Ephemeral files can be stored in the SFS Turbo file system. Their size will not be limited by instance local disk space.
- Multiple functions can share an SFS Turbo file system.
For details, see Configuring Disk Mounting.
OBS provides massive, secure, and cost-effective data storage for you to store data of any type and size. It is suitable for various scenarios, such as enterprise-level backup/archiving, video on demand (VoD), and video monitoring.
FunctionGraph integrates with OBS via EventGrid (EG) triggers. You can customize functions to process OBS events. For example, you can invoke functions to process image or audio data and save results to various storage services. You only need to focus on writing function logic. The system will process massive data concurrently in real-time.
For details, see Creating an EG Trigger (OBS Application Service). In addition, you can use the SDK tool of the corresponding language to implement OBS read/write operation in your function code.
FunctionGraph provides two ephemeral storage specifications: 512 MB and 10 GB.
The lifecycle of the ephemeral storage is the same as that of the underlying function instance. If there are continuous requests, the instance remains. Therefore, the data previously stored on the disk is retained. If the function does not receive requests for a long time, the system will recycle the instance and the data on the disk will be lost.
A dependency contains public libraries that support the running of function code. You can encapsulate the required public libraries into a dependency for easier management, sharing, and smaller deployment sizes.
For details about the operation and restrictions of function dependencies, see Configuring Dependency Packages.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot