@semki096

Как организовать базу дневных температур в mysql?

Задача.
1. Беру через api-сервис температуры воздуха в разных городах. И надо записывать их в базу данных Это надо делать каждый час.
2. Данные должны быть на один год, всё что старше надо удалять.

Вопрос - как схематично построить базу данных. Первое что пришло в голову - сделать отдельную страницу с городами. Потом сделать связанную таблицу с температурами (поле температура, время, id-города), связь через поле id-города.

Вопрос в том что таблица с температурами будет просто огромная, ведь каждій час будут писаться данные. Как это правильно построить и оптимизировать для быстрой выборки и выдачи?

Может ктото имеет схожий опыт и поделится?
  • Вопрос задан
  • 458 просмотров
Решения вопроса 2
Melkij
@Melkij
PostgreSQL DBA
Общее правило - сначала нормальная форма, потом денормализация. Не наоборот.

Возможно лучше вовсе time-series базы посмотреть.
Ответ написан
Лучше
Возможно лучше вовсе time-series базы посмотреть.

как написал Melkij, поскольку они больше оптимизированы и с точки зрения хранения и агрегации.
RRDtool, InfluxDB, Graphite, Prometheus.

2. Данные должны быть на один год, всё что старше надо удалять.

Round-Robin (циклические) БД держат данные всегда за фиксированное время назад.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы