1/321
Contents
Title and Copyright Information
Preface
Audience
Documentation Accessibility
Related Documents
Conventions
Changes in This Release for Oracle Text Application Developer's Guide
Changes in Oracle Text 12c Release 1 (12.1)
New Features
Deprecated Features
Desupported Features
1
Understanding Oracle Text Application Development
Introduction to Oracle Text
Document Collection Applications
About Document Collection Applications
Flowchart of Text Query Application
Catalog Information Applications
About Catalog Information Applications
Flowchart for Catalog Query Application
Document Classification Applications
XML Search Applications
The CONTAINS Operator with XML Search Applications
Combining Oracle Text Features with Oracle XML DB (XML Search Index)
2
Getting Started with Oracle Text
Overview of Getting Started with Oracle Text
Creating an Oracle Text User
Query Application Quick Tour
Creating the Text Table
Using SQL*Loader to Load the Table
Catalog Application Quick Tour
Creating the Table
Using SQL*Loader to Load the Table
Classification Application Quick Tour
About Classification of a Document
Steps for Creating a Classification Application
3
Indexing with Oracle Text
About Oracle Text Indexes
Types of Oracle Text Indexes
Structure of the Oracle Text CONTEXT Index
The Oracle Text Indexing Process
Partitioned Tables and Indexes
Creating an Index Online
Parallel Indexing
Indexing and Views
Considerations for Oracle Text Indexing
Location of Text
Document Formats and Filtering
Bypassing Rows for Indexing
Document Character Set
Document Language
Indexing Special Characters
Case-Sensitive Indexing and Querying
Document Services Procedures Performance and Forward Index
Language-Specific Features
About Entity Extraction and CTX_ENTITY
Fuzzy Matching and Stemming
Better Wildcard Query Performance
Document Section Searching
Stopwords and Stopthemes
Index Performance
Query Performance and Storage of Large Object (LOB) Columns
Mixed Query Performance
Creating Oracle Text Indexes
Summary of Procedure for Creating a Text Index
Creating Preferences
Creating Section Groups for Section Searching
Using Stopwords and Stoplists
Creating a CONTEXT Index
Creating a CTXCAT Index
Creating a CTXRULE Index
Maintaining Oracle Text Indexes
Viewing Index Errors
Dropping an Index
Resuming Failed Index
Re-creating an Index
Rebuilding an Index
Dropping a Preference
Managing DML Operations for a CONTEXT Index
Viewing Pending DML
Synchronizing the Index
Optimizing the Index
4
Querying with Oracle Text
Overview of Queries
Querying with CONTAINS
Querying with CATSEARCH
Querying with MATCHES
Word and Phrase Queries
Querying Stopwords
ABOUT Queries and Themes
Query Expressions
Case-Sensitive Searching
Query Feedback
Query Explain Plan
Using a Thesaurus in Queries
About Document Section Searching
Using Query Templates
Query Rewrite
Query Relaxation
Query Language
Ordering By SDATA Sections
Alternative and User-defined Scoring
Alternative Grammar
Query Analysis
Other Query Features
The CONTEXT Grammar
ABOUT Query
Logical Operators
Section Searching and HTML and XML
Proximity Queries with NEAR and NEAR_ACCUM Operators
Fuzzy, Stem, Soundex, Wildcard and Thesaurus Expansion Operators
Using CTXCAT Grammar
Stored Query Expressions
Calling PL/SQL Functions in CONTAINS
Optimizing for Response Time
Counting Hits
Using DEFINESCORE and DEFINEMERGE for User-defined Scoring
The CTXCAT Grammar
5
Presenting Documents in Oracle Text
Highlighting Query Terms
Text highlighting
Theme Highlighting
CTX_DOC Highlighting Procedures
Obtaining Part-of-Speech Information for a Document
Obtaining Lists of Themes, Gists, and Theme Summaries
Lists of Themes
Gist and Theme Summary
Document Presentation and Highlighting
Highlighting Example
Document List of Themes Example
Gist Example
6
Classifying Documents in Oracle Text
Overview of Document Classification
Classification Applications
Classification Solutions
Rule-Based Classification
Rule-based Classification Example
CTXRULE Parameters and Limitations
Supervised Classification
Decision Tree Supervised Classification
Decision Tree Supervised Classification Example
SVM-Based Supervised Classification
SVM-Based Supervised Classification Example
Unsupervised Classification (Clustering)
Unsupervised Classification (Clustering) Example
7
Tuning Oracle Text
Optimizing Queries with Statistics
Collecting Statistics
Query Optimization with Statistics Example
Re-Collecting Statistics
Deleting Statistics
Optimizing Queries for Response Time
Other Factors that Influence Query Response Time
Improved Response Time with FIRST_ROWS(n) Hint for ORDER BY Queries
Improved Response Time Using the DOMAIN_INDEX_SORT Hint
Improved Response Time using Local Partitioned CONTEXT Index
Improved Response Time with Local Partitioned Index for Order by Score
Improved Response Time with Query Filter Cache
Improved Response Time using BIG_IO Option of CONTEXT Index
Improved Response Time using SEPARATE_OFFSETS Option of CONTEXT Index
Improved Response Time using STAGE_ITAB Option of CONTEXT Index
Optimizing Queries for Throughput
CHOOSE and ALL ROWS Modes
FIRST_ROWS(n) Mode
Composite Domain Index (CDI) in Oracle Text
Performance Tuning with CDI
Solving Index and Query Bottlenecks Using Tracing
Using Parallel Queries
Parallel Queries on a Local Context Index
Parallelizing Queries Across Oracle RAC Nodes
Tuning Queries with Blocking Operations
Frequently Asked Questions About Query Performance
What is Query Performance?
What is the fastest type of text query?
Should I collect statistics on my tables?
How does the size of my data affect queries?
How does the format of my data affect queries?
What is a functional versus an indexed lookup?
What tables are involved in queries?
Does sorting the results slow a text-only query?
How do I make an ORDER BY score query faster?
Which memory settings affect querying?
Does out-of-line LOB storage of wide base table columns improve performance?
How can I make a CONTAINS query on more than one column faster?
Is it OK to have many expansions in a query?
How can local partition indexes help?
Should I query in parallel?
Should I index themes?
When should I use a CTXCAT index?
When is a CTXCAT index NOT suitable?
What optimizer hints are available, and what do they do?
Frequently Asked Questions About Indexing Performance
How long should indexing take?
Which index memory settings should I use?
How much disk overhead will indexing require?
How does the format of my data affect indexing?
Can parallel indexing improve performance?
How can I improve index performance for creating local partitioned index?
How can I tell how much indexing has completed?
Frequently Asked Questions About Updating the Index
How often should I index new or updated records?
How can I tell when my indexes are getting fragmented?
Does memory allocation affect index synchronization?
8
Searching Document Sections in Oracle Text
About Oracle Text Document Section Searching
Enabling Oracle Text Section Searching
Oracle Text Section Types
Oracle Text Section Attributes
HTML Section Searching with Oracle Text
Creating HTML Sections
Searching HTML Meta Tags
XML Section Searching with Oracle Text
Automatic Sectioning
Attribute Searching
Creating Document Type Sensitive Sections
Path Section Searching
9
Using Oracle Text Name Search
Overview of Name Search
Examples of Using Name Search
10
Working With a Thesaurus in Oracle Text
Overview of Oracle Text Thesaurus Features
Oracle Text Thesaurus Creation and Maintenance
Using a Case-sensitive Thesaurus
Using a Case-insensitive Thesaurus
Default Thesaurus
Supplied Thesaurus
Defining Terms in a Thesaurus
Defining Synonyms
Defining Hierarchical Relations
Using a Thesaurus in a Query Application
Loading a Custom Thesaurus and Issuing Thesaurus-based Queries
Augmenting Knowledge Base with Custom Thesaurus
About the Supplied Knowledge Base
Adding a Language-Specific Knowledge Base
Limitations for Adding Knowledge Bases
11
Using XML Query Result Set Interface
Overview of the XML Query Result Set Interface
Using the XML Query Result Set Interface
Creating XML-Only Applications with Oracle Text
Example of a Result Set Descriptor
12
Administering Oracle Text
Oracle Text Users and Roles
CTXSYS User
CTXAPP Role
Granting Roles and Privileges to Users
DML Queue
The CTX_OUTPUT Package
The CTX_REPORT Package
Text Manager in Oracle Enterprise Manager
Using Text Manager
Viewing General Information for a Text Index
Checking Text Index Health
Servers and Indexing
Database Feature Usage Tracking in Oracle Enterprise Manager
Oracle Text on Oracle Real Application Clusters
13
Migrating Oracle Text Applications
Oracle Text and Rolling Upgrade with Logical Standby
CTX_DDL PL/SQL Procedures
CTX_OUTPUT PL/SQL Procedures
CTX_DOC PL/SQL Procedures
About Migrating to Oracle Text 12c Release 1 (12.1)
About Migrating to Oracle Text 11g Release 2 (11.2)
About Migrating to Oracle Text 11g Release 1 (11.1)
About Migrating to Oracle Text 10g Release 2 (10.2)
Filter Comparison (INSO_FILTER versus AUTO_FILTER)
About Migrating to the AUTO_FILTER Filter Type
A
CONTEXT Query Application
Web Query Application Overview
The PL/SQL Server Pages (PSP) Web Application
PSP Web Application Prerequisites
Building the PSP Web Application
PSP Web Application Sample Code
The Java Server Pages (JSP) Web Application
JSP Web Application Prerequisites
JSP Web Application Sample Code
B
CATSEARCH Query Application
CATSEARCH Web Query Application Overview
The JSP Web Application
Building the JSP Web Application
JSP Web Application Sample Code
Glossary
Index
Scripting on this page enhances content navigation, but does not change the content in any way.