Сохраняйте периодически собранные данные с python - PullRequest
1 голос
/ 17 апреля 2020

Я периодически получаю данные (каждые 15 минут) и храню их в массиве (точнее, в массиве numpy) в python, то есть примерно в 50 столбцах, количество строк меняется, обычно где-то около 100- 200.

Раньше я только анализировал эти данные и отбрасывал их, но теперь я хотел бы начать сохранять их, чтобы потом можно было создавать статистику.

Я подумал о том, чтобы сохранить их в CSV-файл, но мне показалось неправильным сохранять большие объемы таких больших 2D-массивов в CSV-файл.

Я рассмотрел параметры сериализации, в частности, pickle и numpy .tobytes (), но в обоих случаях я сталкиваюсь с проблемой - мне нужно отслеживать количество сохраненных массивов. Я видел, как люди пишут число первым в файле, но я не знаю, как я смогу продолжать увеличивать число, оставляя файл открытым (программа, которая собирает данные, работает практически без остановок). ). Постоянно открывать файл, читать число, переписывать его, пытаться до конца записать новые данные и снова закрывать файл, кажется не очень эффективным.

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

1 Ответ

1 голос
/ 17 апреля 2020

Сохранение в CSV-файле может быть не очень хорошей идеей, подумайте о доступности и доступности ваших данных. Использование базы данных будет лучше, вы можете легко обновлять свои данные и контролировать объем хранимых данных.

...