Searching thousands of items against large MARC files outside of a database environment may take a bit more time than usual. Here are some hints for improving the performance of list searching.
- The larger the list, the more impact these optimizations will have.
- Do not be concerned with the order of the items in your list; the program will optimize the order for you when it reads the items from the disk
- If you are validating a field, and the MARC data must meet another condition as well as match (or not match) an item in your list, always enter this other condition as the first pattern in the review. Thus, if the condition fails, the more time-consuming list search processing will be skipped entirely (Examples: the validation of coded fields that are dependednt upon a $2 value, validation of subject headings dependent upon an indicator, etc.)
- Similarly, if most of the 'hits' your list will make against the data that you are working with will be accounted for by a single item, or relatively small number of items, take those few items out of a big list and add them to a separate, small list–making sure that this small list is entered in the first pattern. Eg. if searching the MARC Codelist for Languages against a large file, instead of simply entering the codelist into the first pattern, create a pattern that searches the most common code(s) first, then enter the actual codelist as the second pattern.