DORS: Database Query Optimizer with Rule Based Search Engine
Carlo Giovano, Sílvio Roberto Ignácio Pires, Javam C. Machado · 2002
The database query optimizer is a very important and complex module in database management systems. It receives a query optimization request with a query tree as a parameter and return an optimized execution plan. The query optimization problem is NP-Hard; therefore, there are many proposals of heuristics and techniques for optimization strategies. There are also several data models (e.g objectoriented, relational, object-relational and semi-structured/XML) suitable to store information for different kinds of applications. Several optimization frameworks were proposed with the aim of making easier to build optimizers and reuse design decisions. However, they are tied to some specific language and hard to integrate with other database modules. We propose a design pattern to help the design and construction of a database optimizer. So far, we do not have knowledge about similar work. Context Different types of applications should use a suitable data model. For instance, commercial systems work well with relational data models, CAD/CAM systems need a more expressive data model as the objectoriented, and the Internet with XML [W3C] applications work well with semi-structured data models. Different data models and different kinds of applications require specific implementation of the query