Efficient Operation Execution on Multidimensional Array Data
Norbert Widmann · mediaTUM – the media and publications repository of the Technical University Munich (Technical University Munich) · 2000
In this work, techniques for eÆcient operation execution on multidimensional arrays in database management systems are developed.All the techniques described here are implemented in the RasDaMan system, which provides a declarative query language on multidimensional arrays.The operations speci ed in this query language are executed using the operation execution engine developed here.Arrays of arbitrary base type, including user de ned structures, are supported.This implies the use of a dynamic type system supporting de nition of types at runtime of the server.The data can be of arbitrary dimensionality and size.Operation execution must be exible enough to cope with this data.At the same time, eÆciency is a key target, as the data volumes operated on are typically very big.Tiles are the basic unit of physical data storage for multidimensional arrays in the RasDaMan DBMS.All operations speci ed on arrays in queries are nally executed on tiles, so they form the basis for operation execution.A formalism de ning semantics of operations on multidimensional tiles is developed.This formalism takes the basic properties of tiles into account: base type and spatial domain.Semantics of operations and the applicability o f operations are de ned on these properties.Based on the formalism, the design for an operation execution engine for multidimensional arrays is developed.This design has two major goals: Encapsulation of the actual implementation to present a clear interface to other modules of the system and eÆciency when executing operations.An object-oriented model is developed to provide for encapsulation.This model provides eÆciency by avoiding multiple iterations through cells when possible.Furthermore, the encapsulation enables the optimisation of algorithms for operation execution without aecting other modules.The eÆciency of this implementation is evaluated using workloads from common application elds.A thorough performance analysis of the implemented code is carried out based on an instrumentation of the system.Operation execution is proven to be a key component in eÆcient query execution.A performance comparison with the current state of the art in data base technology is done.