44 lines
1.2 KiB
SQL
44 lines
1.2 KiB
SQL
\c borders borders
|
|
|
|
CREATE TABLE tiles (
|
|
tile geometry NOT NULL,
|
|
count INTEGER NOT NULL DEFAULT 0
|
|
);
|
|
|
|
CREATE TABLE borders (
|
|
id BIGINT PRIMARY KEY,
|
|
parent_id BIGINT REFERENCES borders(id),
|
|
name VARCHAR(200),
|
|
geom geometry NOT NULL,
|
|
disabled boolean NOT NULL DEFAULT FALSE,
|
|
count_k INTEGER,
|
|
modified TIMESTAMP NOT NULL,
|
|
cmnt VARCHAR(500),
|
|
mwm_size_est REAL
|
|
);
|
|
CREATE INDEX borders_geom_gits_idx ON borders USING gist (geom);
|
|
CREATE INDEX borders_parent_id_idx ON borders (parent_id);
|
|
|
|
CREATE TABLE borders_backup (
|
|
backup VARCHAR(30) NOT NULL,
|
|
id BIGINT NOT NULL,
|
|
parent_id BIGINT,
|
|
name VARCHAR(200) NOT NULL,
|
|
geom geometry NOT NULL,
|
|
disabled boolean NOT NULL DEFAULT FALSE,
|
|
count_k INTEGER,
|
|
modified TIMESTAMP NOT NULL,
|
|
cmnt VARCHAR(500),
|
|
mwm_size_est REAL,
|
|
PRIMARY KEY (backup, id)
|
|
);
|
|
|
|
CREATE TABLE splitting (
|
|
osm_border_id BIGINT NOT NULL REFERENCES osm_borders(osm_id), -- reference to parent osm region
|
|
subregion_ids BIGINT[] NOT NULL,
|
|
mwm_size_est REAL NOT NULL,
|
|
mwm_size_thr INTEGER NOT NULL, -- mwm size threshold in Kb, 4-bytes INTEGER is enough
|
|
next_level INTEGER NOT NULL,
|
|
geom geometry NOT NULL
|
|
);
|
|
CREATE INDEX splitting_idx ON splitting (osm_border_id, mwm_size_thr, next_level);
|