Extending SQL for Decision Support Applications.

Haixun Wang, Carlo Zaniolo · 2002

The challenge of extending database systems for decision support applications has been thetopic of much recent research—a very incomplete list of previous work includes [11, 8, 12, 4,10, 5]. Yet, there is no generally accepted solution for the problem, which remains a criticalone, since the inability of current DBMSs to support data mining applications is well-testedand clearly documented [12].Our research approach in addressing this difficult problem is motivated by the observa-tion that aggregate functions provide the linchpin for most decision support computations;moreover inductive discovery from large data sets can be viewed as the process of aggregat-ing low level data into statistical summaries of semantic significance. Therefore, the ATLaSsystem designed at UCLA [2] allows end-users to define new powerful aggregate functionsby writing them in SQL. The same mechanism can be used to define new table functionsin ATLaS, whose name stands for Aggregate & Table Language and System. ATLaS is thesuccessor of the AXL system described in [15].These SQL-based native extension mechanisms turn ATLaS into a powerful and flexiblesystem for advanced data-intensive applications, including applications from many domainsthat are not supported well by current Object-Relational database systems, which stillsuffer from limited extensibility. In fact, the only extensibility mechanism now providedby Object-Relational systems relies on nonnative datablades—i.e., on external functionsdefined in a procedural language and imported into SQL.ATLaS is very effective at expressing decision support tasks: we demonstrate this prop-erty by the efficient implementation of several functions, such as rollups, datacubes, clas-sifiers, and frequent item sets for association rules [2]. The performance of these functionsexpressed in ATLaS is typically within 30% of the performance of the same algorithmscoded in C/C++. To achieve this level of performance, ATLaS supports various optimiza-tion techniques, and the ability of manipulating in-memory tables in SQL. In fact, attributesof reference type in such tables allow the efficient support of data structures, such as tries,that are instrumental in implementing data mining algorithms, such as Apriori [1, 7].The stream-oriented computation model used by ATLaS contrasts with the computa-tion model based on ‘blocking’ semantics that is normally used for aggregates in currentdatabase systems. Thus, online aggregates [9], time-series queries [13], sliding-window ag-gregates, approximate aggregates, and continuous queries [3] are naturally supported inATLaS. Furthermore, important properties of an ATLaS program, such as blocking behav-ior and monotonicity, can be easily inferred from the syntactic structure of the program [14].

Read the paper · More papers on PaperTik