NFS as FileStore

NFS can be turned ON by setting following properties in egov-filestore service

1 . isnfsstorageenabled=true

  1. source.disk=diskStorage

  1. disk.storage.host.url=<Main Domain URL>

  1. file.storage.mount.path=<NFS location example /filestore>

  1. iss3enabled=false (default this is enabled)

 

There are few Limitations and Concerns . Those are Listed or Answered below

Limitations

  1. The total size of the files of an NFS mount is limited to storage capabilities of the server. It is no longer the concerns as modern cpus can point/address very large volumes of data

  2. No high availability - What happens, if the server goes down? . Since it is microservice we can run multiple replicas for filestore service

  3. If there are many clients, there might be performance bottlenecks when they simultaneously try to read from or write to the server.

  4. Compress and Uncompressing is not implemented as of Now - Can be added as enhancement

  5. Encryption,Decryption not implemented - For SDC deployment, data security responsibility is with SDC only. - So it is a nice to have feature only.

  6. Number of files,size restriction based on FileSystem type is listed below. If it is ext4 it will not have any limitation of number of files per directory. Number of files Supported is good enough  (4,294,967,295). These are listed below

FAT32:

  • Maximum number of files: 268,173,300

  • Maximum number of files per directory: 216 - 1 (65,535)

  • Maximum file size: 2 GiB - 1 without LFS, 4 GiB - 1 with

NTFS:

  • Maximum number of files: 232 - 1 (4,294,967,295)

  • Maximum file size

    • Implementation: 244 - 26 bytes (16 TiB - 64 KiB)

    • Theoretical: 264 - 26 bytes (16 EiB - 64 KiB)

  • Maximum volume size

    • Implementation: 232 - 1 clusters (256 TiB - 64 KiB)

    • Theoretical: 264 - 1 clusters

ext2:

  • Maximum number of files: 1018

  • Maximum number of files per directory: ~1.3 × 1020 (performance issues past 10,000)

  • Maximum file size

    • 16 GiB (block size of 1 KiB)

    • 256 GiB (block size of 2 KiB)

    • 2 TiB (block size of 4 KiB)

    • 2 TiB (block size of 8 KiB)

  • Maximum volume size

    • 4 TiB (block size of 1 KiB)

    • 8 TiB (block size of 2 KiB)

    • 16 TiB (block size of 4 KiB)

    • 32 TiB (block size of 8 KiB)

ext3:

  • Maximum number of files: min(volumeSize / 213, numberOfBlocks)

  • Maximum file size: same as ext2

  • Maximum volume size: same as ext2

ext4:

  • Maximum number of files: 232 - 1 (4,294,967,295)

  • Maximum number of files per directory: unlimited

  • Maximum file size: 244 - 1 bytes (16 TiB - 1)

Maximum volume size: 248 - 1 bytes (256 TiB - 1)