Sumário Itens Encontrados: 189Chapter 1: Oracle IndexesImproving Performance with IndexesDetermining Which Type of Index to UseB-tree IndexesSpecialized Index TypesDetermining Which Columns to IndexIndexes on Primary Key and Unique Key ColumnsIndexes on Foreign Key ColumnsOther Suitable ColumnsIndexing GuidelinesChapter 2: B-tree IndexesUnderstanding How Oracle Uses B-tree IndexesScenario 1: All Data Lies in the Index BlocksScenario 2: All Information Is Not Contained in the IndexScenario 3: Only the Table Blocks Are AccessedPrepping for B-tree IndexesEstimating the Size of an Index Before CreationCreating Separate Tablespaces for IndexesInheriting Storage Parameters from the TablespaceNaming StandardsImplementing B-tree IndexesCreating a B-tree IndexReporting on IndexesDisplaying Index CodeDropping a B-tree IndexManaging B-tree Indexes with ConstraintsCreating B-tree Index on Primary Key ColumnsCreating a B-tree Index on Unique Key ColumnsIndexing Foreign Key ColumnsChapter 3: Bitmap IndexesUnderstanding Bitmap IndexesCreating a Bitmap IndexCreating a Partitioned Bitmap IndexCreating a Bitmap Index on an Index-Organized TablePerformance Implications Querying with Bitmap IndexesPerformance Implications Loading Data with Bitmap IndexesUnderstanding Bitmap Join IndexesCreating a Bitmap Join IndexReporting on Bitmap IndexesChapter 4: Index-Organized TablesUnderstanding the StructureUnderstanding the AdvantagesCreating an Index-Organized TableAdding an Overflow SegmentCompressing an Index-Organized TableBuilding Secondary IndexesRebuilding an Index-Organized TableReporting on Index-Organized TablesChapter 5: Specialized IndexesInvisible IndexesWhen to Create an Invisible IndexCreating an Invisible IndexFinding Invisible Indexes In Your DatabaseMaking an Invisible Index Available to the OptimizerMaintaining an Invisible IndexFunction-Based IndexesCreating a Function-Based IndexLimitations of Function-Based IndexesCollecting Statistics for Function-Based IndexesIndexes on Virtual ColumnsKey-Compressed IndexesWhen Key Compression is UsefulCreating a Compressed IndexKey Compression and StorageComposite IndexesUnderstanding Index Skip Scans and Composite IndexesOrdering the Columns in a Composite IndexChoosing Keys for Composite IndexesCreating Virtual IndexesReverse Key IndexesDisadvantages of a Reverse Key IndexWhen to Use a Reverse Key IndexCreating a Reverse Key IndexApplication Domain IndexesChapter 6: Partitioned IndexesUnderstanding Partitioned IndexesCreating a Locally Partitioned IndexThe Simplest FormPartition-Level RequirementsPrefixed and Non-Prefixed OptionsManaging Primary Keys and Unique IndexesCreating a Globally Partitioned IndexChoosing the Type of Index for Your ApplicationMaintaining Indexes on Partitioned TablesAdding a PartitionTruncating a PartitionMoving a PartitionSplitting a PartitionExchanging a PartitionDropping a PartitionMerging a PartitionRebuilding Globally Partitioned and Non-Partitioned IndexesSetting Index Partitions as Unusable and Then RebuildingIndex Implications for Interval PartitioningMaking Older Data Read-OnlyReporting on Partitioned IndexesChapter 7: Tuning Index UsageOptimizer Access PathsIndex ScansIndex Unique ScanIndex Range ScanIndex Skip ScanIndex Full ScanIndex Fast Full ScanDetermining Whether a Query Uses an IndexAvoiding an IndexAvoiding All Use of an IndexAvoiding Only the Fast Full ScanForcing a Table ScanChoosing Between an Index and a Table ScanWhy the Optimizer May Ignore IndexesNumber of Distinct RowsIndex Clustering FactorHow Index Access Paths Can Change Without New StatisticsUsing the NOT EQUAL ConditionQuerying with Wild CharactersReferencing Null Values in PredicatesWriting Functions in a QuerySkipping the Leading Portion of an IndexForcing the Optimizer to Use an IndexApplying the INDEX HintApplying Related HintsTroubleshooting a Failed INDEX HintAdjusting the Optimizer_index_cost_adj ParameterCollecting Accurate Statistics for an IndexParallelizing Index AccessChapter 8: Maintaining IndexesGathering Statistics for IndexesThe DBMS_STATS PackageThe METHOD_OPT ParameterWorking with Unusable IndexesMaking an Index UnusableSpecifying the SKIP_UNUSABLE_INDEXES ParameterManaging Index Space UsageRebuilding to Reduce FragmentationRebuilding Reverse-Key IndexesReclaiming Unused SpaceRebuilding a Partitioned IndexRebuilding Indexes FrequentlyThe Role of the INDEX_STATS View in Index RebuildsBenefits from the INDEX_STATs viewProblems with the INDEX_STATS viewIndex Rebuilding: The DebateArguments for RebuildingArguments Against RebuildingOur AdviceCoalescing Indexes to Reduce FragmentationShrinking Indexes to Reduce FragmentationMoving Tables and IndexesImproving Index Creation EfficiencyParallelizing Index CreationAvoiding Redo Generation During Index CreationUsing Larger Block SizesCompressing IndexesUsing Multiple Options TogetherGenerating the DDL for Creating an IndexUsing the DBMS_METADATA PackageUsing the SESSION_TRANSFORM ProcedureUsing the SET_FILTER ProcedureUsing Data PumpDropping an IndexThe Hazards of Dropping an IndexChapter 9: SQL Tuning AdvisorHow the Tools RelateAutomatic SQL Tuning JobVerifying Automatic Jobs RunningViewing Automatic SQL Tuning Job AdviceGenerating a SQL Script to Implement Automatic Tuning AdviceDisabling and Enabling Automatic SQL TuningManaging SQL Tuning SetsViewing Resource-Intensive SQL in the AWRViewing Resource-Intensive SQL in MemoryPopulating SQL Tuning Set from High-Resource SQL in AWRPopulating a SQL Tuning Set from High-Resource SQL in MemoryPopulating SQL Tuning Set with All SQL in MemoryDisplaying the of a SQL Tuning SetSelectively Deleting Statements from a SQL Tuning SetAdding Statements to an Existing SQL Tuning SetDropping a SQL Tuning SetRunning the SQL Tuning AdvisorCreating a Tuning TaskExecute DBMS_SQLTUNE and View the AdviceViewing and Dropping Tuning TasksRunning SQL Tuning Advisor from SQL DeveloperRunning SQL Tuning Advisor from Enterprise ManagerChapter 10: SQL Access AdvisorGenerating Advice for a Single SQL StatementObtaining Advice for a Group of SQL StatementsQuerying Advisor Views