ݺߣ

ݺߣShare a Scribd company logo
Impala 퍼포먼스 개선



 Simplex Internet / Research Institute / Jeong, Ki-Chul
                                            2013. 4. 10
권장되는 하드웨어 사양
CPU
•   Intel - Nehalem (2008년 발매) 이후 모델
•   AMD - Bulldozer (2011년 발매) 이후 모델
•   오래된 CPU에서도 동작하지만...
•   SSE4.2 Instruction set 사용
Memory
• 32기가 이상
Storage
• 10개 이상의 디스크
• I/O 속도가 중요한 경우도 있음
• 데이터 보관을 위한 충분한 디스크 공간
IMPALA 설정하기
Short-Circuit Reads
• 파일시스템으로부터 로컬데이터를 직접 읽
  을 수 있게 허용
• 복사본의 수를 최소화
Block Location Tracking
• 어떤 디스크 데이터 블록들이 어디에 위
  치 되었는지 알 수 있도록
• 디스크들을 더 잘 활용할 수 있도록
Native Checksumming

• 최적화 된 native check-summing library를
  사용
Short-Circuit Reads


  Block Location Trac
  king

  Native Checksumm
  ing


Cloudera Manager를 통해 설치하면 기본으로 설정됨
IMPALA 퍼포먼스 테스트
block locality tracking 정보
                                를 사용하는 것




Impala 설정 값 체크
웹 UI를 이용해서 체크
http://<hostname>:<port>/varz
기본 포트 : 25000
Data locality 체크
쿼리 실행           로그 확인




                 SimpleScheduler locality가
                100%보다 작다면 impalad가
                동작되지 않는 노드가 있는 것
IMPALA 로그
Log Message                                                  Interpretation

Unknown disk id. This will negatively affect performance.
                                                             Tracking block locality가 활성화 되지 않은 상태이다.
Check your hdfs settings to enable block location metadata
Unable to load native-hadoop library for your platform...
                                                             Native check-summing이 활성화 되
using builtin-java classes where applicable




                       쿼리를 실행했을 때 앞에서 설명한 설정이 되어있지 않을 경우 나타
                       나는 로그 메세지
퍼포먼스 관련 FAQ
Impala는 캐싱을 사용하는지?
• 데이터 캐싱을 하지 않지만 메타데이터는
  캐싱함
• 두번째 실행된 쿼리가 빠르지만 이는 OS
  버퍼 캐시에 데이터셋이 캐시되었기 때문
Impala의 aggregation 전략
• 오직 in-memory hash aggregation
호스트를 늘리면 퍼포먼스에 도움이
       되는지?
• 된다.
• 호스트의 숫자를 통해 규모를 늘림(?)
퍼포먼스 향상 방법은? (개발당시)
• 맵리듀스의 비효율적인 요소 사용을 자제
• 최신 하드웨어 기술의 이점을 활용한 효율
  적인 실행엔진 사용
결론
• Cloudera Manager를 통해 설치하면 설정
  을 통한 튜닝포인트가 없다.
  오히려 설정 변경 시 데몬 시작이 불가함
• 퍼포먼스 개선은 파티션 또는 테이블 구조
  를 최적화(Index는 지원 안 함)
돈은 거짓말을 하지 않는다!!!
성능은 하드웨어 사양과 호스트 개수에 비례
Reference
• Installing and Using Cloudera Impala
• Impala Frequently Asked Questions
Thanks!!!

More Related Content

Impala 퍼포먼스 개선을 위한 Research