Direct NFS: The #1 and Ultimate Network File Storage Solution for Oracle Databases
Direct NFS is a networking protocol that allows Oracle Database to directly access Network File System (NFS) storage without the need for an operating system. This can significantly increase Oracle workload performance and scalability, especially for workloads that demand high throughput and low latency.
What is Direct NFS?
That is an NFS client embedded within the Oracle Database software at the kernel level. It talks with the NFS server directly, bypassing the operating system’s NFS client. The overhead of the operating system’s NFS client is eliminated, which can boost performance by up to 30%.
It integrates the NFS client functionality directly in the Oracle software to optimize the I/O path between Oracle and the NFS server. This integration can provide significant performance improvements.
It supports NFSv3, NFSv4, NFSv4.1, and pNFS protocols to access the NFS server. It also simplifies, and in many cases automates, the performance optimization of the NFS client configuration for database workloads.
Starting with Oracle Database 12c Release 2, when you enable it, you can also enable the Direct NFS dispatcher. The Direct NFS dispatcher consolidates the number of TCP connections that are created from a database instance to the NFS server. In large database deployments, using Direct NFS dispatcher improves scalability and network performance. Parallel NFS deployments also require a large number of connections. Hence, the Direct NFS dispatcher is recommended with Parallel NFS deployments too.
That can obtain NFS mount points either from the operating system mount entries, or from the
Benefits of Direct NFS
There are several benefits to using that, including:
- Improved performance: It can provide significant performance improvements for Oracle workloads.
- Scalability: It can handle large workloads with high throughput and low latency.
- Simplified configuration: It simplifies the configuration of NFS access for Oracle Database.
- Reduced overhead: That eliminates the overhead of the operating system’s NFS client.
How Does It Work?
Direct NFS uses a new configuration file, ORACLE_HOME/dbs/oranfstab, to find out what mount points are available. This file is similar to the system’s mount tab file (/etc/mtab), but it is specific to Oracle Database.
It also uses a new NFS client library, libnfsodm11.so, to communicate with the NFS server. This library is located in the ORACLE_HOME/lib directory.
- NFS servers must have write size values (wtmax) of 32768 or greater to work with that.
- NFS mount points must be mounted both by the operating system kernel NFS client and Direct NFS Client, even though you configure Direct NFS Client to provide file service. If Oracle Database cannot connect to an NFS server using it, then Oracle Database connects to the NFS server using the operating system kernel NFS client. When Oracle Database fails to connect to NAS storage though that, it logs an informational message about the Direct NFS Client connect error in the Oracle alert and trace files.
- Follow standard guidelines for maintaining integrity of Oracle Database files mounted by both operating system NFS and by that.
How to enable Direct NFS
To enable it, you must first install the Oracle Database software. Then, you must execute the following commands:
mv libodm11.so libodm11.so_stub
ln -s libnfsodm11.so libodm11.so
After you have executed these commands, you must restart the Oracle Database instance.
Configuring Direct NFS
There are a few configuration options that you can set for that, including:
- The location of the ORACLE_HOME/dbs/oranfstab file
- The NFS server hostname or IP address
- The NFS mount point
- The NFS protocol (NFSv3, NFSv4, or NFSv4.1)
Troubleshooting Direct NFS
If you are having problems with that, you can check the Oracle Database alert log for more information. You can also use the following tools to troubleshoot that:
- The dNFS client trace tool (dNFStrace)
- The NFS sniffer tool (nfsstat)
- The nfsinfo tool
Direct NFS is a powerful tool that can improve the performance and scalability of Oracle Database workloads. If you are using NFS storage for Oracle Database, you should consider using it.