Я использую экземпляр базы данных Influx, который собирает данные из разных источников. Иногда эти данные просто неверны и должны быть исправлены, иначе последующие анализы не пройдут и / или приведут к неверным результатам. Тем не менее, SQL подобный диалекту InfluxDB не имеет возможности UPDATE, и «обновление» отдельных точек данных возможно только путем замены точек данных на те же временные метки, используя другую INSERT.
И для этой цели я ищу для способа массового редактирования выбранных точек данных внутри измерения, не прерывая процесс сбора данных, который может вставить новые точки данных во время редактирования. Вот что я попробовал:
- Я могу запросить подмножество измерения для редактирования, используя, например,
SELECT * FROM measurement WHERE time > ...
, используя HTTP API, и я получаю файл JSON, но нет (очевидного) способа чтобы вставить эту JSON (после ее редактирования) и заменить исправленные измерения. - Я могу экспортировать всю базу данных, используя
influx_inspect
, и повторно импортировать ее, но это слишком медленно. Таким образом, 200 МБ необработанных данных расходуется до> 1 ГБ данных линейного протокола, что слишком много для коррекции 2-3 точек данных.
Есть другие идеи? Я в порядке со скриптами и редактированием в текстовом редакторе, но я не в порядке с ручным созданием INSERT для каждой точки данных, которую нужно исправить.