Why are we meeting today - context Challenges: Long cycle between releases Lack of field enthusiasm for SQL Server Partners waiting for Yukon need to update their apps to remain competitive Low level of marketing resources for BI compared to competition leading lack of awareness Opportunities: BI continues to help get traction in competitive environments as a key surround strategy Companies investing in BI with continued market growth opportunity No clear leader - fragmented market We have superior technology and greater investment levels than other players We are doing a lot today, but there is so much more that we can do – that is the point of this discussion.
이 정무 이사 ㈜UCEO jmlee@uceo.net 데이터베이스 통합 관리와 최적화된 성능 제안 이 정무 이사 ㈜UCEO jmlee@uceo.net Why are we meeting today - context Challenges: Long cycle between releases Lack of field enthusiasm for SQL Server Partners waiting for Yukon need to update their apps to remain competitive Low level of marketing resources for BI compared to competition leading lack of awareness Opportunities: BI continues to help get traction in competitive environments as a key surround strategy Companies investing in BI with continued market growth opportunity No clear leader - fragmented market We have superior technology and greater investment levels than other players We are doing a lot today, but there is so much more that we can do – that is the point of this discussion.
Agenda 최신의 IT 흐름 이해 정보 시스템의 이해 데이터 관리의 이해 QCSS 제안
최신의 IT 흐름 이해 속도의 시대 통합의 시대(EAI, DW) Web Service 고객 변화의 요구 비즈니스의 변화 조직의 변화 IT의 변화 Reliability Performance Scalability Maintainability 급변하는 비즈니스 환경에 대응하기 위해 상이한 Application(애플리케이션), 시간, 장소, 부서 간의 이질적인 업무 환경 등을 극복하고 정확한 데이터(Data) 정보(Information), 지식(Knowledge)을 자유롭게 주고 받을 수 있는 시스템을 구축해야 한다. 이제는 속도와 통합의 시대이다.!!!
최신의 IT 흐름 이해 속도의 시대 잭 웰치 E-Bay 맥 휘트먼 GE의 성공 비결은 단 두 개의 비결이 있었을 뿐이다. 첫째 경쟁사보다 빨리 고객에 대해 배운다. 둘째, 경쟁사보다 빨리 행동에 옮긴다. E-Bay 맥 휘트먼 굴뚝과 닷컴의 차이는 의사 결정 속도에 있을 뿐이다. 1주일 내에 모든 것이 끝나야 한다. 그리고 오로지 분기 계획이 있을 뿐이다.
Current IT Characteristics Future IT Characteristics 통합의 시대 IT 통합, 현재 그리고 지향점 Future IT Major Points Current IT Characteristics Future IT Characteristics Connectivity: 다른 시스템과 연결/확장성 내외부 조직간의 의사공유를 위한 IT 단순 의사소통이 아닌 내외부 조직간 Collaboration 확립을 위한 IT 공간과 접속 방법을 초월하는 Computing을 위한 IT 네트워크 Computing을 위한 IT Intelligence 학습, 추론 등 지적 능력 지원 의사 결정을 위한 데이터 중심의 IT 의사 결정 과정 자동화를 위한 IT 정보 보관, 전달의 IT 정보 보관, 전달의 수준이 아닌 지식 경영의 적극적 도입을 위한 IT Digital Interface: 여러 채널을 지원하며 저장과 처리 용이 Physical한 정보를 위한 IT 정보의 Virtualization을 위한 IT DW -Data 통합(Data) EAI -Application통합(XML)
reservation E-Services 최신의 IT 흐름 이해 Web Service Web Services 발전방향 hotel website Reservation E-Services travel E-Services reservation E-Services hotel website weather E-Services travel E-Services weather E-Services airline booking E-Services travel E-Services airline website airline website restaurant reservation E-Services BROKER restaurant reservation E-Services hotel booking E-Services rental car website YOU hotel booking E-Services BROKER rental car website airline booking E-Services airline booking E-Services hotel booking E-Services hotel booking E-Services Websites 포탈 E-Services 포탈 Dynamic brokering 과거에는 여행을 간다면 직접 해당 웹사이트를 검색 여행 전문 포탈 웹 사이트를 찾아가면 해당 웹사이트로 link가 있어 직접 해당 웹 검색 여행 전문 E-Services 포탈 웹 사이트를 찾아가면 직접 해당 웹사이트를 검색할 필요 없이 자동 연결 여행 전문 E-Services 포탈 웹 사이트를 검색할 필요 없이 기기나 다른 방법으로 많은 서비스 이용
최신의 IT 흐름 이해 Web Service 웹 서비스 탄생 배경 연계 시스템 구현에 대한 장애 요소 비즈니스 형태 및 구현환경의 급격한 변화 고객, 협력사, 관계사 등의 관련 조직들과의 효율적 연계를 위한 유연한 기반 구조의 필요성 연계 시스템 구현에 대한 장애 요소 방화벽 외부로부터의 액세스에 대한 연계의 어려움 각각의 회사 및 조직들이 자체적인 기반 구조 보유 표준 기술에 바탕을 둔 연계 방법의 부재 기존의 해결 방안(EDI, EAI, B2B)으로는 역부족 과도한 도입 및 관리 비용 다양한 요구 및 변화에 유연한 대처 어려움
최신의 IT 흐름 이해 Summary 이제는 속도와 통합의 시대다. 비즈니스 경계가 무의미 해지고 이제는 속도가 비즈니스 핵심이고 이를 위해서 모든 정보가 통합되어서 관리가 되어야 한다. 정보는 바로 데이터이다. (Data -> Information -> Knowledge) 이런 비즈니스 환경에 따라 가장 관심을 가져야 할 것이 바로 웹 서비스이다. 웹 서비스는 현재의 비즈니스의 문제의 최적의 대안으로 등장하고 있다. 웹 서비스에서는 데이터의 범위가 휠씬 넓어진다. 그만큼 데이터의 가치와 관리의 중요성이 부각이 되고 있는 것이다. 따라서 데이터 관리는 이제 기업 시스템 운영의 핵심으로 자리잡았다.
정보 시스템은 이해 기업 운영의 핵심 자산이다. 정보 시스템의 이해 정보 시스템 이해 데이터 가치 이해 CRM 콜 센터 EAI ERP 지식 관리 Data 마케팅 SCM 전자 상거래 정보 시스템은 이해 기업 운영의 핵심 자산이다.
정보시스템의 이해 정보 시스템의 이해 게임/워드 프로그램 (그룹웨어) 정보시스템/기업애플리케이션 (ERP) 지속적인 데이터를 보유한다. 많은 데이터를 가지고 있다. 많은 사람들이 동시에 데이터에 접속한다. 다른 기업 시스템과 상호작용한다. 많은 개념적 불일치를 겪게 된다.
데이터 관리는 실무자나 프로그래머의 관리 대상이 아니라 기업 자신으로 관리가 되어야 한다. 정보시스템의 이해 정보 시스템의 이해 - 정보 시스템에 대한 관점의 차이 실무부서 관점 업무 -> 프로그램, 문서 -> Data ? //Data 처리 자동화 프로그래머 관점 실무자나 프로그래머 입장에서는 데이터는 단순히 프로그램의 한 요소일 뿐이다. Program 개발하기 / 작업 공정(Process) 자동화 전산 실장 관점 Program + Data / Process + Data CEO/CIO 관점 경영진에 데이터는 기업 업무 활동의 구체적 결과물이다. Data + Program / Data + Process 데이터 관리는 실무자나 프로그래머의 관리 대상이 아니라 기업 자신으로 관리가 되어야 한다.
정보시스템의 이해 정보 시스템의 이해 - 정보 시스템에 대한 관점의 차이 전산화의 궁극적인 목적은 현 업무를 그대로 프로그램으로 옮기는 즉 손으로 문서를 작성하는 대신 키보드를 사용하는 것이 아니다. 프로그램을 개발한다 업무를 개발한다. 모든 업무결과는 데이터로 존재한다. Program & Data 절차/문서 중심을 그대로 프로그램으로 고객 Data & Process 프로세스 중심 A부서 B부서 C부서 (Input) (Output) 접수 전달 DB 전달 요점 정보 시스템에서 모든 결과물은 데이터로 존재하고 이는 DBMS에 저장이 된다. !!!정보 시스템에서 모든 결과물은 데이터로 존재하고 이는 DBMS에 저장이 된다.
정보시스템의 이해 정보 시스템의 이해 누가 데이터에 관심을 가지고 있는가? 바로 경영진이다. - 정보 시스템에 인식 % 미국 CIO들을 대상으로 한 설문조사 결과 정보가, Right Time, Right Place, Right Person, Right Format? 정보체계는 통합되었다고 생각하는가? 정보를 공유하고 있다고 생각하는가? 정보체계는 진화할 수 있다고 생각하는가? 정보체계는 업무변화를 수용할 수 있다고 생각하는가? Impossible Dream? Do Right Thing, Do Thing Right?(1) Do Wrong Thing, Do Thing Right?(3) YES NO DW/EAI 프로젝트가 투명하게 가능하다고 생각하는가? 누가 데이터에 관심을 가지고 있는가? 바로 경영진이다.
정보시스템의 이해 데이터 가치의 이해 Data Information Knowledge - 데이터 가치 이해 CRM 콜 센터 EAI Data, Information, Knowledge / ERP, CRM 등 정보는 이제 기업의 가장 중요한 자산이자 힘이다. 훌륭한 데이터를 확보하고 있는 기업이 핵심적인 경쟁력을 확보한다. Data Information Knowledge ERP 지식 관리 전달 요점 모든 시스템은 Data를 통하여 서로 교류할 수 있다. DBMS를 제대로 관리하고 있는 기업은 그만큼 미래 소요 비용을 줄일 수 있는 것이다. 마케팅 SCM 전자 상거래
정보시스템의 이해 Summary 정보 시스템은 ERP를 예로 기업 운영 시스템의 대부분을 차지한다. 정보 시스템은 데이터 => 정보 => 지식의 개념으로 DW, CRM, MIS 등의 거의 모든 시스템과 연관이 된다. 정보 시스템에서 가장 중요한 것 중 하나가 바로 데이터 관리이다. 이제 데이터는 단순히 프로그램의 한 요소이거나 프로그램 수정하듯이 관리할 수 있는 것이 아니다. 프로그램은 언제든지 발전하거나 변경 될 수 있지만 데이터는 지속되어야 한다. 데이터의 가치를 제대로 이해해야 한다. 데이터의 관리는 개발자가 아니라 경영진 관점에서 관리가 되어야 한다.
데이터 관리의 이해 데이터 관리의 의미 DBMS 통합 관리 실시간 모니터링/명확한 진단 빠른 문제 해결 속도 처리 보장 %핵심 전달 내용- 제대로 데이터(DBMS)를 관리하기 위해서 어떻게 해야 하는가? DBMS 관리는 종합적으로 모니터링하고 즉각적으로 장애처리가 가능해야 하고 최적의 운영 환경이 될 수 있도록 해야 한다.
데이터 관리의 이해 데이터 관리의 의미 데이터 관리는 SQL Server, Oracle 등의 DBMS 자체를 관리하는 것이 아니라 정보 시스템의 핵심인 데이터를 관리하는 것이다. 따라서 데이터 관리(모니터링, 백업, 복구 전략 등)는 기업 내에서 하나의 일관된 정책에 따라 운영이 되어야 한다. 데이터는 언제나 바로 접근하여 활용할 수 있어야 한다. 데이터는 언제 발생할지 모르는 장애로부터 보호되어야 한다. 데이터 유출 등의 사고는 해킹 등의 외부 요인이 아니라 내부 관리 미숙에 의해서 발행한다.
데이터 관리의 이해 통합 관리 이제는 기업에서 하나의 DBMS만으로 운영하는 곳은 거의 없다. Oracle, SQL Server, DB2 등이 주요 DBMS이다. 각 DBMS 별로 관리가 되는 것이 아니라 기업 데이터(정보) 관점에서 정책적으로 운영 관리가 되어야 한다. 즉 데이터는 기업 내에서 일관성 있게 통합 관리 되어야 한다. 기업 내에서는 일관성 있고 통합적인 관리 정책과 툴이 필요하다.
데이터 관리의 이해 실시간 모니터링/명확한 진단 대부분의 정보 시스템은 24시간, 365일 운영이 된다. 데이터 관리의 핵심은 즉각적인 장애 복구가 목적이 아니라 장애를 미리 파악하여 장애가 발생하지 않게 대처하는 것이다. 실시간 모니터링은 직관적으로 DBMS 운영 상황을 파악할 수 있어야 한다. 즉 한 눈에 운영 상황이 입체적으로 파악이 되고 바로 대처할 수 있어야 한다. 장애, 즉 문제의 원인을 바로 진단 즉 파악을 할 수 있어야 한다. DB와 관련된 장애는 실시간으로 파악이 되어야 대처가 되어야 한다. 모니터링은 다양한 관점(View Point)으로 접근이 되어야 한다. 거의 대부분의 회사에서는 한 종류의 DBMS가 아니라 여러 종류의 DBMS를 같이 운영하고 있다.
데이터 관리의 이해 빠른 문제 해결(장애 복구) 문제가 발생한 경우 즉각적으로 복구가 되어야 한다. 문제 발생시 문제 원인을 판단하는 가이드와 이를 대처하는 대처 전략이 수립이 되어서 관리가 되어야 한다. 문제 발생과 해결 방안 가이드 작성 바로 적용
데이터 관리의 이해 DB 처리 성능 향상 DBMS는 최적의 데이터 처리 속도를 지원해야 한다. SQL 튜닝은 분명 전문가가 진행할 전문적인 영역이다. 하지만 SQL 튜닝을 하기 위한 사전 조사 등의 작업은 전체 SQL 튜닝 작업에 많은 도움을 줄 수 있다. SQL 튜닝뿐만 아니라 애플리케이션 튜닝도 동시에 진행이 되어야 한다.
Quest Central for SQL Server 전략 QCSS 전략 Spotloght을 이용한 성능 진단 SQL Server를 위한 관리 Database Analysis Load Testing and Data Generation SQL Tuning %핵심 전달 내용- QCSS는 최신의 IT환경과 정보 시스템의 핵심을 관리/보호할 수 있는 최적의 운영 환경을 제공한다.
QCSS 전략 QCSS 전략 퍼포먼스 병목현상(bottleneck)과 기타 DB 문제를 진단, 분석, 해결해주는 종합적인 툴 킷 제공 복잡한 멀티서버 환경에 대한 전반적인 문제해결 능력으로 퍼포먼스 향상 및 안정성 개선 Database Administration, Performance Diagnostics, Space Management, SQL Tuning을 통합하여 더욱 간소화되고 직관적인 관리 환경 제공 효율적인 멀티서버 관리기능의 Enterprise Manager로 더욱 확장된 기능 제공
QCSS 전략 Spotloght을 이용한 성능 진단 Performance Management Performance Diagnostics (Spotlight on SQL Server) SQL Server의 Process Flow를 시각적으로 보여줌으로써 실시간으로 시스템과 데이터베이스 상황을 Monitoring 데이터베이스의 실제 처리구조를 보여줌으로써 문제가 발생했을 경우 문제의 원인을 밝혀내고 해결하는데 유용 Graphical Flow는 각 데이터베이스 요소간의 데이터 전달 상태를 Detail하게 감지 시각적으로 병목현상을 지적하며 Drill-down을 통한 상세항목을 표시 동시에 복수개의 Instance를 지원 Alarm 수준에 따라 다른 색 및 다른 소리로 표시해 쉽게 인식 DBA의 빠른 문제 해결을 위해 다음의 정보를 제공 -- Active Sessions, 비효율적인 SQL, Lock Tree 및 Latches -- Disk I/O, Memory 사용량, Transactions, Roll-back 상황 -- 시스템 분야 : CPU, Disk, Memory
Spotloght을 이용한 실시간 모니터링
QCSS 전략 SQL Server를 위한 관리 QC Icon Toolbar SQL Tuning Space Manager Performance Diagnostics Database Analysis Script Runner Knowledge Xpert Foglight Web Console SQL Server Compare SQL Server EM SQL Server Query Analyzers SQL Server Profiler QC Navigator
QCSS 전략 SQL Server를 위한 관리 데이터 베이스 관리 SQL Server Tool SQL 프로필러 복제 등 SQL Activity Top x SQL : x개의 Top SQL문장을 확인 SQL Activity Graph : SQL문장의 Active한 정보를 Graphic하게 확인 Explain Plan : SQL문장의 Explain Plan정보 확인 Visual Object Editor Objects Editor : Graphic하게 Object정보를 확인 SQL Editor : SQL문장을 작성,편집, 실행 Extract DDL Utility : DDL 생성 기능
QCSS의 Database Administration
QCSS 전략 Database Analysis Data 수집 문제 분석 문제 해결 StealthCollect SQL Server Database에 영향을 주지 않으면서 SQL Server Memory를 Gathering하여 별도의 공간에 Log 정보를 저장 Collector, Middleware, Rep Process 등에 의해 동작 Data 수집 Performance Analysis Quest Central Console화면에서 StealthCollect가 저장한 Log 정보를 토대로 다양한 정보를 출력 Recent Mode – 현재 SQL Server에서 작업 중인 정보를 Monitoring History Mode – 과정 특정 시점에 수행된 SQL Server 정보를 Monitoring System Level Database Level Session Level(Dimension) SQL Level 문제 분석 SQL Tuning Performance Analysis에서 분석한 정보를 기준으로 잘못 작성된 SQL 문장을 다양한 Tuning Advice를 통하여 최적의 SQL 문장으로 변환 문제 해결
StealthCollect Collector StealthCollect Middleware QCSS 전략 Database Analysis SQL Server Memory에서 직접 Data를 Sampling하여 Instance와 Session Activity를 Trace SQL Server Dynamic View를 Query하는 것을 제외하면 Overhead가 없음 StealthCollect Collector StealthCollect Middleware Collector로부터 Memory에서 Sampling한 정보를 Receive 다른 Host에 위치시키도록 지정 서로 다른 Application들과 각각의 SQL Server 사이의 상호작용을 관리하고 Data를 Handling 수행 Online Processor : 현재의 Memory Sampling정보를 가지고 Dynamic하게 분석 수행 Historical Processor : Short-term (3개월 정도치) 데이터를 System의 Disk에 Log 정보를 만들어서 과거 Sampling 정보를 가지고 분석 수행 Repository Manager 누적화된 Historical 데이터를 DB Repository에 주기적으로 Loading 하여 Long-term 데이터를 가지고 분석 수행 Repository Option이 Enable 추가적인 Oracle Instance가 필요
QCSS 전략 Database Analysis Performance Analysis
QCSS 전략 Database Analysis Overview Top Session Datafile I/O 현재 동작하고 있는 SQL Server Database의 Resource Trend를 확인 Waiting 현상이 발생하는 원인을 파악 System Level에서 사용하는 Detail한 System 통계를 확인 System Level과 Database Level의 사용량 비교 Top Session 현재 Database에서 작업중인 Session 중에서 Top Session의 List를 확인 해당 Session의 Resource 사용 통계를 확인 해당 Session이 사용중인 SQL 문장을 확인 Datafile I/O 현재 Database에서 I/O Wait가 발생하는 Datafile List를 확인 각 Datafile의 I/O Wait Time 확인
QCSS 전략 Database Analysis Recent Mode – Instance View 1. Resource 중에서 해당 항목을 선택 2. 선택된 Resource의 Instance Trend 확인 3. 확인한 Instance Trend에서 Wait Event 정보를 Detail하게 확인 4. 통계를 click하면 위의 Graph가 해당 내용으로 바뀐다
QCSS 전략 Database Analysis Recent Mode – Top Session 현재 Resource를 많이 사용하고 있는 Top Session 확인 확인할 수 있는 Session 통계치 정보 SID Serial# Logon Time DB User Status Active Time Current SQL Program CPU Usage CPU wait I/O Wait Network Wait Buffer Wait Lock Wait Latch Wait Other Wait Logout Time 수행하고 있는 SQL 문장을 선택 후 R-click하면…. 현재 선택중인 Session을 Double-click하면… Individual Session Mode로 변환
QCSS 전략 Database Analysis Recent Mode – Instance View Data file I/O
QCSS 전략 Database Analysis Recent Mode – Instance View Current Session 현재 SQL Server Session의 Summary 정보 -> CPU, I/O, Network, Buffer, Lock, Latch, Other Wait, Idle 현재 선택중인 Session을 Double-click하면… Individual Session Mode로 변환 현재 SQL Server Session이 사용하고 있는 System Resource 정보 -> CPU, Memory Current Session의 Detail 정보 -> SID, Logon Time, DB User Active Time, Current SQL, Program 현재 선택중인 SQL 문장을 R-click하면…
QCSS 전략 Database Analysis Recent Mode – Instance View Individual Session Mode 현재 접속되어 있는 SQL Server Session의 정보를 Detail하게 분석하고, Resource 사용을 조사 Session Statistics Datafile I/O Session Locks SQL Summary Traced SQL Open Cursors Session Overview
QCSS 전략 Database Analysis Dimension View Compare Recent Mode – Instance View Dimension SQL Statement Program DB User OS User Client Machine Action Module Command Type View ShortCut Jobs User Defined View Compare
QCSS 전략 Database Analysis Recent Mode – Compare 전체 Instance 비교 서로 다른 Time 기간간의 Activity 통계 정보를 비교 Type : 전체 Instance, 선택된 Dimension 영역, Jobs 비교하고자 하는 Time Range는 미리 Pre-defined 해서 등록한다 비교를 통한 문제의 원인이 무엇인지 알고자 할 때 -> 문제의 원인을 정확히 파악할 수 없어 재검토 하고자 할 때 과거의 Activity와 현재의 Activity를 비교하고자 할 때 과거의 Instance 또는 Job이 현재의 Instance 또는 Job과 다른점은? 과거와 현재의 SQL문장이 어떤 것이 틀리는지 비교 특정 시점에서 서로 다른 Performance를 내는 Program들의 특성이 무엇인지 전체 Instance 비교 특정 Dimension별 비교 여러 개의 Dimension으로 비교하고자 할 때 선택한 조건에서 Metric값을 어떻게 보여줄 것인지 결정
QCSS 전략 Database Analysis Historical Diagnostics Report 과거 History 정보를 근간으로 분석된 Data를 Reporting하는 기능 Top SQL Statements for the last 24 Hours Top DB Users for the last 24 Hours Add New Reports SQL Statements Trend for the last 24 Hours Program Trends for the last 24 Hours Add New Reports System CPU Throughput, Oracle CPU Throughput System I/O Throughput, Oracle I/O Throughput System Network Throughput, Oracle Network Throughput SQL Throughput System Health Check Instance Health Check Instance Activity for the 24Hours Add New Report Activity Throughput Tops Trend Time Breakdown
Database Analysis 활용 예제
QCSS 전략 Load Testing and Data Generation 로드 테스트, 용량 계획, 퍼포먼스 튜닝을 수행하기 위한 기능. Load Generator는 DBA들과 데이터베이스 개발자들이 일일이 수집해야 할 퍼포먼스 서비스 레벨 데이터를 바로 확인시켜주고, 시스템 각 포인트마다의 실패 요인을 알려준다. 또한, Load Generator 플러그 인(plug-in)은 퍼포먼스 문제로 최종 사용자(end user)에게 오픈하기 전에, 그 문제에 대해 포커스를 맞추고 데이터베이스를 테스트 할 수 있는 가장 쉬운 방법이기도 하다. 아울러, 개발자들과 QA 직원들은 한번의 마우스 클릭만으로 몇 백만 줄이나 되는 테스트 데이터와 테스트 데이터베이스를 쉽게 생성 시킬 수 있다. 제품 환경 내에 있는 데이터베이스 퍼포먼스의 실제 상황을 충분히 고려할 수 있는 데이터와 테스트 할 수 있도록 해준다.
QCSS 전략 SQL Tuning SQL Tuning Process 1. Performance Analysis에서, 선택한 SQL 문장을 R-Click하고 Tune SQL을 선택 이를 통하여 자동으로 문제 SQL을 SQL Tuning Lab으로 이전 2. 선택한 SQL 문장을 SQL Tuning Lab Editor Window에 Copy하고 다음의 과정을 자동으로 수행 Schema Owner 변경 해당 문장의 Execution Plan 작성 Schema Objects 정보 확인 (Table, Column, Index 등의 정보) 3. Tuning Advice 수행 Advice : Advice List 제시 Auto Tune : 자동으로 Tuning Advice 제시 User Tune : User가 Manual하게 문장 작성 4. Compare Scenario Original SQL과 Advice SQL의 문장과 Execution Plan 비교 5. Execution Statistics Original SQL과 Advice SQL문장을 실행하여 통계정보를 확인하고 Graphic하게 비교 6. 결과 확인 7. Tuning Resolution
QCSS 전략 SQL Tuning SQL Tuning Process Offensive SQL문 Find Active Time을 기준으로 Sorting되어 있는 SQL 문장에서 Tuning 작업을 수행해야 할 SQL 문장을 검색 CPU Usage, CPU Wait, I/O Wait, Latch Wait, Lock Wait, Network Wait, Buffer Wait, Other Wait, Execution 회수 등의 항목을 조사하여 문제 SQL 발견
QCSS 전략 SQL Tuning SQL Tuning Process Offensive SQL문 Find 선택된 Offensive SQL문을 SQL Tuning Editor에 Copy Original SQL 문장 Tuning Step Navigator -> SQL Details Original SQL의 Execution Plan과 Detail한 Object Describe 정보 확인 Scenario 각종 정보 제공
QCSS 전략 SQL Tuning Auto Tuning – SQL Details SQL Tuning Process 자동적으로 선택된 문장에 대해 Tuning Scenario를 생성 Toolbar에서 선택 Auto Tune #1 Original SQL Auto Tune #2
QCSS 전략 SQL Tuning SQL Tuning Process Auto Tuning – View Advice 자동적으로 선택된 Tuning Scenario의 Advice 정보 확인
QCSS 전략 SQL Tuning Auto Tuning – Explain Plan 생성 SQL Tuning Process 자동적으로 선택된 Tuning Scenario의 Explain Plan Generate
QCSS 전략 SQL Tuning SQL Tuning Process Auto Tuning – Compare Scenario Generate된 Explain Plan 정보를 기준으로 각 Tuning Scenario 정보를 비교 각각의 Scenario와 비교
QCSS 전략 SQL Tuning SQL Tuning Process Auto Tuning – Execute 채택된 Tuning Scenario를 실행
QCSS 전략 SQL Tuning SQL Tuning Process Auto Tuning – Execution Statistics 실행한 Tuning Scenario 정보를 기준으로 Graphic하게 비교하며, Detail하게 통계 정보를 확인
QCSS 전략 SQL Tuning SQL Tuning Process Auto Tuning – Execution Result Matrix 통계치 실행한 Tuning Scenario 정보를 기준으로 실행 결과와 통계 Matrix 값 확인
QCSS 전략 SQL Tuning SQL Tuning Process Manual Tuning with Expert Advice – SQL Details and View Advices SQL Tuning이 제공하는 다양한 Advice 항목을 기준으로 사용자가 직접 선택하여 Tuning 수행 Toolbar에서 선택 Advice Type Filter SQL Rewrite Filter DDL Advice Filter Other Advice
QCSS 전략 SQL Tuning Manual Tuning with Expert Advice – Compare Scenario SQL Tuning Process Manual Tuning with Expert Advice – Compare Scenario 채택된 Advice 정보와 Original SQL 정보를 비교
QCSS 전략 SQL Tuning SQL Tuning Process Manual Tuning with Expert Advice – Execution Statistics 채택된 Advice 정보와 Original SQL 정보를 실행하고 통계정보를 확인 DDL Script인 경우 DDL Script가 실행 Index 생성 Advice 경우 Virtual Index를 생성
QCSS 전략 SQL Tuning SQL Tuning Process Manual Tuning with Expert Advice – Execution Results 실행된 Advice 정보와 Original SQL 정보의 결과와 통계치 확인
QCSS 전략 SQL Tuning Manual Tuning with Expert Advice – Best Practice SQL Tuning Process Manual Tuning with Expert Advice – Best Practice 실행된 Advice 정보와 Original SQL 정보의 결과와 통계치 확인
QCSS 전략 SQL Tuning SQL Tuning Process 마지막 단계에서 Original SQL 문장을 Advice SQL 문장으로 변경할 경우 Total Elapsed Time이 어느 정도 증가/감소 하는지를 확인 기존의 Original SQL 문장에 비해 Tuning작업을 수행한 SQL 문장을 사용할 경우 97% 정도의 Performance 향상 예측
SQL Tuning 사례
감사합니다.