I am currently writing a caching system that will hold serialized (json) data on disk and in memory in order to reduce I/O load on a database.
The system will work by holding the last X number of accessed files in memory and read other files from disk.
I have read that there are systems out there that reduce I/O load on nfs (which I may use in the future) systems by opening files by inode.
My questions are:
No, there is no user-accessible way to open files by inode, because doing so would, in some cases, allow users to bypass filesystem ACLs.
Yes. Same reason.
Most competent NFS clients, including the Linux kernel, will cache stat results locally.