Здесь как минимум нужно немного залезть в предметную область и ответить себе на вопросы (до таблиц и полей):
- что такое "погода", чем она измеряется, какие у нее характеристики, есть ли табличные данные: типа привязки к местности (город, район и т.д.), таблицы комфорта (комфортно не очень, не комфортно) или влажности (сухо, влажно, мокро и т.д.)?
- тоже самое расписываем для прогноза.
- теперь по отчетам, какие типы отчетов планируются ( за день по местности, пелевантность по прогнозу и т.д.).
Что касается отчетов, то они бывают (обычно) двух типов.
Одни формируются простой выборкой из базы данных с агрегацией - это простые агрегированные отчеты (средняя температура за час, или минимум/максимум за период по местности). Для таких отчетов обычно не нужно создавать таблиц и хранить промежуточные данные, если только не для ускорения предоставления и не в целях архивации (например подсчет и сохранение средней температуры день/ночь ежедневно по окончании суток).
Вторые - аналитические. Например средняя ошибка в прогнозах за одинаковые периоды по местностям. Это те отчеты, которые требуют агрегации нескольких выборок, здесь приходится создавать промежуточные таблицы с результатами выборок, и уже по ним формировать выходные данные ( как нахождение второй и третьей производных функций).
В общем, сначала описываете СЛОВАМИ что у вас есть на входе по погоде и температуре, и какие отчеты хотелось бы получить. А уже из этого делаете модель данных под простые отчеты, и в самом конце занимаетесь аналитикой. Также сразу позаботьтесь об объемах данных, вдруг их придется шардировать, архивировать и т.д..
Наводящие вопросы я задал. Отвечайте, двинемся дальше.