InfluxDB とは?

InfluxDB

InfluxDB最新情報

NRIのOpenStandiaが提供するInfluxDB最新情報

OSSの保守サポートサービスの内容はこちら OSSの導入については、こちらのフォームからお問い合わせ下さい OSS全般の事例紹介はこちら

InfluxDBバージョンアップ情報

■2021-05-11
[VerUP]InfluxDB v2.0.6(リリース日:2021/04/29)
■2021-02-16
[VerUP]InfluxDB v2.0.4(リリース日:2021/02/08)
■2021-02-02
[VerUP]InfluxDB 2.0.3(リリース日:2020/12/14)
■2021-02-02
[VerUP]InfluxDB 2.0.1(リリース日:2020/11/10)
■2018-07-24
[VerUP]InfluxDB 1.6.0(リリース日:2018/07/05)
■2017-12-08
[VerUP]InfluxDB 1.4.2(リリース日:2017/11/15)
■2017-11-24
[VerUP]InfluxDB 1.4.1(リリース日:2017/11/13)
■2017-11-08
[VerUP]InfluxDB 1.3.7(リリース日:2017/10/26)
■2017-08-21
[VerUP]InfluxDB 1.3.2(リリース日:2017/08/04)
■2017-08-07
[VerUP]InfluxDB 1.3.1(リリース日:2017/07/20)

すべてを見る

更新日:2020-12-23

InfluxDBの概要

InfluxDBはオープンソースの時系列データベース(Time series database)です。時系列データベースとは、ログなどの時間を軸とした連続したデータを蓄積、検索することに特化して作られたデータベースです。IoT分野で発生する大量のセンサーデータやDevOpsでクラスタリングされたサーバ郡の出力する各種メトリックスやログを蓄積する用途において従来のデータベースよりも高いパフォーマンスを発揮します。

以前のInfluxDBは、他の多くの時系列データベースと同じく既存のプロダクトをストレージエンジンとして利用していました(InfluxDBの場合は、LevelDB,RocksDB,BoltDBなど)。
しかし、2015年10月にInfluxDBの開発元であるInfluxDataによってオリジナルのストレージエンジン Time-Structured Merge Tree (TSM)が開発され、それ以降はTSMがInfluxDBに採用されています。

TSMはApache HBaseなどで使われているLSM Tree(Log-structured merge-tree)の構造と似たものになっていますが、より時系列データの蓄積に適応したストレージエンジンになっています。時系列データ特有の性質を取り扱うことに最適化されているため、このストレージエンジンを用いることでInfluxDBの性能の向上を実現しています。

なお、InfluxDB CloudとInfluxDB Open SourceとInfluxDB Enterpriseの違いは、下記URLに記載されています。
https://www.influxdata.com/products/editions/

TOPに戻る

InfluxDBの主な特徴

  • 高い書込スループット
  • 高い読込スループット
  • 大量データの削除(期限切れデータなど)
  • データの更新と削除よりも登録と参照のパフォーマンスを優先している

パフォーマンス

InfluxData社は、自社のブログでElasticsearch, Cassandra, MongoDBなど時系列データベース以外の製品との性能比較においてInfluxDBが書込、読込、データ圧縮などの項目において時系列データを扱う上でどの製品よりも高いパフォーマンスを発揮しているとしています。

同じ時系列データベースのOpenTSDBとの性能比較でも高いパフォーマンスを発揮しているとしています

クライアントインタフェース

InfluxDBを操作するために2つのインタフェースが用意されています。1つは、CLI(コマンドラインインタフェース)で、シェルからinflux コマンドで呼び出します。

CLIでのアクセス例(時刻表示をrfc3339に準拠させる場合)
$ influx -precision rfc3339
Connected to http://localhost:8086 version 1.7.x
InfluxDB shell 1.7.x
>

もう1つのインタフェースははHTTPでアクセスするREST APIです。InfluxDBはデフォルトで8086ポートを開いてHTTPリクエストを受け付けるようになっています。また、リクエストのクエリ結果はJSON形式、CSV形式で取得できます。

REST APIでのアクセス例
curl -i -XPOST http://localhost:8086/query --data-urlencode "q=CREATE DATABASE mydb"

問い合わせは両インタフェース共に、InfluxQLというSQLに似たクエリ言語を使って行います。InfluxQLの文法はSQLとほぼ同じであるため、既存のSQLの知識があれば操作することが可能です。

下記URLに、InfluxQLに存在するコマンド一覧がございます。
https://docs.influxdata.com/influxdb/v1.7/query_language/spec/#queries

上記URLの通り、SELECT、INSERT、DELETEはありますが、UPDATEコマンドはありません。InfluxDBのドキュメントにおいてもCRUDは、CR-udでありud はほぼ無いことになっています。Deleteは存在しますが特定の1レコードの削除といった形ではなく、期限が切れたデータを一度に大量に削除するような使い方になることがほとんどです。

また、GROUP BYやCOUNTといった関数を用いることもできます。
使用できる関数一覧は下記URLの通りです。
https://docs.influxdata.com/influxdb/v1.7/query_language/functions#sidebar

Clustering(Enterprise版のみ)

InfluxDBのversion1.1までは、クラスタリング機能をアルファ版として提供していました。これは、クラスタリング機能はプロダクション環境で使用できるほど成熟していないためでした。
1.2からはこのクラスタリング機能が安定したレベルまで達しプロダクション環境で使用可能な位置づけになりましたが、クラスタリング機能はenterprise版(有料版)でのみ提供される機能となってしまいました。
InfluxData社(InfluxDBの開発元)はオープンソースビジネスを存続させるためにクラスタリング機能を必要とするような大規模システムを運用する企業から収益を得る選択肢を取ることにしたとしています。Ver1.2ではスタンドアローン版のみが無償で利用可能となっています。

TOPに戻る

InfluxDBの類似ソフトウェア

InfluxDBと同じ時系列データベースには下記のような製品があります。

  • OpenTSDB
    Hadoop/HBase上で稼働
  • KairosDB
    OpenTSDBのフォーク、ストレージエンジンにCassandraを使用
  • Prometheus
    システムメトリックスを蓄積してモニタリングすることに特化している
  • DalmatinerDB
    ストレージエンジンにRiakを使用

TOPに戻る

InfluxDBのライセンス

InfluxDBはMITライセンスのオープンソース・ソフトウエアです。MITライセンスのソフトウェアは無償で再配布、商用利用などが可能となっており、他のオープンソースライセンスに比べ制限が極めて緩いライセンスになります。

TOPに戻る

InfluxDBの動作環境

InfluxDBはGo言語で書かれています。Go言語のコンパイラーが存在するOSでコンパイルすることが可能です。

コンパイル済みのバイナリは下記のOS向けの物が提供されています。

  • 各種Liunx
  • MacOSX
  • Windows

TOPに戻る

InfluxDBのドキュメント

InfluxDBのドキュメントは下記URLから参照ください。
Version1.7

Version2.0 (beta版)

TOPに戻る

InfluxDBのダウンロード

各種OS向けのInfluxDBパッケージは下記URLからダウンロード可能です。 https://portal.influxdata.com/downloads

TOPに戻る

InfluxDBのサポート

NRIではお客様のご要望に応じて様々な支援ができるサービスをご用意しました。
詳細は下記ページをご確認ください。

TOPに戻る

OpenStandiaに関する
資料請求・お問い合わせはこちら

  • 資料請求
  • お問い合わせ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

  • OpenStandiaサポート対象オープンソース|50種類以上のOSSのサポートをご提供します。
  • 人気midPoint
  • 人気Keycloak
  • 注目MongoDB
  • ForgeRock AM(OpenAM)
  • ForgeRock IDM(OpenIDM)
  • MongoDB
  • Postfix
  • Apache HTTP Server
  • ZABBIX
  • PostgreSQL
  • Apache Struts
  • Apache Kafka
  • Apache Hadoop
  • Apache Spark
  • Spring Framework
  • Apache Tomcat
  • Solr
  • iBATIS
  • DRBD
  • MySQL
  • JBoss
  • Ruby on Rails
  • Jaspersoft
  • OpenLDAP
  • Apache log4j
  • Apache Subversion
  • ForgeRock DS(OpenDJ)
  • Pacemaker
  • Samba
  • Red Hat Enterprise Linux
  • Nginx
  • BIND
  • Dovecot
  • Pentaho
  • sendmail
  • Courier-IMAP
  • ForgeRock DS(OpenDJ)
  • Heartbeat
  • Hibernate
  • Hinemos
  • MyBatis
  • MySQL Cluster
  • Apache Axis2
  • Squid
  • OpenSSO