Product Information > JADE Development Environment User’s Guide > Chapter 9 - Defining ODBC Inquiry Relational Views and Ad Hoc Indexes > Maintaining Ad Hoc Indexes

Maintaining Ad Hoc Indexes

Ad hoc indexes, which enable you to create indexes suitable for optimizing ad hoc queries without requiring database reorganization, are defined as a subclass of DynaDictionary, with instances mapped to a RootSchema map file called _sindexes.dat.

The _sindexes.dat database file is partitioned (for example, _sindexes_part0000000001.dat), with each ad hoc index instance created in a new partition to facilitate a fast drop index operation, which uses the existing dropPartition operation. The classes that represent index meta data are mapped to the _sindexdefs.dat RootSchema database file. (The _sindexes.dat and _sindexdefs.dat files are of Kind_Utility.)

The [JadeAdHocIndex] section in the JADE initialization file enables you to specify options for the worker applications that build, drop, and delete an ad hoc index, and for the controller application that starts worker applications when there is an ad hoc index maintenance operation to be performed. For details about the BuildCommitPeriod and MaxBuildWorkers parameters, see "JADE Ad Hoc Index Section [JadeAdHocIndex]", in the JADE Initialization File Reference.

An Index Writer application reads from the main database (or from journals when catch‑up is required), and creates and maintains the user‑defined index. The ODBC driver function that performs ODBC queries can then use a combination of ad hoc indexes and collections in the main database to satisfy queries.

The Ad Hoc Index Browser enables you to:

For details about using the jadclient executable to create indexes suitable for optimizing ad hoc queries without requiring database reorganization, see "Ad Hoc Index Batch Interface", in Chapter 1 of the JADE Runtime Application Guide.