Nicolas Bruno and Pablo Castro
In this work we look at combining emerging technologies in programming languages with traditional query processing techniques to provide support for efficient execution of declarative queries over adaptive data structures. We first explore available technologies such as Language-Integrated Query, or LINQ (which enables declarative queries in programming languages) and the ADO.NET DataSet classes (which provide various efficient alternatives to manipulate data in procedural terms). Unfortunately, combining the good features in both technologies is not straightforward, since LINQ over DataSets results by default in execution plans that do not exploit the specific characteristics of the data structures. To address this limitation, we introduce a lightweight optimizer that dynamically chooses appropriate execution strategies for declarative queries on DataSets based on their internal structure. To further enable declarative programming, we introduce a component that dynamically reorganizes the internal representation of DataSets, so that they automatically respond to workload changes. We experimentally showcase the features of our approach.
|Published in||Proceedings of the International Conference on Data Engineering (ICDE)|