Skip to content

Commit 94ce3c5

Browse files
authored
Merge pull request #312347 from p15nishatr/docs-editor/network-file-system-protocol-s-1772097674
Update network-file-system-protocol-support.md
2 parents 04de15d + 6379adc commit 94ce3c5

1 file changed

Lines changed: 48 additions & 13 deletions

File tree

articles/storage/blobs/network-file-system-protocol-support.md

Lines changed: 48 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Blob Storage now supports a hierarchical namespace, and when combined with NFS 3
2424

2525
The NFS 3.0 protocol feature is optimized for high-throughput, large-scale, read-heavy workloads with sequential I/O. It’s ideal for scenarios involving multiple readers and numerous threads where throughput is more critical than low latency. Common examples include:
2626

27-
- **High-Performance Computing (HPC)** - HPC jobs often involve thousands of cores reading the same large datasets concurrently. The NFS 3.0 protocol feature uses object storage throughput to eliminate traditional file server bottlenecks. Examples:
27+
**High-Performance Computing (HPC)** - HPC jobs often involve thousands of cores reading the same large datasets concurrently. The NFS 3.0 protocol feature uses object storage throughput to eliminate traditional file server bottlenecks. Examples:
2828

2929
- Genomics sequencing: Processing massive DNA datasets.
3030

@@ -34,26 +34,26 @@ The NFS 3.0 protocol feature is optimized for high-throughput, large-scale, read
3434

3535
- Weather forecasting: Modeling atmospheric data for climate and storm prediction.
3636

37-
- **Big Data & Analytics (Data Lakes)** - Many analytics tools require hierarchical directories. BlobNFS (via Azure Data Lake Storage Gen2) delivers this structure while supporting standard file protocols. Examples:
37+
**Big Data & Analytics (Data Lakes)** - Many analytics tools require hierarchical directories. BlobNFS (via Azure Data Lake Storage Gen2) delivers this structure while supporting standard file protocols. Examples:
3838

39-
- Machine learning: Feeding training data to GPU clusters using standard file I/O.
40-
41-
- Log analytics: Aggregating logs from thousands of sources.
42-
43-
- **Advanced Driver Assistance Systems (ADAS)** - ADAS workflows produce petabytes of sequential sensor data—such as LiDAR point clouds and high-resolution camera feeds—that must be ingested efficiently and analyzed at scale for simulation and model training. Example:
39+
- Machine learning: Feeding training data to GPU clusters using standard file I/O.
4440

45-
- Storing raw LiDAR scans and multi-camera video streams from autonomous test vehicles using NFS 3.0, then running large-scale replay simulations across thousands of compute nodes to validate perception algorithms.
46-
47-
- **Media & Entertainment** - Rendering farms need efficient access to large asset libraries. NFS 3.0 over blob provides a file interface for legacy rendering tools that expect file paths. Examples:
41+
- Log analytics: Aggregating logs from thousands of sources.
42+
43+
**Advanced Driver Assistance Systems (ADAS)** - ADAS workflows produce petabytes of sequential sensor data—such as LiDAR point clouds and high-resolution camera feeds—that must be ingested efficiently and analyzed at scale for simulation and model training. Example:
44+
45+
- Storing raw LiDAR scans and multi-camera video streams from autonomous test vehicles using NFS 3.0, then running large-scale replay simulations across thousands of compute nodes to validate perception algorithms.
46+
47+
**Media & Entertainment** - Rendering farms need efficient access to large asset libraries. NFS 3.0 over blob provides a file interface for legacy rendering tools that expect file paths. Examples:
4848

4949
- Video rendering: Distributed nodes reading source assets.
5050

5151
- Transcoding: Converting large raw video files into streaming formats.
5252

53-
- **Database Backup** - This feature offers a cost-effective, high-throughput NFS 3.0 target without complex connectors or expensive snapshots. Examples:
53+
**Database Backup** - This feature offers a cost-effective, high-throughput NFS 3.0 target without complex connectors or expensive snapshots. Examples:
54+
55+
- Oracle RMAN can write large backup pieces directly for long-term archival and enable direct restore from any NFS-mounted Linux VM.
5456

55-
- Oracle RMAN can write large backup pieces directly for long-term archival and enable direct restore from any NFS-mounted Linux VM.
56-
5757
### When not to use NFS 3.0 with Blob Storage
5858

5959
Avoid for general-purpose file shares or transactional workloads due to object storage characteristics:
@@ -76,6 +76,41 @@ When your application makes a request by using the NFS 3.0 protocol, that reques
7676

7777
Block blobs are optimized to efficiently process large amounts of read-heavy data. Block blobs are composed of blocks. Each block is identified by a block ID. A block blob can include up to 50,000 blocks. Each block in a block blob can be a different size, up to the maximum size permitted for the service version that your account uses.
7878

79+
| NFSv3 RPC | REST API Operation |
80+
|---------------|--------------------|
81+
| **Metadata & Attributes** | |
82+
| Nfs3GetAttr | Get Blob Properties |
83+
| Nfs3SetAttr | Set Blob Properties (+ if file size is set, Nfs3Write is invoked) |
84+
| Nfs3Lookup | Get Blob Properties |
85+
| Nfs3Access | Get Blob Properties |
86+
| Nfs3Readlink | Get Blob Properties |
87+
| Nfs3FsStat | Get Blob Properties |
88+
| Nfs3Fsinfo | Get Blob Properties |
89+
| Nfs3Pathconf | Get Blob Properties |
90+
| **Directory Enumeration** | |
91+
| Nfs3ReadDir | List Blobs |
92+
| Nfs3ReadDirPlus | List Blobs |
93+
| **Read Operations** | |
94+
| Nfs3Read | Get Blob |
95+
| Nfs3ReadLink | Get Blob Properties + Get Blob of underlying file |
96+
| **Write Operations** | |
97+
| NFs3Write | Get Block List (1) + Put Block (x) + Put Block List (1) |
98+
| Nfs3Commit | No Operation |
99+
| **File Lifecycle** | |
100+
| Nfs3Create | Put Blob + Get Blob Properties |
101+
| Nfs3Remove | Delete Blob |
102+
| Nfs3Rename | Not supported (no 1-1 mapping) |
103+
| Nfs3Link | Not supported |
104+
| **Directory Management** | |
105+
| Nfs3MkDir | Put Blob + Get Blob Properties |
106+
| Nfs3RmDir | Put Blob |
107+
| **Others** | |
108+
| Nfs3SymLink | Put Blob + Get Blob Properties |
109+
| Nfs3MkNod | Not supported |
110+
| Nfs3Null | No Operation |
111+
112+
Cache hit/miss outcomes may trigger additional Get Blob Properties requests to obtain pre-operation and post-operation attributes. Blob Storage transaction counts for end-to-end operations (for example, file reading or writing) are influenced by several variables and can differ across iterations. To estimate transaction counts for representative workloads, use the Blob Storage logs for sample scenarios.
113+
79114
## General workflow: Mounting a storage account container
80115

81116
Your Linux clients can mount a container in Blob storage from an Azure Virtual Machine (VM) or a computer on-premises. To mount a storage account container, you have to do these things.

0 commit comments

Comments
 (0)