728x90
반응형
1. 세그멘테이션 (Segmentation)
- 목적: 이벤트를 잘게 쪼개 검색 가능한 단위(세그먼트)로 만드는 것.
- 종류
- Major Segmenter → 문장을 큰 단어 단위로 나눔
- 예: 공백, 괄호, 특수문자 기준
- "Michael likes pizza" → Michael, likes, pizza
- Minor Segmenter → Major로 나눈 단어를 더 세부적으로 쪼갬
- 예: 이메일 주소 → abc@gmail.com → abc, gmail, com
- 즉, 검색 시 더 다양한 키워드 매칭이 가능해짐
- Major Segmenter → 문장을 큰 단어 단위로 나눔
👉 인덱싱 시점 & 검색 시점 모두 세그멘테이션이 적용된다.
- 인덱싱 시점: 디스크에 저장되는 형태 결정 (속도·용량·자동완성에 영향)
- 검색 시점: 쿼리 실행 속도와 결과의 정밀도에 영향
2. TSIDX (Time Series Index)
Splunk가 검색을 빠르게 할 수 있는 핵심 비밀무기!
- 구조:
- Lexicon (사전) → 데이터에 나오는 모든 고유 단어 목록
- Values Array (값 배열) → 각 이벤트의 메타데이터 & 위치 정보
예시
Raw Events:
0 Michael likes bacon
1 Dwight likes beets
2 Jim likes Jell-O
3 Michael likes pizza
- bacon → 이벤트 0
- Dwight → 이벤트 1
- Jim → 이벤트 2
- likes → 이벤트 0,1,2,3
- pizza → 이벤트 3
Values Array:
- 이벤트 0 → 파일 위치 offset=42
- 이벤트 1 → offset=78
- 이벤트 2 → offset=120
- 이벤트 3 → offset=146
3. 검색 과정
쿼리: likes AND pizza
- Lexicon 검색
- likes → 이벤트 (0,1,2,3)
- pizza → 이벤트 (3)
- 교집합 = 이벤트 (3)
- Values Array 확인
- 이벤트 3의 파일 offset=146
- Rawdata 접근
- 디스크에서 offset=146부터 읽어 결과 반환
👉 Splunk는 데이터를 전부 뒤지는 게 아니라, 사전+위치 인덱스를 활용해 원하는 부분만 빠르게 찾아낸다.
4. 포인트
- 세그멘터 설정 (segmenters.conf)은 검색 효율성에 직접적 영향
- 로그 특성(예: syslog, JSON 등)에 맞게 튜닝 가능
- TSIDX 파일이 손상되면 검색 속도 및 정확도에 문제 발생
- 필요 시 splunk rebuild로 재생성 가능
- 데이터량이 클수록 TSIDX의 역할이 중요
- 수억 건의 이벤트도 빠르게 검색할 수 있는 이유
📌 요약
- Segmentation → 데이터를 검색 단위로 쪼개는 과정 (검색 효율 UP)
- TSIDX → 단어 사전 + 이벤트 위치 인덱스로 구성
- 검색 원리 → “필요한 이벤트가 어디 있는지”를 바로 찾아가기 때문에 빠름
728x90
반응형
'Splunk' 카테고리의 다른 글
| [Splunk] Cluster Master & Buckets 핵심 정리 (0) | 2025.08.27 |
|---|---|
| [Splunk] 인덱서 클러스터(Indexer Clustering) (2) | 2025.08.26 |
| [ Splunk ] Event Processing (2) | 2025.08.24 |
| [ Splunk ] 버킷 매니페스트(manifest) (0) | 2025.08.21 |
| [Splunk] LDAP 연동 이해하기 (0) | 2025.08.21 |