Week 1 – Introduction
FIT2094 Database
MONASH
INFORMATION
TECHNOLOGY
2
Your FIT2094 Teaching Team – Clayton
Campus
Chief Examiner
Lecturer
Lindsay Smith
Manoj Kathpalia
Tutor Details are
available on Moodle
3
Overview
▪ Unit Guide
▪ Moodle
▪ Teaching Method (Peer Instruction in Lecture)
▪ A summary of topics to be studied
4
Teaching Method
▪ Your peers help you
to understand the
concepts through
discussion.
▪ Lecture includes a
series of discussions
on concepts.
▪ The lecturer guides
the discussion.
Peer
Instruction
Prof Eric Mazur, Harvard
University
5
Traditional Teaching Method
First
Exposure
Lecture Textbook
Read Hard Stuff
Homework
See if You
Know Hard Stuff
Exam
Show Knowledge
Mastery
6
Peer Instruction – Full Picture
Homework Lecture Lab Exam
Show Knowledge
Mastery
First Exposure:
With resources and
Feedback
Learn Hard Stuff:
With teacher and
discussion
Practice
Knowledge
Mastery
Q
U
I
Z
7
Discussion Questions – Scenario
▪ Lecturer shows a question.
▪ Student answers using the response system. (no
discussion – individual vote).
▪ If uncertainty
–Group discussion (2-3 students) – need to get a consensus.
–Student answers using the response system (group vote – everyone in
the group still needs to vote).
–Class wide discussion.
8
Why The Scenario?
▪ Pose carefully designed question
–Solo vote: Think for yourself and select answer
•Checks your understanding and create an opinion to base your
discussion during the group discussion, if needed.
–If needed
•Discuss: Analyze problem in teams of 2-3
–Practice analyzing, talking about challenging concepts
–Reach consensus
•Group vote: Everyone in group votes
–You must all vote the same
–Convince your group or get convinced by your group.
•Class wide discussion.
9
Let’s
Practice
10
Using FLUX
▪ Visit https://flux.qa presenter/dashboard on your
internet enabled device
▪ Log in using your Authcate details
▪ Touch the + symbol
▪ Enter the code for your lecture
▪ Answer questions when they pop up.
https://flux.qa
11
Multiple choice questions
Q1: 1 + 1 = ?
Hint: There are 10 types of people in this world. Those who
understand binary and those who don’t.
a. 2
b. 10
c. 11
d. Not sure
12
Multiple choice questions
Q2: If the following equations are true,
5 + 3 = 28
9 + 1 = 810
8 + 6 = 214
5 + 4 = 19
what is 3 + 2?
a. 5
b. 15
c. 11
d. 55
13
Text-based poll
Q3: Write the name of your favourite fruit.
14
Q4. What database management systems are you most
familiar with?
a. Oracle
b. MySQL
c. MS Access
d. SQL Server
e. others
f. I am not familiar with any database
management systems.
15
It is better to be WRONG and
understand why you are WRONG,
rather than, getting the RIGHT
answer but NOT knowing WHY it is
the RIGHT answer!
Is it bad to get it WRONG?
NO
16
Why Peer Instruction?
▪ Learn/practice hard concepts
in class
▪ Build and test one’s
understanding in a supportive
environment.
▪ Develop critical thinking,
communication and reflection
skills.
▪ Engage students to take
ownership of their learning.
17
Things are different…
▪ Pre-lecture activities are crucial.
–Your lecture experience will depend on your preparation.
▪ Attending lectures is very important
▪ My lecture slides are NOT your notes!
–Create your own notes during pre-lecture reading.
–Annotate difficult concepts, revisit the annotation after lecture/tutorials.
–It is better not to take notes during lecture. You should be prepared
before the lecture, then think, discuss and ask questions during
lectures.
18
Study Program
5%
10%
15%
20%
19
21
Overview
▪ An overview of relational database management
systems (RDBMS)
22
Let’s travel back to 1960s
• Relational databases do not exist yet
• Let’s create a database to record the
information on Monash students
• What kind of approaches do we have?
• What kinds of problems are involved?
23
What is a database?
How do we
structure our data?
We can run various
queries/questions
without the need to
change the structure
of the database.
24
How do we structure our data?
Use a document
format like
MS-Word
document?
Use a
spreadsheet
like Excel?
• How easy is it to answer a number of queries?
• What kind of guarantee do we have from the systems on data integrity after a
modification
• (eg deletion, update or insertion of one or more records to the system?
25
Data Redundancy – a student data
spreadsheet
What would happen if we delete Fred’s enrolment in FIT1002? What happen to
the details of FIT1002 information such as its name?
How would you update the mark for Cindy’s enrolment in FIT1001? (Imagine
the spreadsheet contains thousands of students and each student has 12
enrolment entries).
How would you introduce a new unit, eg FIT2133 Programming in Python
into the spreadsheet when no student is enrolled to the unit yet?
26
Why do we have so many problems in the
previous example?
▪ The structure of the data causes some data
management problems or data anomalies.
▪ The software was not designed to deal with the type
of reporting required.
27
How do we solve it? • Keep details of student, unit
and enrolment separately, BUT
keep the relationships among
them in the system.
Relational Model
Relational Database
Relational Database
Management systems
28
DATABASE
Entities/Tables
A collection of
tables and
their
relationships is
a DATABASE
29
1970: Relational model
• An IBM scientist
• Proposed and developed the relational model
• Also proposed normalisation forms
• Resistance from IBM to implement his model
• Turing award (1981)
• Relational model in week 2
• Normalisation in week 5
• E. F. Codd, “A Relational Model of Data for Large Shared
Data Banks”, Comm. Of ACM, 1970
E.F Codd
(1923-2003)
30
1974: SQL
Donald Chamberlin (1944- )
• Developed at IBM
• Initially called SEQUEL (Structured
English QUEry Language)
• Doesn’t strictly follow Codd’s theory
• Oracle: the first commercially available
implementation of SQL in 1979
• SQL in weeks 7, 8, 9 & 10
• D Chamberlin, R Boyce, “SEQUEL: A
structured English query language”,
ACM SIGFIDET, 1974 Raymond Boyce
(unknown – 1974 )
31
1976: Conceptual model
• Proposed Entity-Relationship Model
(ER diagram)
• A systematic process to design a
relational database
• Database design process in week 3 & 4
• Peter Chen, “The entity-relationship
model—toward a unified view of data”,
ACM TODS, 1976
Peter Chen (1947 – )
32
1979: Oracle
• Inspired by Codd’s ideas
• First commercial release in 1979
• Most popular RDBMS
• Introduced PL/SQL in 1988
(Procedural Language/SQL)
• Oracle SQL in week 7, 8, 9 & 10 Larry Ellison (1944 – )
33
1981: Transactions management
• Introduced transaction management
• Turing award (1998)
• Presumed lost at sea in 2007
• Transaction management in week 8
• Jim Gray, “The Transaction
Concept: Virtues and Limitations ”,
VLDB, 1981
Jim Gray (1944 – )
34
Data Management Today
▪ Relational databases are still very popular. But …
–Social Networks (Facebook, Twitter, Foursquare etc.)
–Multimedia data (YouTube, Pinterest, Facebook etc.)
–Data streams (Twitter, computer networks)
–Spatial data (Road networks, Google Earth, Space etc.)
–Textual data
–Web data
–Big Data
–…
https://goo.gl/zMxG3b
https://goo.gl/zMxG3b
35
In Perspective …
36
37
38
39
RANK DBMS TYPE INTRODUCED
1 Commercial, Relational DBMS 1979
2 Open source, Relational DBMS 1995
3 Commercial, Relational DBMS 1989
4 Open source, Relational DBMS 1996
5 Open Source, Nosql – Document
Store
2009
6 DB2 Commercial, Relational DBMS 1983
July 2018
https://db-engines.com/en/ranking
40
Relational database systems in action:
End-users’ view
Front end application
(client)
Student
database
Student Database is
implemented in an
Oracle DBMS
(server)
network
41
Database Systems in Action
Developers’ View
Student
database
Student Database
(server)
Development environment (client, eg
SQL Developer, Integrated
Development Environment for web
scripting )
network
42
Developing Application with Database
BACK END
Database structure
SQL queries
Database integrity
FRONT END
Web applications
Mobile Applications
Applications
S
H
A
R
E
S
In this unit, we will concentrate on building the back end.
Database Designer.
43
Our Database Systems Environment
fit2094.corp-prd.aws.monash.edu
Oracle DBMS
FITxxxx
FIT2094
FITxxxx
SQL Developer
Monash
network
Virtual Private Network
44
Labs start this
week