تدريب: This Oracle SQL Tuning for Developers Workshop will help you explore Oracle SQL statement tuning. Learn how to write well-tuned SQL statements appropriate for the Oracle Database.
دوراتنا
Oracle Database 19c: SQL Tuning ورشة عمل Live Class
- الرئيسة /
- Oracle قاعدة البيانات /
- Oracle Database 19c: SQL Tuning ورشة عمل Live Class
دورة المحتوى
- 1 Course Introduction
- Lesson Agenda
- Course Objectives
- Audience and Prerequisites
- Course Outline Map
- Activities
- Lesson Agenda
- Sample Schemas Used in the Course
- Human Resources (HR) Schema
- Sales History (SH) Schema
- Order Entry(OE) Schema
- Lesson Agenda
- Class Account Information
- Lesson Agenda
- SQL Environments Available in the Course
- Lesson Agenda
- Workshops, Demo Scripts, Code Examples, and Solution Scripts
- Appendixes in the Course
- 2 Introduction to SQL Tuning
- Objectives
- Lesson Agenda
- What Is SQL Tuning?
- SQL Tuning Session
- Recognize: What Is Bad SQL?
- Clarify: Understand the Current Issue
- Verify: Collect Data
- Verify: Is Bad SQL a Real Problem? (Top-Down Analysis)
- Lesson Agenda
- SQL Tuning Strategies: Overview
- Checking the Basics
- Advanced SQL Tuning Analysis
- Plan Comparison Strategy
- Quick Solution Strategy
- Finding a Good Plan
- iii
- Implementing the New Good Plan
- Query Analysis Strategy: Overview
- Query Analysis Strategy: Collecting Data
- Query Analysis Strategy: Examining SQL Statements
- Query Analysis Strategy: Analyzing Execution Plans
- Query Analysis Strategy: Finding Execution Plans
- Query Analysis Strategy: Reviewing Common Observations and Causes
- Query Analysis Strategy: Determining Solutions
- Lesson Agenda
- Development Environments: Overview
- What Is Oracle SQL Developer?
- Coding PL/SQL in Oracle SQL*Plus
- Quiz
- Summary
- Practice 2: Overview
- 3 Using Application Tracing Tools
- Objectives
- Lesson Agenda
- Using Application Tracing: Overview
- Steps Needed Before Tracing
- Lesson Agenda
- Application Tracing Tools: Overview
- Lesson Agenda
- Using the SQL Tracing Facility
- Tracing Your Own Session: Example
- Tracing a Specific User: Example
- Consideration: Tracing Challenge
- Lesson Agenda
- End-to-End Application Tracing
- Service Tracing: Example
- Module Tracing: Example
- Action Tracing: Example
- Client Tracing: Example
- Session Tracing: Example
- Tracing Your Own Session: Example
- Lesson Agenda
- trcsess Utility
- Invoking the trcsess Utility
- Using the trcsess Utility: Example
- Lesson Agenda
- iv
- TKPROF Utility: Overview
- Invoking the TKPROF Utility
- TKPROF Sorting Options
- TKPROF Report Structure
- Interpreting a TKPROF Report: Example 1
- Interpreting a TKPROF Report: Example 2
- Interpreting a TKPROF Report: Example 3
- What to Verify: Example
- Quiz
- Summary
- Practice 3: Overview
- 4 Optimizer Fundamentals
- Objectives
- Lesson Agenda
- SQL Statement Representation
- Lesson Agenda
- SQL Statement Processing: Overview
- SQL Statement Parsing
- SQL Optimization
- SQL Row Source Generation
- SQL Row Source Generation: Example
- SQL Execution
- Quiz
- Lesson Agenda
- Why Do You Need an Optimizer?
- Components of the Optimizer
- Lesson Agenda
- Query Transformer
- Transformer: Cost-Based OR Expansion Example
- Transformer: Subquery Unnesting Example
- Transformer: View Merging Example
- Transformer: Predicate Pushing Example
- Transformer: Transitivity Example
- Cursor-Duration Temporary Tables
- Hints for Query Transformation
- Quiz
- Lesson Agenda
- Query Estimator: Selectivity and Cardinality
- Importance of Selectivity and Cardinality
- Selectivity and Cardinality: Example
- v
- Query Estimator: Cost
- Query Estimator: Cost Components
- Lesson Agenda
- Plan Generator
- Lesson Agenda
- Adaptive Query Optimization
- Lesson Agenda
- Quarantined SQL Plans
- Lesson Agenda
- Controlling the Behavior of the Optimizer
- Optimizer Features and Oracle Database Releases
- Summary
- Practice 4: Overview
- 5 Generating and Displaying Execution Plans
- Objectives
- Lesson Agenda
- What Is an Execution Plan?
- Reading an Execution Plan
- Reviewing the Execution Plan
- Where to Find Execution Plans
- Viewing Execution Plans
- Lesson Agenda
- The EXPLAIN PLAN Command: Overview
- The EXPLAIN PLAN Command: Syntax
- The EXPLAIN PLAN Command: Example
- Lesson Agenda
- PLAN_TABLE
- Displaying from PLAN_TABLE
- Displaying from PLAN_TABLE: ALL
- Displaying from PLAN_TABLE: ADVANCED
- Explain Plan Using Oracle SQL Developer
- Quiz
- Lesson Agenda
- AUTOTRACE
- The AUTOTRACE Syntax
- AUTOTRACE: Examples
- AUTOTRACE: Statistics
- AUTOTRACE by Using SQL Developer
- Quiz
- Lesson Agenda
- vi
- Links Between Important Dynamic Performance Views
- V$SQL_PLAN View: Overview
- V$SQL_PLAN Columns
- The V$SQL_PLAN_STATISTICS View
- Querying V$SQL_PLAN
- Hint Usage Reporting
- Lesson Agenda
- Automatic Workload Repository
- Important AWR Views
- Comparing Execution Plans by Using AWR
- Comparing SQL Execution Plans
- Generating SQL Reports from AWR Data
- Lesson Agenda
- SQL Monitoring: Overview
- SQL Monitoring Report: Example
- Quiz
- Summary
- Practice 5: Overview
- 6 Interpreting Execution Plans and Enhancements
- Objectives
- Lesson Agenda
- Interpreting a Serial Execution Plan
- Execution Plan Interpretation: Example 1
- Execution Plan Interpretation: Example 2
- Execution Plan Interpretation: Example 3
- Execution Plan Interpretation: Example 4
- Lesson Agenda
- Looking Beyond Execution Plans
- Quiz
- Lesson Agenda
- Adaptive Query Optimization: Overview
- Adaptive Plans: Join Method
- Adaptive Join Method: Example
- Adaptive Join Method: Working
- Displaying the Default Plan
- Displaying the Final Plan
- Displaying the Full Adaptive Plan
- Adaptive Plans: Indicator in V$SQL
- Summary
- Practice 6: Overview
- vii
- 7 Optimizer: Table and Index Access Paths
- Objectives
- Lesson Agenda
- Row Source Operations
- Lesson Agenda
- Main Structures and Access Paths
- Lesson Agenda
- Full Table Scan
- Using Full Table Scan
- ROWID Scan
- Sample Table Scans
- Quiz
- Lesson Agenda
- Indexes: Overview
- Normal B*-tree Indexes
- Index Scans
- Index Unique Scan
- Index Range Scan
- Index Range Scan: Descending
- Descending Index Range Scan
- Index Range Scan: Function-Based
- Index Full Scan
- Index Fast Full Scan
- Index Skip Scan
- Index Join Scan
- Index Skip Scan: Example
- B*-tree Indexes and Nulls
- Using Indexes: Considering Nullable Columns
- Index-Organized Tables
- Index-Organized Table Scans
- Bitmap Indexes
- Bitmap Index Access: Examples
- Combining Bitmap Indexes: Examples
- Combining Bitmap Index Access Paths
- Bitmap Operations
- Bitmap Join Index
- Composite Indexes
- Invisible Index: Overview
- Invisible Indexes: Examples
- Guidelines for Managing Indexes
- Quiz
- viii
- Lesson Agenda
- Common Observations
- Why Is a Full Table Scan Used?
- Why Is a Full Table Scan Not Used?
- Why Is an Index Scan Not Used?
- Lesson Agenda
- Automatic Indexing Task
- Workflow
- Automatic Indexing Task Reporting
- Automatic Indexing Views
- Summary
- Practice 7: Overview
- 8 Optimizer: Join Operators
- Objectives
- Lesson Agenda
- How the Query Optimizer Executes Join Statements
- Join Methods
- Nested Loops Join
- Nested Loops Join: Prefetching
- Sort-Merge Join
- Hash Join
- Cartesian Join
- Lesson Agenda
- Join Types
- Equijoins and Nonequijoins
- Outer Joins
- Semijoins
- Antijoins
- Quiz
- Summary
- Practice 8: Overview
- 9 Other Optimizer Operators
- Objectives
- Lesson Agenda
- Result Cache Operator
- Using RESULT_CACHE
- Using Result Cache Table Annotations
- Lesson Agenda
- Clusters
- ix
- When Are Clusters Useful?
- Cluster Access Path: Examples
- Lesson Agenda
- Sorting Operators
- Lesson Agenda
- Buffer Sort Operator
- Lesson Agenda
- Inlist Iterator
- Lesson Agenda
- View Operator
- Lesson Agenda
- Count Stop Key Operator
- Lesson Agenda
- Min/Max and First Row Operators
- Lesson Agenda
- Other N-Array Operations
- FILTER Operations
- OR Expansion Operation
- UNION [ALL], INTERSECT, MINUS
- Quiz
- Summary
- Practice 09: Overview
- 10 Introduction to Optimizer Statistics Concepts
- Objectives
- Lesson Agenda
- Optimizer Statistics
- Table Statistics(USER_TAB_STATISTICS)
- Index Statistics(USER_IND_STATISTICS)
- Index Clustering Factor
- Column Statistics (USER_TAB_COL_STATISTICS)
- Lesson Agenda
- Column Statistics: Histograms
- Frequency Histograms
- Viewing Frequency Histograms
- Top Frequency Histogram
- Viewing Top Frequency Histograms
- Height-Balanced Histograms
- Viewing Height-Balanced Histograms
- Hybrid Histograms
- Viewing Hybrid Histograms
- x
- Best Practices: Histograms
- Lesson Agenda
- Column Statistics: Extended Statistics
- Column Group Statistics
- Expression Statistics
- Lesson Agenda
- Session-Specific Statistics for Global Temporary Tables
- Session-Specific Statistics for Global Temporary Tables: Example
- Lesson Agenda
- System Statistics
- System Statistics: Example
- Lesson Agenda
- Gathering Statistics: Overview
- Manual Statistics Gathering
- When to Gather Statistics Manually
- Managing Statistics: Overview (Export/Import/Lock/Restore/Publish)
- Lesson Agenda
- Real-Time Statistics
- Quiz
- Summary
- Practice 10: Overview
- 11 Using Bind Variables
- Objectives
- Lesson Agenda
- Cursor Sharing and Different Literal Values
- Lesson Agenda
- Cursor Sharing and Bind Variables
- Bind Variables in SQL*Plus
- Bind Variables in Oracle SQL Developer
- Lesson Agenda
- Bind Variable Peeking
- Lesson Agenda
- Cursor Sharing Enhancements
- CURSOR_SHARING Parameter
- Forcing Cursor Sharing: Example
- Lesson Agenda
- Adaptive Cursor Sharing: Overview
- Adaptive Cursor Sharing: Architecture
- Adaptive Cursor Sharing: Views
- Adaptive Cursor Sharing: Example
- xi
- Interacting with Adaptive Cursor Sharing
- Quiz
- Summary
- Practice 11: Overview
- 12 SQL Plan Management
- Objectives
- Lesson Agenda
- Maintaining SQL Performance
- Lesson Agenda
- SQL Plan Management: Overview
- Components of SQL Plan Management
- SQL Plan Baseline: Architecture
- Lesson Agenda
- Basic Tasks in SQL Plan Management
- Configuring SQL Plan Management
- Loading SQL Plan Baselines
- SQL Plan Selection
- Evolving SQL Plan Baselines
- Lesson Agenda
- Adaptive SQL Plan Management
- Managing the SPM Evolve Advisor Task
- Important SQL Plan Baseline Attributes
- Lesson Agenda
- Possible SQL Plan Manageability Scenarios
- SQL Performance Analyzer and SQL Plan Baseline Scenario
- Loading a SQL Plan Baseline Automatically
- Purging SQL Management Base Policy
- Lesson Agenda
- Loading Hinted Plans into SPM: Example
- Quiz
- Summary
- Practice 12: Overview
- 13 Workshops
- Objectives
- Overview
- Workshop 1
- Workshop 2
- Workshop 3
- Workshop 4
- xii
- Workshop 5
- Workshop 6 and 7 (Optional)
- Workshop 8
- Workshop 9
- Summary
- A Using SQL Developer
- Objectives A-2
- What Is Oracle SQL Developer? A-3
- SQL Developer: Specifications A-4
- SQL Developer 19.1 Interface A-5
- Creating a Database Connection A-7
- Browsing Database Objects A-10
- Displaying the Table Structure A-11
- Browsing Files A-12
- Creating a Schema Object A-13
- Creating a New Table: Example A-14
- Using the SQL Worksheet A-15
- Executing SQL Statements A-18
- Saving SQL Scripts A-19
- Executing Saved Script Files: Method 1 A-20
- Executing Saved Script Files: Method 2 A-21
- Formatting the SQL Code A-22
- Using Snippets A-23
- Using Snippets: Example A-24
- Using the Recycle Bin A-25
- Debugging Procedures and Functions A-26
- Database Reporting A-27
- Creating a User-Defined Report A-28
- Search Engines and External Tools A-29
- Setting Preferences A-30
- Resetting the SQL Developer Layout A-32
- Data Modeler in SQL Developer A-33
- Summary A-34
- B SQL Tuning Advisor
- Objectives B-2
- Tuning SQL Statements Automatically B-3
- Application Tuning Challenges B-4
- SQL Tuning Advisor: Overview B-5
- Stale or Missing Object Statistics B-6
- xiii
- SQL Statement Profiling B-7
- Plan Tuning Flow and SQL Profile Creation B-8
- SQL Tuning Loop B-9
- Access Path Analysis B-10
- SQL Structure Analysis B-11
- SQL Tuning Advisor: Usage Model B-12
- Cloud Control and SQL Tuning Advisor B-13
- Running SQL Tuning Advisor: Example B-14
- Schedule SQL Tuning Advisor Page B-15
- Implementing Recommendations B-16
- Compare Explain Plan Page B-17
- Quiz B-18
- Summary B-20
- C Using SQL Access Advisor
- Objectives C-2
- SQL Access Advisor: Overview C-3
- SQL Access Advisor: Usage Model C-4
- Recommendations C-5
- SQL Access Advisor Session: Initial Options C-6
- SQL Access Advisor: Workload Source C-8
- SQL Access Advisor: Recommendation Options C-9
- SQL Access Advisor: Schedule and Review C-10
- SQL Access Advisor: Results C-11
- SQL Access Advisor: Results and Implementation C-12
- Quiz C-13
- Summary C-15
- D Exploring the Oracle Database Architecture
- Objectives D-2
- Oracle Database Server Architecture: Overview D-3
- Connecting to the Database Instance D-4
- Oracle Database Memory Structures: Overview D-6
- Database Buffer Cache D-7
- Redo Log Buffer D-8
- Shared Pool D-9
- Processing a DML Statement: Example D-10
- COMMIT Processing: Example D-11
- Large Pool D-12
- Java Pool and Streams Pool D-13
- Program Global Area D-14
- xiv
- Background Process D-15
- Automatic Shared Memory Management D-16
- Automated SQL Execution Memory Management D-17
- Automatic Memory Management D-18
- Database Storage Architecture D-19
- Logical and Physical Database Structures D-21
- Segments, Extents, and Blocks D-23
- SYSTEM and SYSAUX Tablespaces D-24
- Quiz D-25
- Summary D-28
- E Real-Time Database Operation Monitoring
- Objectives E-2
- Real-Time Database Operation Monitoring: Overview E-3
- Use Cases E-4
- Current Tools E-5
- Defining a DB Operation E-6
- Scope of a Composite DB Operation E-7
- Database Operation Concepts E-8
- Identifying a Database Operation E-9
- Enabling Monitoring of Database Operations E-10
- Identifying, Starting, and Completing a Database Operation E-11
- Monitoring the Progress of a Database Operation E-12
- Monitoring Load Database Operations E-13
- Monitoring Load Database Operation Details E-14
- Reporting Database Operations by Using Views E-15
- Reporting Database Operations by Using Functions E-17
- Database Operation Tuning E-18
- Quiz E-19
- Summary E-21
- F Gathering and Managing Optimizer Statistics
- Objectives F-2
- Lesson Agenda F-3
- Gathering Statistics: Overview F-4
- Automatic Optimizer Statistics Gathering F-5
- Optimizer Statistic Preferences: Overview F-6
- Manual Statistics Gathering
- F-8
- When to Gather Statistics Manually F-9
- Manual Statistics Collection: Factors F-10
- Gathering Object Statistics: Example F-11
- xv
- Object Statistics: Best Practices F-12
- Lesson Agenda F-13
- Dynamic Statistics: Overview F-14
- Dynamic Statistics at Work F-15
- OPTIMIZER_DYNAMIC_SAMPLING F-17
- Lesson Agenda F-18
- Automatic Re-optimization F-19
- Re-optimization: Statistics Feedback F-20
- Statistics Feedback: Monitoring Query Executions F-21
- Statistics Feedback: Reparsing Statements F-22
- Lesson Agenda F-23
- SQL Plan Directives F-24
- SQL Plan Directives: Example F-28
- Lesson Agenda F-29
- Online Statistics Gathering for Bulk Loads F-30
- Lesson Agenda F-32
- Concurrent Statistics Gathering F-33
- Concurrent Statistics Gathering: Creating Jobs at Different Levels F-34
- Lesson Agenda F-35
- Gathering System Statistics: Automatic Collection – Example F-36
- Gathering System Statistics: Manual Collection – Example F-37
- Lesson Agenda F-38
Managing Statistics: Overview (Export / Import / Lock / Restore / Publish) F-39
- Exporting and Importing Statistics F-40
- Locking and Unlocking Statistics F-41
- Restoring Statistics F-42
- Deferred Statistics Publishing: Overview F-44
- Deferred Statistics Publishing: Example F-46
- Running Statistics Gathering Functions in Reporting Mode F-47
- Reporting on Past Statistics Gathering Operations F-48
- Managing SQL Plan Directives F-49
- Quiz F-50
- Summary F-53
ذات صلة الدورات
Oracle AI Vector بحث Deep Dive ELS
Discover how Oracle Database 23aitransforms natural language questions into secure,..
يومان
11 Lectures
Oracle AI Vector Search Fundamentals Live Class
Leverage the key capability of Oracle AI Databaseto design and..
يومان
13 Lectures
Oracle قاعدة البيانات Appliance Release 18c Overview
This course provides an overview of Oracle Database Appliance Release..
يومان
14 محاضرة
Oracle Exadata Database Machine: تطبيق و Administration
After completing this course, you should be able to: Describe..
5 أيام
23 Lectures
XML Fundamentals Ed 1.1
XML Fundamentals Ed 1.1..
يومان
9 Lectures
Oracle قاعدة البيانات 19c: Data Warehousing Techniques LVC
The course covers the following topics: Data warehousing concepts Data..