Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
19 views2 pages

An Important Feature of Data Models

Data models, like the relational model, abstract low-level implementation details from users and developers, allowing them to interact with data through higher-level operations. This abstraction is similar to structured types in programming languages, where the physical representation of data is hidden from programmers. At various abstraction levels, from physical to view, different users interact with the database while maintaining security and integrity of the data.

Uploaded by

darshiljain006
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views2 pages

An Important Feature of Data Models

Data models, like the relational model, abstract low-level implementation details from users and developers, allowing them to interact with data through higher-level operations. This abstraction is similar to structured types in programming languages, where the physical representation of data is hidden from programmers. At various abstraction levels, from physical to view, different users interact with the database while maintaining security and integrity of the data.

Uploaded by

darshiljain006
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

An important feature of data models, such as the relational

model, is that they hide such low-level implementation


details from not just database users, but even from
database-application developers. The database
system allows application developers to store and retrieve
data using the abstractions of the data model, and converts
the abstract operations into operations on the low-level
implementation.
Page 11
An analogy to the concept of data types in programming
languages may clarify the distinction among levels of
abstraction. Many high-level programming languages
support the notion of a structured type. We may describe
1
the type of a record abstractly as follows:
type instructor = record
ID : char (5);
name : char (20);
dept_name : char (20);
salary : numeric (8,2);
end;
This code defines a new record type called instructor with
four fields. Each field has a name and a type associated with
it. For example, char(20) specifies a string with 20
characters, while numeric(8,2) specifies a number with 8
digits, two of which are to the right of the decimal point. A
university organization may have several such record types,
including:
department, with fields dept_name, building, and
budget.
course, with fields course id, title, dept name, and
credits.
student, with fields ID, name, dept_name, and tot_cred.
Page 12
At the physical level, an instructor, department, or
student record can be described as a block of
consecutive bytes. The compiler hides this level of detail
from programmers. Similarly, the database system hides
many of the lowest-level storage details from database
programmers. Database administrators, on the other hand,
may be aware of certain details of the physical organization
of the data. For example, there are many possible ways to
store tables in files. One way is to store a table as a
sequence of records in a file, with a special character (such
as a comma) used to delimit the different attributes of a
record, and another special character (such as a new-line
character) may be used to delimit records. If all attributes
have fixed length, the lengths of attributes may be stored
separately, and delimiters may be omitted from the file.
Variable length attributes could be handled by storing the
length, followed by the data. Databases use a type of data
structure called an index to support efficient retrieval of
records; these too form part of the physical level.
At the logical level, each such record is described by a
type definition, as in the previous code segment. The
interrelationship of these record types is also defined at the
logical level; a requirement that the dept_name value of an
instructor record must appear in the department table is an
example of such an interrelationship. Programmers using a
programming language work at this level of abstraction.
Similarly, database administrators usually work at this level
of abstraction.
Finally, at the view level, computer users see a set of
application programs that hide details of the data types. At
the view level, several views of the database are defined,
and a database user sees some or all of these views. In
addition to hiding details of the logical level of the database,
the views also provide a security mechanism to prevent
users from accessing certain parts of the database. For
example, clerks in the university registrar office can see
only that part of the database that has information about
students; they cannot access information about salaries of
instructors.
1.3.4 Instances and

You might also like