Publication | Open Access
Support for repetitive transactions and ad hoc queries in System R
92
Citations
9
References
1981
Year
Cluster ComputingRelational DatabaseEngineeringReal-time DatabaseSoftware EngineeringTransactional SystemTransaction ProcessingSoftware AnalysisDatabase BenchmarkingDatabase SystemDatabase SupportManagementRepetitive TransactionsSystems EngineeringData IntegrationParallel ComputingCompilersQuery LanguagesData ManagementAd Hoc QueriesProgramming LanguagesSystem RComputer ScienceDistributed TransactionDatabase TechnologyDatabase AccessRelational QueriesRelational ModelOperating SystemsProgram AnalysisTransactional ApplicationFormal MethodsParallel ProgrammingAd Hoc QuerySystem Software
System R is an experimental relational database system that supports SQL as a high‑level user language for both ad hoc terminals and embedded use in PL/I or COBOL. The paper presents System R’s architecture and reports preliminary performance measurements for ad hoc queries and canned programs. System R uses a precompiler that substitutes embedded SQL with machine‑language calls, while ad hoc queries are handled online through name binding and access‑path selection. Precompilation eliminates parsing and binding overhead, yielding efficient repetitive transactions, while flexible binding times let transaction programs and ad hoc queries share the database without efficiency loss, as preliminary measurements confirm.
System R supports a high-level relational user language called SQL which may be used by ad hoc users at terminals or as an embedded data sublanguage in PL/I or COBOL. Host-language programs with embedded SQL statements are processed by the System R precompiler which replaces the SQL statements by calls to a machine-language access module. The precompilation approach removes much of the work of parsing, name binding, and access path selection from the path of a running program, enabling highly efficient support for repetitive transactions. Ad hoc queries are processed by a similar approach of name binding and access path selection which takes place on-line when the query is specified. By providing a flexible spectrum of binding times, System R permits transaction-oriented programs and ad hoc query users to share a database without loss of efficiency. System R is an experimental database management system designed and built by members of the IBM San Jose Research Laboratory as part of a research program on the relational model of data. This paper describes the architecture of System R, and gives some preliminary measurements of system performance in both the ad hoc query and the “canned program” environments.
| Year | Citations | |
|---|---|---|
Page 1
Page 1