database and migrations

This commit is contained in:
Anton Martynenko
2025-10-28 11:07:07 +01:00
parent b9508137cb
commit f8d96ec40f
20 changed files with 471 additions and 1 deletions
@@ -0,0 +1,14 @@
CREATE TABLE tiles (
id UUID PRIMARY KEY,
zoom_level INT NOT NULL,
latitude DOUBLE PRECISION NOT NULL,
longitude DOUBLE PRECISION NOT NULL,
tile_size_meters DOUBLE PRECISION NOT NULL,
tile_size_pixels INT NOT NULL,
image_type VARCHAR(10) NOT NULL,
maps_version VARCHAR(50),
file_path VARCHAR(500) NOT NULL,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
@@ -0,0 +1,15 @@
CREATE TABLE regions (
id UUID PRIMARY KEY,
latitude DOUBLE PRECISION NOT NULL,
longitude DOUBLE PRECISION NOT NULL,
size_meters DOUBLE PRECISION NOT NULL,
zoom_level INT NOT NULL,
status VARCHAR(20) NOT NULL,
csv_file_path VARCHAR(500),
summary_file_path VARCHAR(500),
tiles_downloaded INT DEFAULT 0,
tiles_reused INT DEFAULT 0,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
@@ -0,0 +1,4 @@
CREATE INDEX idx_tiles_composite ON tiles(latitude, longitude, tile_size_meters);
CREATE INDEX idx_tiles_zoom ON tiles(zoom_level);
CREATE INDEX idx_regions_status ON regions(status);