History of databases and the relational model

Download Report

Transcript History of databases and the relational model

+
A brief history of data and
databases
Spanning thousands and thousands of years
Unattributed pictures from University of Rochester History Site
+
Teams – getting to know you

Your teams are actually forming a mini-company.

Your job will be to implement an on-line database based
application (Either TA project or CAPWIC).

You will need to do the work from the SRS through the final product
including any training and technical documentation required. Those
on CAPWIC will have some of this documentation, but this is a bit
larger project than the TA system.

Today, you are meeting for the first time and need to organize the
responsibilities. (These may change, but this will give you a first
pass at primary responsibilities for the project tasks.)

In your group, fill out the group worksheet indicating who will fulfill
which roles. For all but the manager, you may identify 1 or 2 people.
There can be only one manager.
+


Teams

The Team
CAPWIC

Team Passing

Schroeder

Hoge

Beasley

McKelvey

Barbachem

Wooten

Buadum

Gordon

Petrella

Sutton

Meyer

Harr

CAPWIC

???

???
TA project

Team
Awesome





Hardgrove
Doll
Cooke
Brown
TA project


Watson

Ragonesi

Pham

Ward
???


Misfits

???

Best

Richardson

Sharp

Brockman

Lee

Gruszecki

Meier

Zhao

Micucci
???

???
+
Roles to identify

Team manager – will be responsible for organizing meetings, making sure minutes are
taken (for tasks and deadlines), and keeping the group on task to meet the
implementation deadlines.

Project manager – will be responsible to develop the project plan and monitor
progress reporting back to the team on slippages and successes.

Interface designer – will be responsible for designing the user interface including the
overall flow of the application. (For CAPWIC, this design has been done but will need to
be tweaked as you go along)

Programmer – will be responsible for the front end coding and connecting the front
end user interface to the database.

Database designer / implementer – will take primary responsibility for the design of
the database and implementing and populating the database. This needs to be at least 2
and most teams will be fully involved in this piece.

Technical Writer – will take primary responsibility for all types of written
documentation including SRS, design documents, and final user and technical
documentation of the system.

Quality Control coordinator – takes ownership of imbuing quality throughout the
development process.
+
In your groups

Come up with a company name

Exchange contact information

Make a case for the role(s) that you wish to serve on and get
consensus among the group about who will take the lead on
which roles.

Fill out the company organizational worksheet.

Consider where you feel you are the strongest and also
where you feel the weakest among the strengths and
weaknesses of the individual team members.

About 20 minutes
+
Record Keeping – How long?
Source: http://www.ancientscripts.com/cuneiform.html
picture – wikipedia 4th millenium
+
Why?

We use records to measure “stuff”.

And most of these records are not digital.
+
Jacquard Loom
Marriage book, Rochester, NY, chronological filing of marriage
licenses.
From ancestry.com (1790 census,
Pittsford, NY)
+
Other non-electronic records

SS cards – 35 million hand typed between 1937-1938

Motor vehicle licenses and registrations

Financial records for companies

School records
+ Card Catalogs – An ingeneous
indexing system
+
•It didn’t indicate whether the book was available, just where it should be
found.(example cards)
•Creating the cards required the expertise of librarians.
+
Problem – The 1890 census

Enter Herman Hollerith.
+
Hollerith’s device
pantograph
Hollerith card
Integrating
machine
+
First computers
The program, the data, the JCL – all done with punchcards
+
Electronic files – Early computing
1950s – 1970s
+
Enter the database – Early 1960s
•
Objects in a database can be related to one another.
•
Hierarchical – One record leads to the related record. (Like a
tree)
•
Network – Allowed for multiple relationships (like a network)
•
The databases used pointers to relate one record to another.
+
Charles Bachman
Integrated data store – Dow Chemical
CASE products (Computer Aided Engineering)
+
Some issues

While an improvement over file based systems,

these systems required knowledge of the structures to use
them. No built in search mechanism.

Very few users understood the structures, access limited to
an elite few.

Queries were complex. Took time to get new information and
expensive programmer time to produce.
+
Enter the relational DBMS
1970, Edgar Codd
Relational DBMS
• Mathematician at IBM
• Based on Relational Calculus and set theory
U of Michigam
• MicroDBMS
IBM
• System R
• First implementation of SQL
Led to
• Oracle
• IBM DB2
•Informix
• Sybase
• MS SQL Server (based on Sybase)
+
Relational Ideas

Data is represented as a series of tables.

The tables are Related to one another through a series of
keys and foreign keys.

A standard language is used to define the database (DDL)
and to query the database (DML).

Tables within the database contain the data about the
database (meta data).
+
Why relational?

It is easy for most people to “see” and “get it”.

Makes the data accessible for a wider number of users
through user friendly query tools.

Through good database design, space usage is efficient
(although this has become less of an issue of late).
+
The Future?
•
•
Object Oriented Databases
–
Combine data and operations on those data
–
Allows for inheritance
–
Cache’ (Intersystems Corp)
–
Oracle (Object-Relational Database)
–
Postgre(open source)
XML and XML DBMS
–
XML designed to transport and store data initially envisioned as
moving data across the web (w3schools.com)
–
XML Database Management System manages that data
+
Next up – modelling data and
relational dbms terms

A few words about data models.

Activity