13.3 Using the Extensibility Framework in Oracle
Oracle allows users to extend the basic functionality of the
database. Oracle's extensibility framework provides
entry points in which developers can add their own features to the
existing feature set. By using this framework you can do the
following:Add new relational or set operators for use in SQL statements
These new operators can be useful when working with extended
datatypes, such as multimedia or spatial data. You can create
relational operators that relate specifically to a particular
datatype, such as the relational operator CLOSER TO, which you can
use in SQL statements that access spatial data.
Create cooperative indexing
Cooperative indexing is a scheme in which an external application is
responsible for building and using an index structure that you can
use with complex datatypes. The indexes created are known
as domain indexes.
Extend the optimizer
If you use extended indexes, user-defined datatypes, or other
features, you can extend the statistics-collection process or define
selectivity and cost functions for these extended features. The
cost-based optimizer can then use these to choose an appropriate
query plan.
Add cartridge services
These are services used by Oracle database extensions (such as the
spatial capabilities) providing memory management, context
management, parameter management, string and number manipulation,
file I/O, internationalization, error reporting, and thread
management. These services are available to software developers to
provide a means to create uniform integration of extensions with the
Oracle database.
With these features, the extensibility framework enables you or a
third-party software developer to integrate additional functionality
into the main Oracle database while still using the core features of
the database, such as security management, backup and recovery, and
the SQL interface.