InfluxDB

InfluxDB — база данных временных рядов (TSDB), разрабатываемая компанией InfluxData.

Используется для хранения и извлечения данных временных рядов в таких областях, как мониторинг производственных процессов, метрики приложений, данные датчиков интернета вещей и анализ данных в реальном времени. Также поддерживается обработка данных из Graphite[2].

Актуальная версия InfluxDB серии 3.x написана на языке программирования Rust. Версии 1.x и 2.x были реализованы на Go.

Общие сведения
InfluxDB
Тип база данных временных рядов
Разработчик InfluxData
Написана на Rust
Операционная система кроссплатформенное ПО
Первый выпуск 24 сентября 2013
Последняя версия
Репозиторий github.com/influxdata/in…
Лицензия MIT, проприетарная
Сайт influxdata.com

История

Компания Errplane, поддерживаемая Y Combinator, начала разработку InfluxDB как проекта с открытым исходным кодом в конце 2013 года для задач мониторинга производительности и оповещений[3]. В ноябре 2014 года Errplane получила финансирование серии A в размере 8,1 млн долларов, возглавляемое фондами Mayfield Fund и Trinity Ventures[4]. В конце 2015 года компания сменила название на InfluxData Inc. В сентябре 2016 года InfluxData привлекла финансирование серии B в размере 16 миллионов долларов[5]. В феврале 2018 года InfluxData получила 35 миллионов долларов инвестиций на серии C под руководством Sapphire Ventures[6]. Ещё один раунд на 60 миллионов долларов был объявлен в 2019 году[7]. В феврале 2023 года был закрыт очередной раунд серии E на сумму 81 миллион долларов[8]. По состоянию на 2026 год, 12.05, имеются две версии InfluxDB, InfluxDB 3 Enterprise и InfluxDB 3 Core.

Технические особенности

InfluxDB предоставляет язык запросов, похожий на SQL, с встроенными функциями работы с временными данными, позволяя обращаться к структурам данных, включающим измерения, серии и точки. Каждая точка состоит из набора ключ-значение (называемого fieldset) и временной метки. Когда такие точки группируются по заданному набору ключ-значение (tagset), формируется серия. Серии, в свою очередь, объединяются в измерение по строковому идентификатору.

Значения могут быть 64-битными целыми числами, 64-битными числами с плавающей запятой, строками и булевыми значениями. Индексация точек производится по времени и tagset. Для измерений настраиваются политики хранения, определяющие правила агрегирования и удаления данных. Непрерывные запросы выполняются периодически и сохраняют результаты в целевом измерении.

События

Компания InfluxData регулярно организует мероприятия, связанные с InfluxDB, под названием InfluxDays. Это технические конференции, посвящённые развитию InfluxDB в технических и бизнес-аспектах. Обычно они проводятся раз в год в трёх городах: Нью-Йорк, Сан-Франциско и Лондон. На InfluxDays представлены различные темы — от докладов по программной инженерии и разработке до практических и бизнес-ориентированных семинаров. Компании демонстрируют способы применения InfluxDB.

Протокол передачи данных

InfluxDB принимает данные по HTTP, TCP и UDP. Определён строковый протокол передачи данных, совместимый с Graphite, в следующей форме:

measurement(,tag_key=tag_val)* field_key=field_val(,field_key_n=field_value_n)* (nanoseconds-timestamp)?

Лицензирование

Вкладчики InfluxDB обязаны предоставлять компании InfluxData Inc. права лицензирования своих вкладов и остального ПО любым образом, в том числе под закрытой лицензией. Соглашение о лицензировании вкладчика (CLA) заявляет, что не является уступкой авторских прав[9].

Закрытые компоненты для кластеризации

В мае 2016 года компания InfluxData объявила, что компоненты кластеризации InfluxDB будут распространяться только в виде закрытого программного обеспечения для обеспечения устойчивого финансирования развития проекта[10]. Реакция сообщества была неоднозначной, некоторые посчитали это примером политики «bait and switch»(с англ. «приманка и подмена»)[11].

Изменения в открытой части с выходом InfluxDB 3

InfluxDB 3 Core — новое открытое решение от InfluxData, изначально предназначенное как «edge data collector», а не прямой функциональный преемник InfluxDB OSS v1 и v2. InfluxDB 3 Core ограничен пятью базами данных и не включает механизм компакции данных для ускорения исторических запросов. Для замещения функциональности OSS v1 и v2 в коммерческом использовании требуется приобретение лицензии на InfluxDB 3 Enterprise, однако бесплатная версия InfluxDB 3 Enterprise доступна для энтузиастов и домашнего применения.

Примечания

  1. Release 2.5.1 — 2022.
  2. James Turnbull. The Art of Monitoring : [англ.]. — James Turnbull, 2014-12-01. — P. 206–. — ISBN 978-0-9888202-4-1.
  3. Lardinois, Frederic Y Combinator-Backed Errplane Launches Comprehensive Performance Monitoring And Alert Service For Web Apps (англ.). TechCrunch (18 марта 2013). Дата обращения: 3 августа 2021. Архивировано 4 мая 2023 года.
  4. Miller, Ron Errplane Snags $8.1M To Continue Building Open Source InfluxDB Time Series Database (англ.). TechCrunch (8 декабря 2014). Дата обращения: 7 сентября 2016. Архивировано 4 декабря 2023 года.
  5. Mannes, John InfluxData closes $16 million Series B led by Battery Ventures to organize IOT data (англ.). TechCrunch (21 сентября 2016). Дата обращения: 13 октября 2016. Архивировано 17 ноября 2024 года.
  6. Miller, Ron. InfluxData scores $35 million Series C to expand time series database business (англ.), TechCrunch. Архивировано 15 января 2025 года.
  7. Notice of Exempt Offering of Securities (англ.). US Securities and Exchange Commission (13 февраля 2019). Дата обращения: 3 августа 2021. Архивировано 3 августа 2021 года.
  8. InfluxData Closes Series E Round and Raises $81 Million in Capital (англ.). InfluxData Inc. (8 февраля 2023). Дата обращения: 4 октября 2024. Архивировано 15 августа 2025 года.
  9. Individual Contributor License Agreement (англ.) (5 февраля 2018). Архивировано 23 ноября 2018 года.
  10. Update on InfluxDB Clustering, High-Availability and Monetization (англ.). GitHub. influxdata (10 марта 2016). Дата обращения: 8 августа 2016. Архивировано 6 августа 2025 года.
  11. I've advocated for and implemented several InfluxDB installations in production ... (англ.). Hacker News (11 марта 2016). Дата обращения: 8 августа 2016. Архивировано 29 сентября 2023 года.