Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

실무로 배우는 시스템 성능 최적화 Ch7

280 views

Published on

실무로 배우는 시스템 성능 최적화 7장 후반부 아꿈사 발표 자료

Published in: Technology
  • Login to see the comments

실무로 배우는 시스템 성능 최적화 Ch7

  1. 1. 실무로 배우는 시스템 성능 최적화 Ch7. 애플리케이션 입장에서의 SQL 튜닝(Oracle) Part#2 아꿈사 Cecil
  2. 2. •배치 성능 개선 •APM 활용
  3. 3. 온라인과 배치의 성능 개선 방향성 차이
  4. 4. 부분별 성능 개선 방향
  5. 5. 전체 테이블 탐색 • 메인 리더가 대량 건 조회 시 전체 테이블 탐색이 유 리 • index가 있을 경우 hint로 전체 탐색을 유도 • 읽기 일관성 이슈 <출처:http://startingpitcher.tistory.com/429> “Ora-01555 Snapshot too old” 대량을 데이터를 처리하는 배치작업에서 자주 발생하고, 이로 인해 성능 저하
  6. 6. Ora-01555 해결 방안 • 작업 재 배치 • 배치 성능 개선 • 메인 리더에 쿼리에 Order by 추가 • 임시 작업 테이블 활용 • 인덱스 탐색을 이용한 내포 조인
  7. 7. 테이블 탐색을 효과적으 로• 파티션 • 파티션 키를 사용하여 파티션별로 데이터 처리 • 해시 조인 • 대량 건수 조회시 hint를 통한 해시 조인 사용 • 병렬 처리 • 프로세스/스레드를 통해 건수를 나누어 처리 • 병렬 처리시에는 전체 탐색보다 인덱스 탐색이 유 리
  8. 8. 쿼리 통합 • 메인 리더와 건별 처리 조회 쿼리 통합 • 조인을 통해 한번에 메인 리더에서 조회 • 메인 리더와 Insert 통합 • ex) Insert ~ Select ~ From ~ Where • Select / Insert / Update 통합 • 건별 처리 작업에서 Select/Insert/Update가 나누어 진 경우 • Merge를 이용해 Select/Insert/Update를 통합
  9. 9. APM 활용 • 성능 개선 대상 서비스와 그 원인이 되는 SQL 식별 에 용이 • 주요 제품 • 제니퍼(Jennifer) • 스카우터
  10. 10. Scouter Open Source Application Performance MonitoringTool (https://github.com/scouter-project/scouter)
  11. 11. •권문수. 실무로 배우는 시스템 성능 최적화. 경기도 파주시 위키 북스, 2016. References

×