2014-11-07 2 views
0

Я и 10 учеников делают большой проект, где нам нужно получать данные о температуре с аппаратных средств в узлах формы av, которые должны быть загружены и сохранены на сервере. Поскольку мы все инженеры встроенных систем и обладаем небольшими знаниями базы данных, я обращаюсь к вам, ребята.Как сохранить частые полученные данные в базе данных?

Я хочу получать данные от узлов, скажем, каждые 30 секунд. Таблица, в которой будут храниться эти данные в базе данных, быстро станет очень длинной, если вы сохраните: [nodeId, time, temp] в таблице. Есть ли у вас предложения по хранению данных по-другому?

Решение может состоять в том, чтобы хранить его, как указано в течение определенного периода времени, а затем «скомпрометировать» его каким-то образом какой-либо матрицей? Я все еще хочу получить старые данные.

ответ

1

В одной строке каждые 30 секунд не так много данных. Это 2880 строк в день на узел. Я однажды разработал базу данных, в которой ежедневно было 32 миллиона строк в день. Я не смотрел на это некоторое время, но я знаю, что в настоящее время он имеет более 21 миллиарда строк.

Единственное, что нужно иметь в виду, это то, что вам нужно подумать о том, как вы собираетесь его запрашивать, и убедитесь, что у него есть соответствующие индексы.

Удачи!

+0

Спасибо, именно то, что я хотел знать :) – JakobMillah

Смежные вопросы