{'fraction_non_alphanumeric': 0.01982651796778191, 'fraction_numerical': 0.0012391573729863693, 'mean_word_length': 5.029850746268656, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Rule-based query optimization in IRIS

In this paper we present the design and initial performance results of a rule-based query optimizer used in Iris, an object-oriented database system [3]. Query optimization methods are expressed as rules and the entire query process is carried out in a way analogous to the operation of production systems in AI. Two kinds of rules are used: the first kind transform a query, represented as a relational algebra expression, into an equivalent, but simpler, query; the second kind add information to the relational algebra representation to specify join order and data access methods. Preliminary results show that the speed of the query optimizer and the performance of the execution plans generated are comparable to those in a traditional relational database system.