InfluxDB 오픈 소스 분포 식 순서, 이벤트 및 지표 데이터베이스
6756 단어 influxdb
특징.
API
InfluxDB 는 두 가지 api 방식 을 지원 합 니 다.
Protobuf 아직 개발 완료 되 지 않 았 습 니 다. 홈 페이지 문서 가 없습니다.
http api 를 어떻게 사용 하여 조작 합 니까?
예 를 들 어
foo_production
이 데이터 베 이 스 를 일련의 데 이 터 를 삽입 하면 POST
이 /db/foo_production/series?u=some_user&p=some_password
에 요청 하고 데 이 터 를 body 에 넣 는 것 을 발견 할 수 있다.데이터 가 이렇게 보 입 니 다:
아래 의 "name": "events", 그 중에서 "events"는 하나의
series
, 관계 형 데이터베이스 와 유사 한 표 table 입 니 다.[
{
"name": "events",
"columns": ["state", "email", "type"],
"points": [
["ny", "[email protected]", "follow"],
["ny", "[email protected]", "open"]
]
},
{
"name": "errors",
"columns": ["class", "file", "user", "severity"],
"points": [
["DivideByZero", "example.py", "[email protected]", "fatal"]
]
}
]
형식 은 json 입 니 다. 한 개
POST
에서 여러 개 series
를 보 내 달라 고 요청 할 수 있 습 니 다. 각각 series
에 있 는 points
은 여러 개 일 수 있 지만 색인 은 columns
과 대응 해 야 합 니 다.위의 데이터 에는
time
열 이 포함 되 어 있 지 않 습 니 다. InfluxDB 는 스스로 추가 하지만 지정 할 수 있 습 니 다 time
. 예 를 들 어:[
{
"name": "response_times",
"columns": ["time", "value"],
"points": [
[1382819388, 234.3],
[1382819389, 120.1],
[1382819380, 340.9]
]
}
]
time 은 InfluxDB 에서 매우 중요 하 다. 왜냐하면 InfluxDB 는
time series database
InfluxDB 에 또 하나의 sequence_number
필드 는 데이터 베 이 스 를 유지 하 는 것 으로 my sql 과 유사 한 메 인 키 개념 이다.InfluxDB 추가 삭 제 는 http api 로 이 루어 지 며 정규 표현 식 으로 데 이 터 를 삭제 하 는 것 도 지원 하고 계획 작업 도 지원 합 니 다.
예 를 들 면:
보 내기
POST
요청 /db/:name/scheduled_deletes
, body 는 다음 과 같 습 니 다.{
"regex": "stats\..*",
"olderThan": "14d",
"runAt": 3
}
이 조 회 는 14 일 이상 의 데 이 터 를 삭제 하고 stats 로 시작 하 는 모든 데 이 터 를 삭제 하 며 매일 3: 00 AM 에 실 행 됩 니 다.
공식 문서 더 자세히 보기: http://influxdb.org/docs/api/http.html
검색 언어
InfluxDB 는 sql 과 유사 한 검색 언어 를 제공 합 니 다.
보아하니 이렇다.
select * from events where state == 'NY';
select * from log_lines where line =~ /error/i;
select * from events where customer_id == 23 and type == 'click';
select * from response_times where value > 500;
select * from events where email !~ /.*gmail.*/;
select * from nagios_checks where status != 0;
select * from events
where (email =~ /.*gmail.* or email =~ /.*yahoo.*/) and state == 'ny';
delete from response_times where time > now() - 1h
매우 쉽게 시작 할 수 있 고
Group By
, Merging Series
, Joining Series
도 지원 하 며 자주 사용 하 는 통계 함수, 예 를 들 어 max, min, mean 등 을 내장 합 니 다.문서: http://influxdb.org/docs/query_language/
창고.
상용 언어의 라 이브 러 리 는 모두 있 습 니 다. api 가 간단 하고 스스로 포장 하기 쉽 기 때 문 입 니 다.
InfluxdDB 는 많은 모니터링 소프트웨어 의 백 엔 드 로 서 모니터링 데 이 터 를 InfluxdDB
StatsD
, CollectD
, FluentD
에 직접 저장 할 수 있다.그리고 다른 시각 화 도 구 는 InfluxDB 를 지원 합 니 다. 그러면 InfluxDB 를 바탕 으로 편리 하 게 모니터링 플랫폼 을 구축 할 수 있 습 니 다.
InfluxDB 데이터 시각 화 도구
InfluxDB 는 시간 기반 데이터, 예 를 들 어 모니터링 데 이 터 를 저장 하 는 데 사 용 됩 니 다. InfluxDB 자체 가 Http API 를 제공 하기 때문에 InfluxDB 를 사용 하여 모니터링 데이터 저장 센터 를 편리 하 게 구축 할 수 있 습 니 다.
InfluxDB 의 데이터 전시 에 대해 공식 admin 은 매우 간단 한 도표 가 있 는데 이렇게 보인다.
프로그램 을 작성 하여 데 이 터 를 보 여 주 는 것 외 에 도 선택 할 수 있 습 니 다.
tasseo
tasseo, Graphite 를 위 한 라 이브 dashboard, 지금도 InfluxDB 를 지원 합 니 다. tasseo 는 간단 하고 설정 할 수 있 는 옵션 이 적 습 니 다.
Grafana
Grafana 는 순수한 html/js 응용 프로그램 으로 InfluxDB 를 방문 할 때 크로스 도 메 인 접근 제한 이 없습니다.데이터 원본 을 InfluxDB 로 설정 하면 되 고 나머지 작업 은 그래프 를 설정 하 는 것 이다.그 라 파 나 는 기능 이 매우 강하 다.ElasticsSearch 를 사용 하여 Dashboard 의 정의 파일 을 저장 하고 JSON 파일 (Save -> Advanced -> Export Schema) 을 내 보 내 고/app/dashboards 디 렉 터 리 에 업로드 할 수 있 습 니 다.
데이터 원본 설정:
datasources: {
influx: {
default: true,
type: 'influxdb',
url: 'http://:8086/db/',
username: 'test',
password: 'test',
}
},
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Grafana로 NetFlow v9 트래픽 분석라우터에서 내보낸 NetFlow 버전 9 레코드를 수집하여 트래픽 상황을 시각화하고 분석하는 시스템을 구축해 보았습니다. Grafana를 통한 NetFlow 트래픽 시각화 대시보드 가 적고, 상용 소프트웨어는 고가이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.