최근에 회사에서 InfluxDB를 활용한 개발을 하게 되었다
InfluxDB? 시계열 데이터베이스? 처음 접해보는 기술이다..
그 속으로 들어가 보자!
시계열 데이터베이스란?
- 시간 처리에 최적화된 데이터 베이스
- SQL 기반 시계열 질의 지원
- 빠른 데이터 입력
- 트랜잭션 지원 및 데이터 변경이 불가
- 롤업 기능 지원
RDB vs 시계열 데이터베이스
RDBMS | InfluxDB |
Database | Database |
Table | Measurement |
Rows | Points |
PK or Indexed columns | Tags (String만 가능) |
Unindexed columns | Fields |
여기까지 봤을 땐 긴가민가하다..
자주 사용하는 RDB(MariaDB)랑 비슷한 감이 있고 용어만 달라지는 느낌이 든다
직접 사용해보자!
Influx 설치
- 다운로드 페이지 : https://portal.influxdata.com/downloads/
- 파일 구성
influxd.exe | influx.exe |
influx 서버 | influx 클라이언트 |
❗ 윈도우 cmd 창에서 바로 접근을 원할 시 환경변수 세팅 (InfluxDB window path)
시스템 환경변수 편집 → 환경 변수 → 시스템 변수 → Path → 편집 → 새로 만들기 → influx 폴더 경로를 집어넣고 저장
환경변수 세팅 후 influxd.exe를 실행 후 cmd 창에서 influx 타이핑 결과
🧐 자 이제 InfluxDB를 써볼 준비는 끝났다
이번 글에서는 InfluxDB를 간단하게만 사용해보자
📢 InfluxQL(CRUD) 쿼리를 보고 싶다면 다음 글로 바로 가면 될 것 같다!
Influx 사용
📢 내용 중 {}은 괄호 안의 값을 대입하라는 의미입니다
ex) use {데이터베이스 이름} → use _internal
1. 데이터베이스 조회
- 현재 influxDB에 데이터베이스를 조회한다.
- 기본으로 _internal이라는 데이터베이스가 존재하는 것 같다.
show database
2. 데이터베이스 선택
- 사용할 데이터베이스를 선택한다.
- use {데이터베이스 이름}
use _internal
3. measurement 조회
- 선택한 데이터베이스 내의 measurement(table) 조회한다.
show measurements
4. 데이터 조회 (select) 문
- 일반 RDB 쿼리와 동일한 것으로 보임
- 시계열 데이터베이스 특성상 select 쿼리 실행 시 timestamp가 자동으로 같이 조회됨
select HeapIdle, NumGC from runtime limit 3;
5. InfluxDB 종료
quit
or
exit
6. InfluxDB 실행 시 옵션 추가
- 데이터 조회(select) 시 읽기 쉬운 형태의 시간(timestamp)이 표현된다.
influx -precision rfc3339
7. 데이터베이스 생성
- create database {DB 명}
create database test_beom
📢 Influx 내 데이터베이스 중 회사에서 쓰이는 데이터베이스가 있으므로 해당 부분은 가리겠습니다
이번 글은 여기까지만 작성해보려고 합니다
다음 글은 InfluxQL(CRUD)에 대해서 다뤄보도록 하겠습니다!
감사합니다 :)
'Database > InfluxDB' 카테고리의 다른 글
InfluxDB - (3) 데이터 백업(backup) 및 복구(restore) (0) | 2022.06.04 |
---|---|
InfluxDB - (2) CRud 사용법(InfluxQL) (0) | 2022.06.03 |