Information-Retrieval Systems (IR)
Search large bodies of information which are not specifically formatted as formal data bases. Web search engine Keyword search of a text base Typically read-only Relatively small schema Large body of homogeneous data Minor or no deductive capability Extensive formal update capability Shared use for both read and write Relatively small body of heterogeneous information Significant deductive capability Typical use: support of an intelligent application.
Database Management Systems (DBMS)
Knowledge-Base Systems (KB S)
20061029: slides 1 of 12
Key DBMS issues:
Databases can be very large. Efficient access must be provided despite the size.
Many potential users are not sophisticated programmers, and so simple means of access must be available. Means of more sophisticated access must also be available.
Concurrency Several users may have simultaneous access to the database. Access via views Each user has a limited “window” through which the appropriate part of the database is viewed. Authorization The access privileges of each user will be limited in a specific way.
Deadlock must be avoided. A means of recovery from crashes, with minimal loss of data, must be available.
20061029: slides 2 of 12
Data Model Evolution:
File management Navigational models Relational model
Some data independence, but the model invites dependence. Requires procedural queries. Simple, easy to use for non-experts. Strong data independence. Standard nonprocedural query language (SQL). Excellent implementations exist. Limited expressive capability. Powerful expressive capability, but require substantial expertise for use. Popular in niche applications. Standardization not imminent. Attempt to integrate the simplicity of the relational model with the advanced features of the objectoriented approach. A new standardized query language (SQL:1999) is available, with SQL:20xx on the way. Many “high-end” commercial relational systems embody object-relational features. Attempt to integrate data management with markup languages, principally via XML.
Assembly language Procedural languages Declarative languages Object-oriented languages ?
1950’s – 1970’s 1950’s- Low-level interaction. No data independence. 1950’s – 1960’s1960’s 1970’s Late 1980’s 1990’s 1990’s -
Object-oriented models Object-relational models
20061029: slides 3 of 12
The course focuses on the relational model. Why?
The relational model is very widely used. The relational model provides a flexible interface which has components appropriate for users at all levels. A standard query language, SQL, is used with virtually all commercial products. Thus, applications have a high degree of portability . The relational model provides strong data independence: the external product is relatively independent of the internal implementaton. i The relational model is dominant on microcomputers running Windows operating systems: Office suites: Microsoft Office: Access Lotus SmartSuite: Approach Corel Suite: Paradox Other microcomputer products: dBase All have proprietary graphicalinterfaces, and provide programming-style queries as well.
20061029: slides 4 of 12
The relational model has also been dominant on mainframe database servers, including but not limited to UNIX systems. Recently, many of these systems have become available for the PC UNIX system Linux. (Some are free!) Oracle Interbase 7 (Inprise, formerly Borland) Sybase Adaptive Server Enterp rise Informix (now owned by IBM) IBM DB2 PostgreSQL 7.4, 8.1 (public domain,...