InfluxDBのネット情報を調べました
1.概要
時系列のdatabaseであるInfluxDBに関して少し調べてみました。時系列データの処理性能に優れたdatabaseとのことです。まず、ネット上の評価から調べてみることにしました。その内容を記述します。
2.詳細
参考資料によるとRDBがTableとRowとColumnを利用するのに対して、InfluxDBはmeasurementとpointとTimeとTagとFieldを利用します。少し複雑な感じです。pointに含まれる要素がTime以外は必須でない点が特徴のようです。
RDBはCRUD(Create,Read,Update,Delete)の操作ができますが、InfluxDBはCR(Create,Read)でUD(Update,Delete)は制限された機能しか利用できません。
RDBの操作はSQLですが、InfluxDBの操作はInfluxQLとFluxがあり、InfluxQLはSQLに似ています。私が調べた範囲ではInfluxDB v1はInfluxQL、InfluxDB v2はFluxを利用するのが基本のようです。
DockerHubのInfluxDBを調べるとv1系の方が利用されている気がします。v2系もリビジョンは上がっていますが、主流化になっていな気がします。v3はenterpriseと記述されているので有償かもしれません。拡張性のあるクラスタ構成は有償版でサポートされるとの記載もありました。
気になった点はInfluxDBには上限が設定されており、系列の総数がデフォルトで100万に制限されているようです。 この上限を増やすことはできますが、系列数がこの上限を超えるとのパフォーマンスが低下するとのことです。時系列データは秒単位で24時間処理すると3600*24=86400件、100万件に達するには1000000/86400=11.57日となり、余りにも短い気がします。
InfluxDBとPostgreSQLの性能評価の参考資料を参照した範囲では、InfluxDBが汎用的な処理に優れている気はしません。時系列データを活かした処理に利用すると性能を発揮する気がしました。
参考
RDBエンジニアから見たInfluxDB
https://www.sraoss.co.jp/wp-content/uploads/files/event_seminar/material/2020/dbts068_session_RDB.pdf
influxdb
https://hub.docker.com/_/influxdb
時系列DBに入門しつつ、パフォーマンスを計測してみる(InfluxDB v2 vs PostgreSQL v15)
https://tech-blog.mitsucari.com/entry/2025/05/19/135934
コメント
コメントを投稿