본문 바로가기

DBMS

[influxDB] 설치 및 연결하는 방법 (window)

influxDB 서버 접속 및 조회 테스트를 위해 로컬에 설치해보았다.

직접 데이터를 쌓기 위함이 아니라 단순 조회용이기 때문에 아주 깊이 있는 이해를 토대로 하지는 않았다. 

 

influxDB란?
오픈 소스 시계열 데이터베이스(TSDB:Time Series DataBase)이며 Go 언어로 작성되었다.
일정한 주기로 데이터를 처리 및 삭제하는 기능이 있어 대량의 시계열 데이터를 보다 편리하게 처리할 수 있다.

 

 

1. influxDB 설치

https://portal.influxdata.com/downloads/

 

Downloads

Telegraf open source data collector Telegraf is a plugin-driven server agent for collecting and sending metrics and events from databases, systems, and IoT sensors. Telegraf is written in Go and compiles into a single binary with no external dependencies,

portal.influxdata.com

링크로 이동하여 version과 Platform을 선택해준다.

 

아래 CLI 부분 중 wget 뒤에 오는 url을 웹브라우저 주소창에 입력하면 파일을 다운로드 한다.

 

다운로드 한 zip 파일을 압축 해제하면 설치는 완료이다.

 

 

2. 서버 실행

influxd.exe를 실행하면 influx 서버가 실행되는 것이다. 필요에 따라 이 프로그램을 실행/종료하면 된다.

 

 

3. 데이터베이스 생성 및 사용

influx.exe를 실행하면 influxDB를 사용할 수 있는 콘솔이 뜬다.

기본 port는 8086이다.

 

CREATE DATABASE [dbName]

데이터베이스 생성 쿼리문을 입력한다.

 

SHOW DATABASE

생성된 데이터베이스 목록을 확인해본다.

처음 데이터베이스를 생성한 후 확인해보면 _internal과 생성한 DB 두 개가 보일 것이다.

 

USE [dbName]

생성한 데이터베이스를 사용하기 위한 쿼리문을 입력한다.

 

다음은 데이터를 입력해야 하는데 익숙한 개념과는 차이가 좀 있어서 정리가 필요하다.

시계열 DB를 관계형 DB와 비교해보면 아래와 같다. 

RDB influxDB
table measurement
column key
indexed column tag
unindexed column field
row point

measurement에 데이터가 쌓이면 각각의 데이터는 point가 된다. point는 여러 key를 가지게 되는데 여기에 tag, field 가 있다. 

 

INSERT [MeasurementName],[tag1=tagData1],[tag2=tagData1] [field1=fieldData1],[field2=fieldData2]

데이터 저장 쿼리문을 입력한다.

콤마 사이에는 공백을 넣지 않으며 tag와 field 사이에는 공백이 한 칸 있다.

 

SELECT * FROM measurementName
DELETE FROM measurementName [WHERE]

저장된 데이터를 확인하는 조회 쿼리나 데이터를 삭제하는 쿼리는 RDBMS와 동일하다.

 

DROP MEASUREMENT [measurementName]
DROP DATABASE [dbName]

데이터베이스나 measurement를 삭제하고 싶다면 DROP을 사용한다.