[ 개요 ]
InfluxDB는 쓰기쿼리를 빠르게 처리하도록 설계된 시계열 데이터베이스(TSDB)이다. 기존 RDBS와 다르게 시간을 기준으로 데이터를 입력하므로 금융데이터, 로그데이터 등 시간에 따른 데이터를 분석하기에 적합하다. InfluxDB와 함께 Telegraf(모니터링 및 수집), Grafana(시계열데이터 시각화) 등과 함께 사용된다.
[ 설치 ]
InfluxDB 1.8
- Red Hat & CentOS
- Ubuntu
[ 설정파일 ]
/etc/influxdb/influxdb.conf
[ 실행 ]
$ influx -precision rfc3339
InfluxDB는 기본적으로 포트 8086에서 실행된다. -precision옵션은 타임스탬프의 포맷을 지정한다. 위 예에서 rfc3339는 (YYYY-MM-DDH:MM:SS.nnnnnnnZ)형식의 타임스탬프를 반환하도록 하는 옵션이다.
[ 예제 ]
구성요소
- Points : 시간값과 measurement, key-value tag와 field로 구성된 단위
- Measurement : RDBS에서 Table과 같은 개념
- Field : 인덱스되지 않은 column
- Tags : 인덱스된 column
- DB생성
> CREATE DATABASE mydb
> SHOW DATABASES
- 데이터쓰기
<measurement>[,<tag-key>=<tag-value>...] <field-key>=<field-value>[, <field2-key>=<field2-value>...] [unix-nano-timestamp]
> INSERT cpu,host=serverA,region=us_west value=0.64 //cpu measurement가 없다면 자동생성
> SHOW MEASUREMENTS //cpu measurement가 검색됨
- 결과
> SELECT "host", "region", "value" FROM "cpu"
name: cpu
time host region value
---- ---- ------ -----
2020-09-13T12:21:37.928191574Z serverA us_west 0.64
> SELECT * FROM /.*/ LIMIT1
> SELECT * FROM "cpu"
댓글 없음:
댓글 쓰기