By: Karl Tarbet

Introduction

In this article we will describe HEC-DSS, how it is used, and how HEC-DSS is different from HEC-DSSVue?

  • DSS = Data Storage System
  • DSSVue = Data Storage System Visual Utility Engine

HEC-DSS is a software library that allows efficient storage of water resources related data in a file. Since most HEC products use DSS Files, sharing data between different products is often done using DSS files. For example, a hydrograph computed by HEC-HMS can be saved to a DSS file, then used by HEC-ResSim as inflow to a reservoir.

Since HEC-DSS is a library, you do not use it directly, unless you are a programmer; instead, you use software such as HEC-DSSVue to interact with a DSS file – a custom database format. If you are a programmer there are Application Programming Interfaces (APIs) for Java, .NET, etc. If you are a programmer (or not afraid of looking at code) go over to GitHub and look at: https://github.com/HydrologicEngineeringCenter/hec-dss.

Some of the most common data types that are stored in a DSS file include:

  • Time series
  • Grids
  • Paired Data (rating tables)

Time Series

Time Series data varies over time.

For example, the amount of water flowing in the Mississippi River, Figure 1, varies throughout the year.

Flow time-series

Figure 1. Flow time-series for the Mississippi River at Chester, IL.

Gridded Data

Gridded Data represents values over an area.

Note: Storing grids in DSS files is useful for data sharing. However, there is a potential future for HEC products to support gridded data without requiring using DSS as an intermediate format. For example a recent Vortex article suggested using various gridded data sets directly, and products such as the Cumulus web service internally files in the widely accepted GeoTiff format, and convert to DSS as a convenience. 

HEC-HMS and HEC-MetVue are programs designed specifically for working with gridded data, and other spatial data, with a focus on precipitation and other weather related data (Figure 2).

Precipitation grid

Figure 2. Annual precipitation change gridded data from the National Oceanic and Atmospheric Administration (NOAA).

Paired Data

Paired Data is a table, like an excel spreadsheet, but focused on numeric data. Rating tables are a type of paired data, that relate flow rates to the depth of water at a given location. The example provided in Figure 3 is from USGS: https://waterdata.usgs.gov/nwisweb/get_ratings?site_no=13032500&file_type=exsa.

Stage-discharge paired data

Figure 3. Stage-discharge paired data example.

Using HEC-DSSVue, you can tabulate the rating curve above to the image in Figure 4, below.

Example tabulated rating curve data.

Figure 4. Example of tabulated rating curve displayed using HEC-DSSVue..

What is the Difference Between DSS Version 6 and DSS Version 7 Files?

There have been many versions of HEC-DSS since its invention in 1979. Currently HEC applications are migrating to DSS Version 7.  This update to Version 7 allows you to store more data, and additional types of data. The Table 1, below, lists the most important differences between DSS Version 6 and Version 7:

Table 1. Important differences between DSS Version 6 and Version 7.
FeatureDSS6DSS7
CatalogSeparate .dsc
catalog file
Catalog is faster, with new search methods, and internal to DSS7 file
Extended datesYear: 0001 to 9999Year: –5,873,711 to 5,879,610
File efficiency
More efficient storage. Some files are 50% smaller for the same data
Max file size8GBTested up to 125GB (can go larger)
Paired dataLimits on sizeAny length of paired data, with support for multiple curves
PathnamesUpper case 'FLOW'Case insensitive 'Flow'
Programming language DSS is built withFORTRANC (with FORTRAN to also support DSS 6 alongside DSS 7)
Pseudo intervals (~1Day)n/aStored as irregular but typically follows regular pattern.
ThreadingSingleMulti readers
Time series ensembles
The F part can hold up to 128 characters to better support features such as collections using C:xxxxxx| where xxxxxx is the collection sequence.  For example: /YUBA/SMARTSVILLE/FLOW/01JAN1997/1HOUR/C:000042|OP A/
Time series profilesn/aAllows storing/plotting data such as water temperature profile. For example water temperature time series at different depths stored as a package (time series of time series)
Un-deleteDeleted records are marked unused (and could be restored)Cannot un-delete. However DSS7 files often have an on-disk size much smaller that DSS6.

Summary

In this article we gave a brief description of HEC-DSS, how it is used, and some example types of data that are typically stored in DSS files. In a future article, we will discuss how to get your data into a DSS file using tools such as the new HEC-DSSVue Excel Import tool. You can access HEC-DSS and HEC-DSSVue training resources (user manuals and hands on workshops) from https://www.hec.usace.army.mil/confluence/dssdocs

Last Modified: 2023-06-07 15:37:48.15