사용자 도구

사이트 도구


database:influxdb

문서의 이전 판입니다!


InfluxDB

Install / Docker

docker run --name=influxdb -p 8086:8086 -v influxdb:/var/lib/influxdb influxdb
  • 환경변수 등으로 설정할 수도 있고, config 파일을 마운트하여 설정도 가능하다.
  • CLI 툴을 실행하려면
# 앞서 생성한 docker 컨테이너에서 실행
docker exec -it influxdb influx
 
# 혹은 별도 컨테이너로 앞서 생성한 docker 에 접속
docker run --rm --link=influxdb -it influxdb influx -host influxdb

기본명령

데이터베이스

create database <dbname>
use <dbname>
show databases

measurement

  • RDB의 테이블과 비슷한 역할.
  • 생성할 필요 없다. 즉시 사용하면 된다.
  • Schemaless 이다. tag(RDB의 컬럼개념)를 추가 insert하면 자동 추가된다.
# insert - insert시점의 시간 정보가 함께 들어감. UTC 기준 nanoseconds
insert <measurement이름>,host=server01,region=korea value=5.5
 
# 메저먼트 목록보기
shoe measurements
# select
select * from <measurement이름>
 
## 결과
name: memory
time                host     region value
----                ----     ------ -----
1569475638653879967 server01 korea  5.5
# 태그 키 목록보기
show tag keys
 
# 필드 키 목록 보기
show field keys
  • select 조회 조건은 항상 tag key 를 기준으로 한다. 그 결과로 필드 키의 값들을 가져오는 것이다.

REST API

조회

curl -G 'http://localhost:8086/query?pretty=true' \
    --data-urlencode 'db=<db이름>' \
    --data-urlencode "q=SELECT * FROM <measurement이름> where host='server01'"

INSERT

curl -i -XPOST 'http://localhost:8086/write?db=<db이름>' --data-binary '<measurement이름>,host=server01,region=us-west value=0.65'

참조

database/influxdb.1569477054.txt.gz · 마지막으로 수정됨: 2019/09/26 14:50 저자 kwon37xi