An Adabas file contains elementary fields (which may also be descriptors), groups, superdescriptors, and subdescriptors. Each has a 2-character name. There is a maximum of 926 names per file.
From here on, I’ll use the term descriptor generically, to include elementary descriptors, subdecriptors, and superdescriptors.
There used to be a maximum of 200 descriptors per file, but this restriction may have been lifted. Since superdescriptors are comprised of components of elementary fields, you can have a file with more descriptors than elementary fields.
For each descriptor, an inverted list is maintained. For each record addition, update, and deletion, Adabas needs to maintain all the inverted lists for the file. This maintenance (overhead) impacts performance, but performance is relative. What is “good” performance? A better question is, what is acceptable performance? You can add more descriptors as long as performance is acceptable.
Aim for overall application performance. The addition of a descriptor is justified if it improves application performance. Often a descriptor can be used to reduce dramatically the number of records rejected in a processing loop. Rejected records also should be considered overhead.