GRIB2 builds upon many of the features of GRIB, enhancing the utility and flexibility of the code form. GRIB2 can be considered to be divided into two kinds of information--the actual grid of data to be compressed and "transmitted" and the information describing the data grid (the metadata). The metadata portion of GRIB2 is more flexible than that of GRIB. While the structure of each section is rigidly defined, there is also a "local use" section that allows a free format for whatever data the user wishes to include.
GRIB2 defines three "packing" or "compression" methods, while GRIB embraces only two. The first is called "Simple" and is the same in both GRIB and GRIB2. The second is called "Complex", and while the concept behind this data compression scheme is the same between the two versions of GRIB, GRIB2 offers a more efficient methodology of processing missing values. The third packing method, offered only by GRIB2, uses the "Complex" scheme in conjunction with the boustrophedonical ordering of data points and second order spatial differencing to achieve better compression.
Supplementary URL: