Эффективный способ хранения высокочастотных (например, вибрационных) данных временного ряда - PullRequest
0 голосов
/ 03 декабря 2018

Мне нужно хранить много данных временных рядов, записанных на очень высоких частотах.

Я должен хранить для каждой точки данных:

Timestamp|Sensor type|Actual value

Теперь я использую метки времени вТочность наносекунды, например:

2018/10/20 5:41:41.000

Эти конкретные данные взяты при частоте 13 кГц, почти;Итак, за каждую секунду у меня есть значение больше 1к.Использованного разрешения недостаточно.

Одно «сырое» решение состояло в том, чтобы добавить дополнительное поле «порядок» к каждой точке данных, чтобы восстановить временной ряд в правильном порядке после извлечения.

Я использую InfluxDB и Chronograf / Kapacitor для визуализации / оповещения в реальном времени.Я хотел бы вставить данные (в линейном протоколе, кстати), чтобы Хронограф мог показывать хорошие графики.

Как мне это сделать?

1 Ответ

0 голосов
/ 04 декабря 2018

Точность InfluxDB по умолчанию составляет наносекунды - именно то, что, как вы заявляете, вам нужно.

В то время как временная метка, которую вы показали в качестве примера наносекунды - 2018/10/20 5:41:41.000 - примерно в миллион раз не ровнаблизко.

Другими словами, это миллисекунды.: -)

Так что я искренне не вижу здесь проблемы: вы просто начинаете собирать свои записи протокола линии с временной меткой наносекундной точности - вот и все!

Как, myveryswiftmeasurement,SensorType=precious1 actualvalue=1234.56 9223372036854775806

PS Только не забудьте пакетировать материал, (лучше) не пытайтесь писать каждую отдельную строку.

PPS При частоте 13 кГц вам, вероятно, даже не понадобятся наносекунды, точность в СШАдолжно быть достаточно.

PPPS Пожалуйста, дайте мне знать, если я вас неправильно понял, и уточните ваш вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...