개요
네이버 로그를 지탱하는 힘 (DataStore 로그 저장소) 내용을 보고 간략히 내용을 정리해둔다.
소감
- 발표 내용이 자세하고 체계적이고 context에 대한 충분한 설명이 있어 좋았다.
- 필자가 운영하는 파이프라인 방식(kafka->ORC를 hdfs에 직접 기록) 대비 HBase를 넣었을때 TPS 및 reliability 에 조금은 의문점이 남는게 있고 presto 도입 부분이 기대되는 면이 있었다.
- 현재 필자가 운영하는 방식 NIFI로 Kafka->ORC(HDFS)->presto import(hive metastore 사용)->redash로 이어지는 로그저장 및 분석 시스템과 비교하며 들으며 재밌었다.
내용 요약
- HBase 로그저장 rowkey 설계
- salt + region + group + message_type
- salt로 hot spot 방지, 서비스부서 요구사항에 최대한 맞춰 RGM 제공
- CF는 보안정보, 필드, 원본으로 나눔
- 보안정보는 일정기간 이후 삭제 편의성 확보, 일부 필드만 읽는일이 많아 필드 CF 별도 저장, 원본 조회가 필요시 원본 CF 참조
- RGM 기반 producer/consumer 티켓 시스템으로 ACL 및 bandwidth 제어
- 로그 분석시스템
- hive가 중심점
- 성능 개선
- 필요시 가공테이블 제공(전수 조사로 자주 쓰는 패턴 분석 후 생성함)
- ORC로 column based scan의 이점 확보
- 날짜로 파티션, 검색어로 버킷팅
- 테즈 메모리 및 리듀서 메모리 의존도 튜닝
- external 테이블 활용
- 안전성(table drop)
- HDFS가 아니더라도 테이블화 가능
- 데이터 소스 변경 용이(external table A -> B)
- UDF 제공