gomoos_data

This database currently houses each observation of buoy data, just as does the NetCDF collection. The very last operation of a processing run is to deposit new observations in this database. Each table therein deals with a single datatype and its associated quality control variable, e.g. a table exists for salinity. This table consist of salinity for every mooring at every depth, for both cell phone and GOES datastreams. There are currently around 60 tables, but as there are about 130 distinct parameters measured by the processing system, not every parameter has its own table. For example, each buoy with an Aanderaa Current Meter on board produces measurements of temperature measured in raw engineering units that must be calibrated to actual temperature. There is little point in populating a database table with the raw engineering units measurements observations as no one has ever asked for that data. The actual temperature values do get stored in this database, however, and the raw engineering units observations are still archived in NetCDF format, which is a far more logical repository for it since it's stored alongside the calibrated temperature values.

It is the opinion of this humble author that a relational database is not a good platform for long term data archival. Nonetheless, for political reasons it exists, and will exist until the glorious revolution arrives, whereupon it will be first up against the firing squad and subsequently buried in a nameless grave.

Column NameTypeAttributesComments
mooring_idchar(5)NOT NULL, PRIMARY KEYAn example would be "F0101". The first character species a region. The second and third specify a location within that region. The fourth and fifth characters specify a deployment at that particular site.
buffer_namechar(20)NOT NULL, PRIMARY KEY e.g. "met", "doppler", "aanderaa", etc.
timedatetimeNOT NULL, PRIMARY KEY Time of a particular observation.
data float(10,4)   Value of a particular observation.
qualitysmallint(6)  Quality of the data observation. "0" means good data. Anything else means that it is suspect.
processing_type char(20)NOT NULL, PRIMARY KEY Either "raw" or "goes-raw". It's possible that other values could be present if a new datastream source came on line.
sensor_depthfloat(8,3)NOT NULL, PRIMARY KEY Depth at which the observation was made.
instrument_numbertinytintNOT NULL, PRIMARY KEY Usually 0 (means only one instrument of that kind on the buoy). Can be non-zero with multiple microcats, for example.
time_entrytimestamp(14)NULL, PRIMARY KEY, MUL Timestamp of last update.

An example entry in the salinity_data table might read like

mooring_idA0101
buffersbe37
time2001-07-10 04:00:00
data 32.024
quality0
processing_type raw
sensor_depth50.0
instrument_number2
timestamp20020906115755