Downsampling and upsampling data

Time Series Analysis in SQL Server

Maham Faisal Khan

Senior Data Science Content Developer

Data in nature

SELECT
    SomeDate
FROM dbo.SomeTable
SomeDate
2019-08-11 06:14:29.990
2019-08-11 11:07:37.633
2019-08-11 14:08:00.337
Time Series Analysis in SQL Server

Downsampling data

SELECT
    CAST(SomeDate AS DATE) AS SomeDate
FROM dbo.SomeTable
SomeDate
2019-08-11
2019-08-11
2019-08-11
Time Series Analysis in SQL Server

Further downsampling

SELECT
    DATEADD(HOUR, DATEDIFF(HOUR, 0, SomeDate), 0) AS SomeDate
FROM dbo.SomeTable

DATEDIFF(HOUR, 0, '2019-08-11 06:21:16') = 1,048,470

DATEADD(HOUR, 1048470, 0) = 2019-08-11 06:00:00

SomeDate
2019-08-11 06:00:00.000
2019-08-11 11:00:00.000
2019-08-11 14:00:00.000
Time Series Analysis in SQL Server

What about upsampling?

Downsampling

  • Aggregate data
  • Can usually sum or count results
  • Provides a higher-level picture of the data
  • Acceptable for most purposes

Upsampling

  • Disaggregate data
  • Need an allocation rule
  • Provides artificial granularity
  • Acceptable for data generation, calculated averages
Time Series Analysis in SQL Server

Let's practice!

Time Series Analysis in SQL Server

Preparing Video For Download...