Due to the current gap in continued funding from the U.S. National Science Foundation (NSF), the NSF Unidata Program Center has temporarily paused most operations. See NSF Unidata Pause in Most Operations for details.

[netcdfgroup] questions about netCDf file size.

Hi,

I'm very new to netCDF and I was surprised by the size of files generated by
netCDF.
Here is the header of the netCDF file :

ncdump -h cycle.nc
netcdf cycle {
dimensions:
        Regime = 3 ;

group: Regimes {
  variables:
        float T41(Regime) ;
        float TTR(Regime) ;
        float N1(Regime) ;

  } // group Regimes

group: Cycles {
  dimensions:
        Cycle = 5 ;
        SousCycle = 11 ;
  variables:
        byte Type(Cycle) ;
        short Nb_lignes(Cycle) ;
        short Indice(SousCycle) ;
        short Repeat(SousCycle) ;
        float Duree(SousCycle) ;

  } // group Cycles

group: Simulation {
  dimensions:
        Temps = UNLIMITED ; // (19168 currently)
  variables:
        float Temps(Temps) ;
        byte Regime(Temps) ;
        float T41(Temps) ;
        float e_p1(Temps) ;
        float Temps_Touche ;
  } // group Simulation
}

The generated file is 3.1 Mo and so 50% heavier than I had expected. Here is
how I calculated the expected file size :

     name  Dimension cell size Nb cell variable size    group: Regimes {
           float T41 Regime 32 3 96      float TTR Regime 32 3 96      float
N1 Regime 32 3 96    group: Cycles {



     byte Type Cycle 8 5 40      short Nb_lignes Cycle 16 5 80      short
Indice SousCycle 16 11 176      short Repeat SousCycle 16 11 176      float
Duree SousCycle 32 11 352    group: Simulation {



     float Temps Temps 32 19168 613376      byte Regime Temps 8 19168 153344
     float T41 Temps 32 19168 613376      float e_p1 Temps 32 19168 613376
  float Temps_Touche 32 1 32







  total size 1994616 Bits            soit 1.99 Mo

Is there anything I forgot ?

Besides, I would like to know how to if there is any efficient way to reduce
this size:

 - I've tried to use deflate_level=1 to 9 in nf90_def_var for the variables
in the simulation group but it didn't change the file size.
Is there anything else to do to to let netcdf compress data ? gzip seems to
compress the resulting file quite well.

 - Is there a way to store 16bits float to compress data (with loss) in
order to reduce the size of data where we have a limited resolution ?

Best regards,

-- 
Loic
  • 2010 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdfgroup archives: