Best Practicesλ₯Ό ν΅ν΄ SQL λ¬Έ λ° λ°μ΄ν°λ² μ΄μ€λ₯Ό λΆμνμ¬ λ°μ΄ν°λ² μ΄μ€ μ±λ₯ ν₯μμ μν μΌλ°μ μΈ λ°©λ²μ κΆμ₯ν μ μμ΅λλ€. μ΄λ¬ν κΆμ₯ μ¬νμ λ°μ΄ν°λ² μ΄μ€μ λ€λ₯Έ λ¬Έμ₯ μ±λ₯μλ μν₯μ λ―ΈμΉ μ μμΌλ―λ‘ κ΅¬ννκΈ° μ μ κ²ν νκ³ μΆ©λΆν ν μ€νΈν΄μΌ ν©λλ€. κΆμ₯ μ¬νμ νκ°ν λλ λ°μ΄ν°λ² μ΄μ€ μ±λ₯μ΄ λ€μμ μν΄ μν₯μ λ°λλ€λ μ¬μ€μ κ³ λ €νμμμ€.
μμ€ν 리μμ€(CPU, I/O, λ©λͺ¨λ¦¬, λ°μ΄ν°λ² μ΄μ€ μν€ν μ² λ±)
λ°μ΄ν° λΆν¬
μμ€ν μν€ν μ²
SQL Execution Plan
μ¬μ©μμ μ¬μ© νλ
μ°Έκ³ : Best Practices κΈ°λ₯μ Optimize SQLμ SQL Rewrite λͺ¨λμμλ§ μ¬μ©ν μ μμ΅λλ€.
λͺ¨λ² μ¬λ‘λ₯Ό κ²ν νλ €λ©΄
λ₯Ό λλ¦ λλ€ .
ν: Best Practices νμ νμνλ €λ©΄ λ₯Ό λλ₯΄κ³ Optimize SQL | Best Practices | Generalμ μ νν λ€μ Display Best Practices tab in SQL Rewrite mode νμΈλμ μ νν©λλ€.
Alternative Details μ°½μ SQL λ¬Έμ μ λ ₯ν©λλ€.
μ λλ¦ λλ€.Select Connection and Schema μ°½μ΄ νμλ©λλ€.
μ 곡λ κΆμ₯ μ¬νμ κ²ν ν©λλ€.
Optimize SQLμ Deploy Outline κΈ°λ₯μ μλ³Έ μμ€ μ½λλ₯Ό λ°κΎΈμ§ μκ³ SQL λ¬Έ μ±λ₯μ ν₯μμν΅λλ€. Optimize SQLλ₯Ό μ¬μ©νμ¬ λ체 Execution PlanμΌλ‘ μλ³Έ SQL λ¬Έκ³Ό μλ―Έλ‘ μ μΌλ‘ λμΌν SQL λ¬Έμ μμ±ν μ μμ΅λλ€. λ°μ΄ν°λ² μ΄μ€ νκ²½μ κ°μ₯ μ ν©ν λ체 SQL λ¬Έμ μλ³νλ©΄ μλ³Έ SQL λ¬Έκ³Ό ν¨κ» μ¬μ©ν μ μλ μ μ₯λ μμλΌμΈμΌλ‘ λ°°ν¬ν μ μμ΅λλ€.
μμλΌμΈμ λ°°ν¬νλ €λ©΄
μμ μλ νμ΄νλ₯Ό λλ₯΄κ³ New SQL Rewrite Sessionμ μ νν©λλ€.
Alternative Details μ°½μμ μλ³Έ SQL λ¬Έμ μ λ ₯νκ³ μ λλ¦ λλ€.Select Connection and Schema μ°½μ΄ νμλ©λλ€.
Alternatives μ°½μμ μμλΌμΈμΌλ‘ λ°°ν¬ν λ체 SQL λ¬Έμ λ§μ°μ€ μ€λ₯Έμͺ½ λ²νΌμΌλ‘ λλ₯΄κ³ Deploy Outlineμ μ νν©λλ€. Deploy Outline μ°½μ΄ νμλ©λλ€.
μμΈν λ΄μ©μ λ€μμ κ²ν νμμμ€.
Outline name | μ μ₯λ μμλΌμΈμ μ΄λ¦μ μ λ ₯ν©λλ€. |
Category |
μ λλ₯΄κ³ μ΄μ μ μμ±ν μΉ΄ν κ³ λ¦¬λ₯Ό μ ννκ±°λ μ μΉ΄ν κ³ λ¦¬ μ΄λ¦μ μ λ ₯ν©λλ€. μ°Έκ³ :
|
μ°Έκ³ : Manage Plansμ Outline Management κΈ°λ₯μ μ¬μ©νμ¬ μΉ΄ν κ³ λ¦¬λ₯Ό νμ±ν λλ λΉνμ±ννκ±°λ μμλΌμΈμ λ€λ₯Έ μΉ΄ν κ³ λ¦¬λ‘ μ΄λν μ μμ΅λλ€.
SQLμ μΌκ΄μ μΌλ‘ μ΅μ ννλ €λ©΄
μ£Ό μ°½μμ Batch Optimizeνμ μ νν©λλ€.
Batch Job List μ°½μμ Add Code to Optimizeλ₯Ό λλ₯΄κ³ All Typesλ₯Ό μ νν©λλ€. Add Batch Optimize Jobs μ°½μ΄ νμλ©λλ€.
μμΈν λ΄μ©μ λ€μμ κ²ν νμμμ€.
Connection νμ΄μ§ | μ€λͺ |
μ°κ²° |
μ λλ¬ μ΄μ μ μμ±ν λ°μ΄ν°λ² μ΄μ€ μ°κ²°μ μ νν©λλ€. ν:
|
Database Objects νμ΄μ§ | μ€λͺ |
Database objects |
μ€ν€λ§, λ°μ΄ν°λ² μ΄μ€ κ°μ²΄ μ ν λλ κ°λ³ λ°μ΄ν°λ² μ΄μ€ κ°μ²΄λ₯Ό μ νν ν μ λλ¬ κ°μ²΄λ₯Ό μΆκ°ν©λλ€. ν:
|
μ€ν€λ§λ₯Ό μ¬μ©νμ¬ μ€ν |
μ ν΄λ¦νκ³ λ체 SQL λ¬Έ μ€νμ μν λμ μ€ν€λ§λ₯Ό μ νν©λλ€. |
Source Code νμ΄μ§ | μ€λͺ |
Source code type |
Text/Binary files, Oracle SQL *Plus Script λλ COBOL programming source codeλ₯Ό μ ννμ¬ κ²μν νμΌ λλ λλ ν 리μ λν μμ€ μ½λ μ νμ λνλ λλ€. |
Add by file |
μ λλ₯΄κ³ μΆκ°ν νμΌμ μ°Ύμλ΄ λλ€. |
Add by directory |
μ λλ₯΄κ³ μΆκ°ν λλ ν λ¦¬λ‘ μ΄λν©λλ€. μ°Έκ³ : νμ λλ ν 리λ₯Ό κ²μνλ €λ©΄ Include Sub-directory νμΈλμ μ νν©λλ€. |
Scan using schema |
μ λλ₯΄κ³ κ²μν μ€ν€λ§λ₯Ό μ νν©λλ€. |
μ€ν€λ§λ₯Ό μ¬μ©νμ¬ μ€ν |
μ λλ₯΄κ³ λ체 SQL λ¬Έ μ€νμ μν λ체 μ€ν€λ§λ₯Ό μ νν©λλ€. |
SQL Text νμ΄μ§ | μ€λͺ |
SQL ν μ€νΈ |
SQL λ¬Έ ν μ€νΈλ₯Ό μ λ ₯ν©λλ€. |
Scan using schema |
μ λλ₯΄κ³ κ²μν μ€ν€λ§λ₯Ό μ νν©λλ€. |
μ€ν€λ§λ₯Ό μ¬μ©νμ¬ μ€ν |
μ λλ₯΄κ³ λ체 SQL λ¬Έ μ€νμ μν λ체 μ€ν€λ§λ₯Ό μ νν©λλ€. |
Scan SQL νμ΄μ§ | μ€λͺ |
Group |
κ²μν SQL λ¬Έμ ν¬ν¨νλ Scanner κ·Έλ£Ήμ μ νν©λλ€. |
Scan using schema |
μ λλ₯΄κ³ κ²μν μ€ν€λ§λ₯Ό μ νν©λλ€. |
μ€ν€λ§λ₯Ό μ¬μ©νμ¬ μ€ν |
μ λλ₯΄κ³ λ체 SQL λ¬Έ μ€νμ μν λ체 μ€ν€λ§λ₯Ό μ νν©λλ€. |
Inspect SGA νμ΄μ§ | μ€λͺ |
Group |
κ²μν SQL λ¬Έμ ν¬ν¨νλ Inspector κ·Έλ£Ήμ μ νν©λλ€. |
Scan using schema |
μ λλ₯΄κ³ κ²μν μ€ν€λ§λ₯Ό μ νν©λλ€. |
μ€ν€λ§λ₯Ό μ¬μ©νμ¬ μ€ν |
μ λλ₯΄κ³ λ체 SQL λ¬Έ μ€νμ μν λ체 μ€ν€λ§λ₯Ό μ νν©λλ€. |
Foglight Performance Investigator for Oracle νμ΄μ§ |
μ€λͺ |
μΊ‘μ²λ SQLμ μ μ₯νλ λ° μ¬μ©λ 리ν¬μ§ν 리λ₯Ό κ²μν λ°μ΄ν°λ² μ΄μ€λ₯Ό μ νν©λλ€. |
μ λλ¬ μ΄μ μ μμ±ν λ°μ΄ν°λ² μ΄μ€ μ°κ²°μ μ νν ν Check for PI Repositoryλ₯Ό λλ¬ λ¦¬ν¬μ§ν 리λ₯Ό μ°Ύμ΅λλ€. ν: μ λλ¬ Connection Managerλ₯Ό μ΄κ³ μ μ°κ²°μ μμ±ν©λλ€. |
μ°Έκ³ : Batch Optimizeλ κ²μ μμ μ λ°°μΉλ‘ ꡬμ±νμ¬ κ΄λ¦¬λ₯Ό λμμ€λλ€. Batch Info νμ΄μ§λ₯Ό μ¬μ©νμ¬ μ λ°°μΉλ₯Ό μμ±νκ±°λ κΈ°μ‘΄ λ°°μΉμ νμ¬ μμ μ μΆκ°ν©λλ€. |
Finishλ₯Ό λλ¬ μΌκ΄ μ΅μ νλ₯Ό μμν©λλ€.
Batch Optimize μμ±ν μμ μ κ²μνκ³ SQL λ¬Έμ λΆλ₯ λ° μ΅μ ννλ©° μμ±ν λ체 SQL λ¬Έμ μ€νν©λλ€.
μ°Έκ³ :
Batch Optimize Options νμ΄μ§μμ Automatically start extracting SQL when job is added νμΈλμ μ ννλ©΄ κ²μμ΄ μλμΌλ‘ μμλ©λλ€.Batch Optimize κΈ°λ³Έμ μΌλ‘ μ΄ νμΈλμ μ νν©λλ€.
Batch Optimize Batch Optimizeλ Options νμ΄μ§μμ μ νν λΆλ₯ μ νμ κΈ°λ°μΌλ‘ μ΅μ νν SQL λ¬Έμ μ νν©λλ€.Batch Optimize λ κΈ°λ³Έμ μΌλ‘ Problematic SQL λ° Complex SQL λΆλ₯ μ νμ μ νν©λλ€.
Batch Optimize Batch Optimizeλ Options νμ΄μ§μμ μ νν λ¬Έμ₯ μ νμ κΈ°μ€μΌλ‘ μμ±ν λ체 SQL λ¬Έμ μ€νν©λλ€.Batch Optimize λ κΈ°λ³Έμ μΌλ‘ SELECT λ¬Έμ μ νν©λλ€.
μμ±ν μμ μ λν μ 보λ₯Ό λ³΄λ €λ©΄ Batch Job List μ°½μμ Batch Listλ₯Ό μ νν©λλ€.
Batch List μ°½μ μμ μ λν μ 보λ₯Ό λ°°μΉλ³λ‘ μ λ ¬ν©λλ€. Jobs Improved μ°½μ μΆκ° μ λ³΄κ° νμλ©λλ€.
Job List μ°½μμ λ°°μΉμ λν μΈλΆ μ 보λ₯Ό λ³΄λ €λ©΄ λ°°μΉ λͺ©λ‘μμ λ°°μΉλ₯Ό μ νν©λλ€.
Job List μ°½μ λ°°μΉμ κ° μμ μ λν μμ μ ν, μμ μν λ° ν₯μ μκ°μ΄ νμλ©λλ€. μ νν μμ μ λν SQL Classification λ° Cost and Elapsed Time Comparison μ°½μ μΆκ° μ λ³΄κ° νμλ©λλ€.
ν: Job List μ°½μμ μμ μ μ ννκ³ μ λλ¬ μ΅μ νλ SQL λ¬ΈμΌλ‘ λ체 μ€ν¬λ¦½νΈλ₯Ό μμ±νμμμ€.
μμ μ λν μΈλΆ μ 보λ₯Ό λ³΄λ €λ©΄ λ°°μΉ λ Έλμμ μμ μ μ νν©λλ€.
SQL List μ°½μλ μ νν μμ μ SQL λ¬Έμ λν SQL λΆλ₯ μ λ³΄κ° νμλ©λλ€. Original SQL Text λ° Best Alternative SQL Text μ°½μμ μλ³Έ SQL λ¬Έκ³Ό Batch Optimizeμμ μμ±λ μ΅μμ λ체 SQL λ¬Έμ λΉκ΅ν μ μμ΅λλ€.
ν: SQL List μ°½μμ SQL λ¬Έμ μ ννκ³ μ λλ¬ ν΄λΉ λ¬Έμ Optimize SQLλ‘ λ³΄λ΄κ³ λͺ¨λ λ체 SQL λ¬Έμ νμΈνμμμ€.
Scan SQLμ λ°μ΄ν°λ² μ΄μ€ κ°μ²΄μ ν¬ν¨λμ΄ μκ±°λ, μμ© νλ‘κ·Έλ¨ μμ€ μ½λ λ° μ΄μ§ νμΌμ μ μ₯λμ΄ μκ±°λ, Oracle System Global Areaμμ μΊ‘μ²λμκ±°λ, Foglight Performance Analysis 리ν¬μ§ν 리μ μ μ₯λ λ¬Έμ₯μ μλμΌλ‘ μΆμΆνμ¬ λ°μ΄ν°λ² μ΄μ€ νκ²½μμ Problematic SQL λ¬Έμ μλ³νλ λ° λμμ μ€λλ€. Scan SQLμ μΆμΆλ λ¬Έμ₯μ λν execution planμ κ²μ λ° λΆμνκ³ λ³΅μ‘μ±μ λ°λΌ λΆλ₯ν©λλ€. μ΄ν Scan SQLμμ Problematic λλ Complexλ‘ λΆλ₯νλ λ¬Έμ Optimize SQLλ‘ λ³΄λΌ μ μμ΅λλ€.
μ°Έκ³ : μ΄ νλͺ©μμλ μ¬μ©μμκ² μΉμνμ§ μμ μ μλ μ 보λ₯Ό μ€μ μ μΌλ‘ μ€λͺ νλ©° λ¨κ³ λ° νλ μ€λͺ μ΄ λͺ¨λ ν¬ν¨λμ΄ μμ§λ μμ΅λλ€.
SQLμ κ²μνλ €λ©΄
μ£Ό μ°½μμ Scan SQLνμ μ νν©λλ€.
μ΄μ μ μμ±ν κ·Έλ£Ήμ μ ννλ €λ©΄ μ λλ₯΄κ³ κ²μ μμ μ λν μ κ·Έλ£Ήμ μμ±νλ €λ©΄ μ λλ¦ λλ€.
μ°Έκ³ : Scan SQL λ κ²μ μμ μ κ·Έλ£Ήννμ¬ κ΄λ¦¬λ₯Ό λμμ€λλ€.
μ λλ¦ λλ€. Add Scanner Jobs μ°½μ΄ νμλ©λλ€.
μμΈν λ΄μ©μ λ€μμ κ²ν νμμμ€.
νμ΄μ§ | μ€λͺ |
---|---|
Database Objects νμ΄μ§ | |
Database objects |
μ€ν€λ§, λ°μ΄ν°λ² μ΄μ€ κ°μ²΄ μ ν λλ κ°λ³ λ°μ΄ν°λ² μ΄μ€ κ°μ²΄λ₯Ό μ νν ν μ λλ¬ κ°μ²΄λ₯Ό μΆκ°ν©λλ€. ν: μ λλ¬ λ°μ΄ν°λ² μ΄μ€ κ°μ²΄λ₯Ό μ°Ύμλ΄ λλ€. |
Source Code νμ΄μ§ | |
Source code type |
Text/Binary files, Oracle SQL *Plus Script λλ COBOL programming source codeλ₯Ό μ ννμ¬ κ²μν νμΌ λλ λλ ν 리μ λν μμ€ μ½λ μ νμ λνλ λλ€. |
Add by file |
μ λλ₯΄κ³ μΆκ°ν νμΌμ μ°Ύμλ΄ λλ€. |
Add by directory |
μ λλ₯΄κ³ μΆκ°ν λλ ν λ¦¬λ‘ μ΄λν©λλ€. μ°Έκ³ : νμ λλ ν 리λ₯Ό κ²μνλ €λ©΄ Include Sub-directory νμΈλμ μ νν©λλ€. |
Scan using schema |
μ λλ₯΄κ³ κ²μν μ€ν€λ§λ₯Ό μ νν©λλ€. |
Inspect SGA νμ΄μ§ | |
Group |
κ²μν SQL λ¬Έμ ν¬ν¨νλ Inspector κ·Έλ£Ήμ μ νν©λλ€. |
Scan using schema |
μ λλ₯΄κ³ κ²μν μ€ν€λ§λ₯Ό μ νν©λλ€. |
Foglight Performance Investigator for Oracle νμ΄μ§ | |
μΊ‘μ²λ SQLμ μ μ₯νλ λ° μ¬μ©λ 리ν¬μ§ν 리λ₯Ό κ²μν λ°μ΄ν°λ² μ΄μ€λ₯Ό μ νν©λλ€. |
μ λλ¬ μ΄μ μ μμ±ν λ°μ΄ν°λ² μ΄μ€ μ°κ²°μ μ νν ν Check for PI Repositoryλ₯Ό λλ¬ λ¦¬ν¬μ§ν 리λ₯Ό μ°Ύμ΅λλ€. ν: μ λλ¬ Connection Managerλ₯Ό μ΄κ³ μ μ°κ²°μ μμ±ν©λλ€. |
Scan using schema |
μ λλ₯΄κ³ κ²μν μ€ν€λ§λ₯Ό μ νν©λλ€. |
Finishλ₯Ό λλ¬ κ²μμ μμν©λλ€.
μΆκ° μ 보λ₯Ό λ³΄λ €λ©΄ Job List μ°½μμ κ²μ μμ μ μ νν©λλ€.
Job List μ°½μ νμλλ μΈλΆ μ 보μλ λ°κ²¬λ SQL λ¬Έμ μμ κ° λ¬Έμ λν λΆλ₯κ° ν¬ν¨λ©λλ€.
ν: λ€λ₯Έ κ·Έλ£Ήμ κ²μ μμ μ νμνλ €λ©΄ μ λλ₯΄κ³ λ€λ₯Έ κ·Έλ£Ήμ μ νν©λλ€.
SQL Text λ° Execution Plan μ°½μμ μ νν λ¬Έμ₯μ λν μΆκ° μ 보λ₯Ό λ³΄λ €λ©΄ SQL List μ°½μμ SQL λ¬Έμ μ νν©λλ€.
ν: SQL Text μ°½μμ μ λλ¬ μ νν λ¬Έμ₯μ Optimize SQLλ‘ μ μ‘νμμμ€.
© 2024 Quest Software Inc. ALL RIGHTS RESERVED. Terms of Use Privacy Cookie Preference Center