Oracle 10g Free training- Database Introduction

This tutorial covers the basics of Database Management Systems, Various types of Databases, The Relational Model, Benefits of RDBMS and Oracle Database along with Frequently Asked Questions.

Database Management Systems

A database can be regarded as having two major components, and these are the data and the software needed to manage the data. There are a variety of terms used to describe the software and the two most commonly used are

• Database Management System
• Information Management system and the terms are often used interchangeably.

There have been a variety of kinds of systems developed and a convenient but rough classification is

  • Flat file
  • Networked
  • Hierarchical
  • Relational
  • Text
  • Geographical or Spatial

When we consider each of these it is useful to have some criteria to work with, and the following prove useful

  • There must be a way of describing the data - this means the ability to handle a variety of data types including numbers (integers and reals), text (often of varying length), currency, dates, times, logical or boolean, spatial data, graphical objects maps, census data, satellite image data, vector and raster data;
  • There must be a way of describing the relationship that exists between the data items, i.e. what structure the data has or what structure can be imposed on the data;
  • There must be a way of getting the data into the database;
  • There must be a way of examining the data;
  • There must be a way of generating reports based on the data.

A typical database system will therefore have to provide ways of achieving the above tasks. Most commercial systems will also provide a variety of ways of making each of the above tasks easier, i.e. the use of menu driven front ends to guide the user through each of the stages in the design and implementation of a complete database system.

Various types of Databases

Flat File Systems

Historically these kinds of systems were the first to be developed. An analogy that is useful is that of a filing cabinet full of files. This is the basis of a flat file system. There is often no significant structure, and this generally means applications using systems like this are quick to develop. Indices are generally used to improve the performance of the overall system.

These systems are widely available on most computer systems, from micros to mainframes. Most systems available on micros are in fact flat file systems. Many however call themselves relational - a popular buzz word, and much over-used in advertisements for database packages. Micro based flat file systems are relative cheap in software terms, and generally, but not always, perform poorly with large volumes of data. Program language interfaces are available for many systems, and some commonly available languages are C, COBOL, Pascal, FORTRAN, assembler and PL/1.

Networked Systems

The term essentially describes the logical and physical view of the data as a group of records with links between records - and hence a network of data and links. A key concept in this kind of system is that of a navigation path required to get to the data item or record of interest, i.e. the way you move round the mesh to get at the data you want.

Hierarchical Systems

The term describes the view of the data - in this case as a hierarchy. Again we have the problem of only being able to access data by navigation - in this case through the hierarchy. The key concept with the relational model is the view of the data as a table. This has proved to be a very useful concept and has enabled relationships between data items and records to be expressed not through physical links as with the networked and hierarchical approaches, but through properties of data in one or more tables. Let us consider how we get at the information on a Senior Analyst in the Advisory Group. All we do is search the two domains of interest (which may or may not be indexed) for data values that satisfy our criteria, i.e. we search the Group domain for people in Advisory, and the Title domain for Senior Analyst. Adding new domains is relatively easy, and hence design decisions are rarely as problematic as with the network and hierarchical data models.

Database management systems have evolved from hierarchical to network to relational models. The most widely accepted database model is the relational model. Oracle extends the relational model to an object-relational model, which makes it possible to store complex business models in a relational database.

Some DBMS Commercial Packages available in the market are:

  • Hierarchical Model - IMS
  • Network Model - IDMS
  • Relational Model - Oracle, DB2

The Relational Model

In 1970 an IBM researcher, Dr. E. F. Codd, came up with a better way—the relational data model. In this model, the database management system (DBMS) itself keeps track of all table relationships independent of hardware or outside programming languages. In the relational model, the user only needs to understand the logical structure of data, not how it is physically stored. In this model data is represented in simple two-dimensional tables (relations), which consist of rows (tuples) and columns (attributes). A relational database is simply a collection of tables.

The relational model has three major aspects:

Structures are well-defined objects (such as tables, views, indexes, and so on) that store or access the data of a database. Structures and the data contained within them can be manipulated by operations.

Operations are clearly defined actions that allow users to manipulate the data and structures of a database. The operations on a database must adhere to a predefined set of integrity rules.

Integrity rules are the laws that govern which operations are allowed on the data and structures of a database. Integrity rules protect the data and the structures of a database.

Benefits of RDBMS

Relational database management systems offer benefits such as:

  • Independence of physical data storage and logical database structure
  • Variable and easy access to all data
  • Complete flexibility in database design
  • Reduced data storage and redundancy
  • Data independence
  • Data integrity
  • Data sharing/ Data redundancy
  • Data security

Oracle Database

Oracle extends the relational model to an object-relational model, which makes it possible to store complex business models in a relational database.

The object-relational model allows users to define object types, specifying both the structure of the data and the methods of operating on the data, and to use these datatypes within the relational model.

Object types are abstractions of the real-world entities--for example, purchase orders--that application programs deal with. An object type has three kinds of components:

• A name, which serves to identify the object type uniquely.

• Attributes, which are built-in data types or other user-defined types. Attributes model the structure of the real world entity.

• Methods, which are functions or procedures written in PL/SQL and stored in the database, or written in a language like C and stored externally. Methods implement specific operations that an application can perform on the data. Every object type has a constructor method that makes a new object according to the data type’s specification.

An Oracle database is a collection of data treated as a unit. The purpose of a database is to store and retrieve related information. A database server is the key to solving the problems of information management. In general, a server reliably manages a large amount of data in a multi-user environment so that many users can concurrently access the same data. All this is accomplished while delivering high performance. A database server also prevents unauthorized access and provides efficient solutions for failure recovery.

Oracle Database is the first database designed for enterprise grid computing, the most flexible and cost effective way to manage information and applications. Enterprise grid computing creates large pools of industry-standard, modular storage and servers. With this architecture, each new system can be rapidly provisioned from the pool of components. There is no need for peak workloads, because capacity can be easily added or reallocated from the resource pools as needed.

The database has logical structures and physical structures. Because the physical and logical structures are separate, the physical storage of data can be managed without affecting the access to logical storage structures.

The Oracle grid architecture pools large numbers of servers, storage, and networks into a flexible, on-demand computing resource for enterprise computing needs. The grid computing infrastructure continually analyzes demand for resources and adjusts supply accordingly.

For example, you could run different applications on a grid of several linked database servers. When reports are due at the end of the month, the database administrator could automatically provision more servers to that application to handle the increased demand.

Grid computing uses sophisticated workload management that makes it possible for applications to share resources across many servers. Data processing capacity can be added or removed on demand, and resources within a location can be dynamically provisioned. Web services can quickly integrate applications to create new business processes.

Grid computing offers high performance and scalability, because all computing resources can be flexibly allocated to applications as needed.

Oracle Database enables enterprise grid computing in the following ways:

  • Performance and scalability with low cost hardware clusters, like Itanium and Linux.
  • Reliability: Continuous availability of data and applications
  • Security and privacy: security features that lets you share enterprise grid resources with confidence that privacy is maintained
  • Self-management: Oracle infrastructure automates many functions so that a single administrator can manage hundreds of servers.
  • Distributed computing: Oracle has advanced integration features that allow applications and data to run anywhere in the network.

At the highest level, the idea of grid computing is computing as a utility. In other words, you should not care where your data resides, or what computer processes your request. You should be able to request information or computation and have it delivered - as much as you want, and whenever you want. This is analogous to the way electric utilities work, in that you don't know where the generator is, or how the electric grid is wired, you just ask for electricity, and you get it. The goal is to make computing a utility, a commodity, and ubiquitous. Hence the name, The Grid. This view of utility computing is, of course, a "client side" view.

Oracle provides substantial grid computing technology, available today that can help you capitalize on the grid. Oracle is the best on commodity clusters; a hardware platform that many believe would come to dominate the grid. Oracle possesses the key technology differentiators -- Oracle Real Application Clusters, Oracle Streams, and Oracle Transportable Tablespaces -- for building the grid. Only Oracle delivers the operational characteristics -- portability, RAS, security, and scalability -- necessary for the grid.

Frequently Asked Questions

  1. What is a difference between RDBMS and Object RDBMS?
  2. What is the advantage of Object RDBMS?
  3. What are the different models (old and new) for DBMS?
  4. What is the difference between logical and Physical structures of Database?
  5. Is schema a logical structure or physical structure in oracle database?

Recent Tutorials

Subscribe to oracle tutorials

Enter your email address:

Delivered by FeedBurner

Blog Archive

Visitors

DigNow.org