7. LOG 테이블 활용
로그를 저장하는 것과 필요한 로그를 찾아내는 것은 다른 일입니다. 장애를 분석하다 보면 “이 시각은 발생 시각인가, 수집 시각인가?”, “메시지에 있는 단어가 왜 검색되지 않는가?”처럼 입력할 때는 생각하지 못했던 문제를 만나게 됩니다.
이 장에서는 LOG 테이블을 선택하고 설계하는 단계부터 입력, 검색, 보존 관리까지 연결해서 살펴봅니다. 명령을 실행하는 방법뿐 아니라 결과를 확인하는 기준도 함께 익혀 보세요. LOG는 원본 이벤트를 계속 추가하는 모델입니다. 저장한 행을 반복해서 수정하는 업무 테이블과는 사용법이 다릅니다.
이 장의 구성
처음이라면 개요와 스키마를 읽고 생성·입력·조회를 순서대로 따라가는 편이 좋습니다. 시간 조건이 헷갈리면 7.10을, 메시지 검색이 목적이라면 7.11을 먼저 읽어도 됩니다.
| 절 | 읽고 나면 할 수 있는 일 |
|---|---|
| 7.1 개요와 사용 기준 | LOG와 다른 테이블의 용도 구분 |
| 7.2 테이블 구조와 스키마 | 발생 시각·검색 필드·원문 분리 |
| 7.3 생성, 변경, 삭제 | 기존 데이터를 확인하며 스키마 변경 |
| 7.4 데이터 입력 | INSERT·Append·파일 적재 경로 선택 |
| 7.5 조회와 분석 | 시간 범위 조회와 기준 정보 조인 |
| 7.6 인덱스와 성능 | 인덱스 선택과 실행 계획 확인 |
| 7.7 운영과 데이터 생명주기 | 삭제 경계 확인과 보존 정책 적용 |
| 7.8 제약, 오류, 문제 해결 | 증상에서 원인과 조치 찾기 |
| 7.9 활용 패턴과 시나리오 | 애플리케이션 로그 입력·검색·집계 |
| 7.10 _arrival_time 시간 모델 | 자동 시각·명시 시각·역전 입력 구분 |
| 7.11 텍스트 검색과 KEYWORD 인덱스 | 검색 방식에 따른 결과 차이 이해 |
| 7.12 네트워크 타입 조회 | IPV4·IPV6 주소와 범위 조회 |
실습 환경
이 장의 예제는 DBMS 8.7 문서 기준이며, 별도 표시가 없는 SQL 실습은 Standard Edition의 검증용 환경을 기준으로 합니다. 테이블과 인덱스를 만들 수 있는 계정을 사용하세요. Cluster 환경은 Edition별 차이와 해당 운영 절차를 함께 확인해야 합니다.
실습 객체는 ch7_로 시작합니다. 각 절에서 필요한 테이블을 직접 만들기 때문에 다른
절을 실행하지 않아도 따라갈 수 있습니다. 같은 절을 재실행할 때는 마지막 정리 SQL까지
실행했는지 확인하세요. 의도적으로 실패하는 SQL은 정상 실습과 분리해 두었습니다.
주의: DELETE, TRUNCATE, DROP은 데이터를 지우는 명령입니다.
예제 이름을 운영 테이블 이름으로 바꾸어 실행하지 마세요.
실습 결과가 다르다면 실행한 SQL과 실제 결과를 함께 살펴보세요. 어느 단계부터 차이가 났는지 확인하면 원인을 훨씬 좁히기 좋습니다.