TimeScale Training

From Ian Doob Technology
Revision as of 16:50, 13 April 2025 by Ian.readman (talk | contribs) (Created page with "== Setup == <pre> SET search_path = "$user", public, "timescaledb_information"; SET timezone TO 'Europe/Berlin'; \dv timescaledb_information.* </pre> <pre> DROP TABLE IF EXISTS metrics; CREATE TABLE metrics (id integer PRIMARY KEY GENERATED ALWAYS AS IDENTITY, device_time timestamptz NOT NULL, device_id integer, cpu_usage numeric); </pre> == Create Hypertable == <pre> SELECT create_hypertable('metrics', by_range('device_time'));...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Setup

SET search_path = "$user", public, "timescaledb_information";
SET timezone TO 'Europe/Berlin';

\dv timescaledb_information.*
DROP TABLE IF EXISTS metrics;
CREATE TABLE metrics (id integer PRIMARY KEY GENERATED ALWAYS AS IDENTITY, 
                      device_time timestamptz NOT NULL, 
					  device_id integer, 
					  cpu_usage numeric);

Create Hypertable

SELECT create_hypertable('metrics', by_range('device_time'));
ERROR:  cannot create a unique index without the column "device_time" (used in partitioning)
HINT:  If you're creating a hypertable on a table with a primary key, 
       ensure the partitioning column is part of the primary or composite key.