ThePlace

Home ] Search ] Resources ] Site Map ] Contact Me ]
Dave's Information Technology Resource

Up ]

[ What are Databases? ] Relational Databases ] Data Modeling ] Designing and Implementing Databases ] Creating Database Applications ]

--- What are Databases? ---

 

A database is a collection of persistent data.   This implies that the stored data can stand on its own and has some permanence. 

bullet

Databases may include collections of information about people (names, addresses, etc.) or things (quantities, status, locations, etc.). 

bullet

The idea of permanence is that the data is maintained and even accumulated over a period of time.

Before we continue talking about what databases are, let’s discuss what data is. 

bullet

Data is the knowledge that we have on virtually everything in our world. 

bullet

Data is typically descriptive, that is, it tells how much, what it is, or where. 

bullet

Data includes names, ages, dates, times, dimensions, quantities, and virtually anything that describes anything. In database lingo, we call these descriptions fields.  A field describes some basic piece of information that we deem worthy of tracking.

Building Blocks of Databases

Building on the concept of the field, if we group a set of fields together, we have a record. 

A record is a grouping of facts that have some relationship.  For example: name, address, city, state, zip code, and phone number are examples of fields that describe characteristics of a person and make up a record. 

Therefore, a database is a collection of records that describe a group of things that share these characteristics.

Summarizing these examples:

Database: CLIENTS

Purpose: Track law firm clients.

Records: 250 total

Contains: A list of all clients who have hired the firm.

Fields: name, address, city, state, zip code, phone number, attorney

Describes:  identifies each client, how to contact, and which attorney is handling the case.

 

Databases have three basic purposes:

  1. To capture and manage potentially large sets of information.

  2.  To add, delete, and update the data in the database.

  3. To provide various ways to view the data in the database.

Databases can contain thousands and even millions of records.  They may be used to capture data on many transactions per second over hours, days, and even years.

A key feature of databases is that data can be appended to the database, removed as needed, and modified as desired.  Data is often fluid in the sense that it changes over time and many databases have powerful tools for maintaining the data.

Finally, what good is data if it cannot be retrieved and displayed?  Database software programs enable users to extract or query for one or more fields, single records, sets of records, and even summarize data for collections of records.  The result of a database query can be output to the screen, to a printer or exported to other applications.

 

From a business perspective, there are many ways to look at how databases are used:

bullet

Inventory management: keeping track of goods, disposition, location, and transactions.

bullet

Data warehousing: organizing and managing valuable corporate information.

bullet

Sales: what was sold, who bought it, and for how much.

bullet

Personnel management: who is doing what and when are they doing it.

bullet

Time management: keeping track of the days, months, and years.

 

Data Processing and Database Management Systems

A database management system (DBMS) is a software package that allows users to interact with data in a database.    The DBMS is responsible for defining the structure of databases  (i.e, file formatting), and how the data is accessed and processed.  Data processing is the actual effort of using a DBMS to accomplish work.

There are a number reasons for database processing including:

bullet

Lowering costs – by centrally organizing information, it is now available to many users to make sound business decisions.

bullet

Enables new ways to look at data – database processing allows you to access and retrieve data in ways that are useful to decision-making processes.

bullet

Sharing of data- the most obvious benefit of allowing many to access data in central repository.

bullet

Eliminating redundancy – a well-designed database can efficiently store information in a single place for maintenance and updating.

bullet

Consistency – databases provide a centralized repository that is constant to the needs of the organization.

bullet

Creating data integrity – centralized databases enable organizations to assure that data is reliable and accurate.

bullet

Data Security – information is a valuable commodity to many organizations; databases enable you to know where it is at all times.

bullet

Increase productivity – databases enable organizations to share information efficiently increasing performance and reducing costs.

On the downside, there are some things to remember (not really disadvantages, but worth considering) about databases:

bullet

Storage and processing needs increase – larger databases and more powerful DBMS packages require significantly larger memory requirements for processing and storage.

bullet

Greater complexity – can be a problem for the simpler problems.

bullet

Potential for a single point-of-failure – centralized databases require substantially more care and maintenance (e.g., backups) to ensure that they are always available.

bullet

Recovery problems – complex databases can be more difficult to restore if DBMS applications are lost or if database files are fragmented.

 

Database Applications and Systems

Database applications are software programs that support complex and potentially large sets of information.  A database system includes the software program and related elements such as the operating system and hardware.

The following illustrates the relationship of how these elements work together:

 

 

Database software may be deployed on:

bullet

Desktop platforms  (e.g., Microsoft Access and FoxPro) that share resources with other desktop applications (e.g., word processor, e-mail). 

bullet

Network servers where it shares resources such as disk space and communications with client processes.

bullet

Database servers that are dedicated to the purpose of storing and processing database content.

 Also mainframe hardware has traditionally been used to deploy very large scale databases for remote access by numerous users.

There are numerous database products that are available on the commercial market.  Some of these products include:

bullet

Microsoft Access and FoxPro

bullet

Oracle

bullet

Sybase

bullet

Microsoft SQL Server

bullet

IBM DB2

bullet

Informix

bullet

Filemaker

bullet

Gupta

bullet

Xbase

In many cases there are entire companies devoted to developing and maintaining database tools (e.g., Oracle).  These products run on platforms ranging from Intel-based Windows 95/98 and NT, Macintosh, and UNIX.  The cost also varies from less than $100 to thousands of dollars.

The selection of the appropriate database management product will depend on a number of factors:

bullet

The amount of data to be managed.

bullet

How the data needs to be accessed (e.g., by a database application, custom developed software, web-based access, etc.)?

bullet

Who needs to access the data – one or many users?

bullet

Local or remote access to the data.

bullet

The platform that is to be used for deployment – usually a secondary factor driven by the choice of database software.

bullet

The funding available to purchase hardware, software, and support.

 

Flat File Databases

Flat file databases are "cheap databases.”  This does mean that the data is not worth very much, it simply means that the data is stored in a conventional file such as an ASCII text or other word processor file.  The data is often stored in columns separated by commas, tabs, or even spaces, and instances of data are stored in new lines in the file.

Flat file databases have many uses:

bullet

Nearly anyone can create a flat file database.

bullet

They can efficiently manage smaller sets of non-complex information.

bullet

Word processors can be used to edit, sort, and present (display or print) the data.

bullet

Software programs without having knowledge of complex data storage mechanisms found in database files can use them.

 

The following is a typical example of a flat file layout:

 

lastname, firstname, address, city, state

Smith, Jones, 111 Elm Street, Anycity, MD

Doe, John, 2222 Main Road, Anycity, MD

James, Mary 33 Oak Terrace, Mytown, MD

…

 

   

Note that the field names are indicated in the first row and commas are used to separate fields.  Tabs, quotations, and other characters may also be used to separate fields.

There are some major limitations to flat file databases:

bullet

They are not very efficient for large numbers of records, i.e., sorting, editing, and displaying thousands and millions of records.

bullet

They have limited capabilities for representing complex sets of information; for example, while a single file would provide an effective way to list students, it may not be effective for containing information about teachers, classes offered, and class scheduling (this would require a number of files).

 

 

 

Home ] Up ] Computer Architecture ] Programming Bootcamp ] Visual BasicS ] Web Basics ] Web Multimedia ] Web Programming ] Advanced Web Topics ] Developing Web Sites ] XML Technology ] Web Glossary ]

Copyright © 1999 - 2005 
ThePlace - Written and Sponsored by Dave Hillman