SlideShare a Scribd company logo
1 of 45
1
CS101 Introduction to Computing
Lecture 37
Database Software
2
Focus of the last Lecture was on
Data Management
• First of a two-lecture sequence
• We became familiar with the issues and
problems related to data-intensive computing
• We also found out about flat-file and tabular
storage
3
Data Management
• Keeping track of a few dozen data items is
straight forward
• However, dealing with situations that involve
significant number of data items, requires more
attention to the data handling process
• Dealing with millions - even billions - of inter-
related data items requires even more careful
thought
4
Issues in Data Management
5
Data Entry
• New titles are added every day
• New customers are being added every day
• That new data needs to be added accurately
6
Data Updates (2)
• All those actions require updates to existing
data
• Those changes need to be entered accurately
7
Data Security (1)
• All the data that BholiBooks has in its computer
systems is quite critical to its operation
• The security of the customers’ personal data is
of utmost importance. Hackers are always
looking for that type of data, especially for
credit card numbers
8
Data Security (2)
• This problem can be managed by using
appropriate security mechanisms that provide
access to authorized persons/computers only
• Security can also be improved through:
– Encryption
– Private or virtual-private networks
– Firewalls
– Intrusion detectors
– Virus detectors
9
Data Integrity
• Integrity refers to maintaining the correctness
and consistency of the data
– Correctness: Free from errors
– Consistency: No conflict among related data items
• Integrity can be compromised in many ways:
– Typing errors
– Transmission errors
– Hardware malfunctions
– Program bugs
– Viruses
– Fire, flood, etc.
10
Ensuring Data Integrity (1)
• Type Integrity
• Limit Integrity
11
Ensuring Data Integrity (2)
• Referential Integrity
• Physical Integrity
12
Data Accessibility (1)
• What is required is that:
– Data be stored in an organized manner
– Additional info about the data be stored
so that the data access times are minimized
13
Data Accessibility (3)
• A solution to this concurrency control problem:
Lock access to data while someone is using it
14
DBMS (2)
• A DBMS takes care of the storage, retrieval,
and management of large data sets on a
database
• It provides SW tools needed to organize &
manipulate that data in a flexible manner
• It includes facilities for:
– Adding, deleting, and modifying data
– Making queries about the stored data
– Producing reports summarizing the required
contents
15
Database (1)
• A collection of data organized in such a fashion
that the computer can quickly search for a
desired data item
16
OS Independence (2)
• It provides an OS-independent view of the data
to the user, making data manipulation and
management much more convenient
17
What can be stored in a database?
• As long as it is digital data, it can be stored:
– Numbers, Booleans, text
– Sounds
– Images
– Video
18
In the very, very old days …
• Even large amounts of data was stored in text
files, known as flat-file databases
• All related info was stored in a single long, tab-
or comma-delimited text file
• Each group of info – called a record - in that file
was separated by a special character; vertical
bar ‘|’ was a popular option
• Each record consisted of a group of fields, each
field containing some distinct data item
19
The Trouble with Flat-File Databases
• The text file format makes it hard to search for
specific info or to create reports that include
only certain fields from each record
• Reason: One has to search sequentially
through the entire file to gather desired info,
such as ‘all books by a certain author’
• However, for small sets of data – say,
consisting of several tens of kB – they can
provide reasonable performance
20
Tabular Storage: Features & Possibilities
1. Similar items of data form a column
2. Fields placed in a particular row – same as a
flat-file record – are strongly interrelated
3. One can sort the table w.r.t. any column
4. That makes searching – e.g., for all the books
written by a certain author – straight forward
21
Tabular Storage: Features & Possibilities
5. Similarly, searching for the 10
cheapest/most expensive books can be
easily accomplished through a sort
6. Effort required for adding a new field to all
the records of a flat-file is much greater than
adding a new column to the table
22
CONCLUSION: Tabular storage
is better than flat-file storage
We will continue on with tables’
theme today
23
Today’s Lecture:
Database SW
• In our 4th
& final lecture on productivity
software, we will continue our discussion from
last week on data management
• We will find out about relational databases
• We will also implement a simple relational
database
24
Let’s continue on with the tabular
approach
We stored data in a table last time,
and liked it
Let’s revisit that table and then put
together another one
25
Table from the Last Lecture
Title Author Publisher Price InStock
Good Bye
Mr. Bhola
Altaf Khan BholiBooks 1000 Y
The Terrible
Twins
Bhola
Champion
BholiBooks 199 Y
Calculus &
Analytical
Geometry
Smith
Sahib
Good
Publishers
325 N
Accounting
Secrets
Zamin
Geoffry
Sung-e-
Kilometer
Publishers
29 Y
26
Another table …
Customer Title Shipment Type
Aadil Ali
Good Bye
Mr. Bhola
2002.12.26 Air
Aadil Ali
The Terrible
Twins
2002.12.26 Air
Miftah
Muslim
Calculus &
Analytical
Geometry
2002.12.25 Surface
Karen
Kaur
Good Bye
Mr. Bhola
2002.12.24 Air
27
This & the previous table are related
• They share a column, & are related through it
• A program can match info from a field in one
table with info in a corresponding field of
another table to generate a 3rd table that
combines requested data from both tables
• That is, a program can use matching values in
2 tables to relate info in one to info in the other
28
Q: Who is BholiBooks’ best customer?
• That is, who has spent the most money on the
online bookstore?
• To answer that question, one can process the
inventory and the shipment tables to generate
a third table listing the customer names and
the prices of the books that they have ordered
29
The generated table
Customer Price
Aadil Ali 1000
Aadil Ali 199
Miftah Muslim 325
Karen Kaur 1000
Can you now process this table
to find the answer to our question
?
30
Relational Databases (1)
• Databases consisting of two or more related
tables are called relational databases
• A typical relational database may have
anywhere from 10 to over a thousand tables
• Each column of those tables can contain only a
single type of data (contrast this with
spreadsheet columns!)
• Table rows are called records; row elements
are called fields
31
Relational Databases (2)
• A relational database stores all its data inside
tables, and nowhere else
• All operations on data are done on those tables
or those that are generated by table operations
• Tables, tables, and nothing but tables!
32
RDBMS
• Relational DBMS software
• Contains facilities for creating, populating,
modifying, and querying relational databases
• Examples:
– Access
– FileMaker Pro
– SQL Server
– Oracle
– DB2
– Objectivity/DB
– MySQL
– Postgres
33
The Trouble with Relational DBs (1)
• Much of current SW development is done using
the object-oriented methodology
• When we want to store the object-oriented data
into an RDBMS, it needs to be translated into a
form suitable for RDBMS
34
The Trouble with Relational DBs (2)
• Then when we need to read the data back from
the RDBMS, the data needs to be translated
back into an object-oriented form before use
• These two processing delays, the associated
processing, and time spent in writing and
maintaining the translation code are the key
disadvantages of the current RDBMSes
35
Solution?
• Don’t have time to discuss that, but try
searching the Web on the following terms:
– Object-oriented databases
– Object-relational databases
36
Classification of DBMS w.r.t. Size
•Personal/Desktop/Single-user (MB-GB)
– Examples: Tech. papers’ list; Methai shop inventory
– Typical DMBS: Access
•Server-based/Multi-user/Enterprise (GB-TB)
– Examples: HBL; Amazon.com
– Typical DMBS: Oracle, DB2
•Seriously-huge databases (TB-PB-XB)
– Examples: 2002 – BaBar experiment at Stanford
(500TB); 2005 – LHC database at CERN (1XB)
– Typical DMBS: Objectivity/DB
37
Some Terminology (1)
• Primary Key is a field that uniquely identifies
each record stored in a table
• Queries are used to view, change, and analyze
data. They can be used to:
– Combine data from different tables, efficiently
– Extract the exact data that is desired
• Forms can be used for entering, editing, or
viewing data, one record at a time
38
Some Terminology (2)
• Reports are an effective, user-friendly way of
presenting data. All DBMSes provide tools for
producing custom reports.
• Data normalization is the process of efficiently
organizing data in a database. There are two
goals of the normalization process:
– Eliminate redundant data
– Storing only related data in a table
39
Before we do a demo, let me just
mention my favorite database
application: Data Mining
40
Data Mining
• The process of analyzing large databases to
identify patterns
• Example: Mining the sales records from a
BholiBooks could identify interesting shopping
patterns like “53% of customers who bought
book A also bought book B”. This pattern can
be put to good use!
• Data mining often utilizes intelligent systems’
techniques
41
Let’s now demonstrate the use
of a desktop RDBMS
• We will create a new relational database
• It will consist of two tables
• We will populate those tables
• We will generate a report after combining the
data from the two tables
42
Assignment # 13
Develop a database by designing two tables,
populate them, and then generate a report
Further information on this assignment will be
provided to you on the CS101 Web site
43
Access Tutorial
http://www.microsoft.com/education/DOWNLOADS
/tutorials/classroom/office2k/acc2000.doc
44
Today’s Lecture:
• In this final lecture on productivity software,
we continued our discussion from last week
on data management
• We found out about relational databases
• We also implemented a simple relational
database
45
Next Lecture’ Goals
(Cyber Crime)
• To know the different types of computer crimes
that occur over cyber space
• To familiarize ourselves with with several
methods that can be used to minimize the
effect of these crimes
• To get familiar with a few policies and
legislation designed to tackle cyber crime

More Related Content

What's hot

Survey On Temporal Data And Change Management in Data Warehouses
Survey On Temporal Data And Change Management in Data WarehousesSurvey On Temporal Data And Change Management in Data Warehouses
Survey On Temporal Data And Change Management in Data WarehousesEtisalat
 
ETL Testing - Introduction to ETL testing
ETL Testing - Introduction to ETL testingETL Testing - Introduction to ETL testing
ETL Testing - Introduction to ETL testingVibrant Event
 
Big Data presentation at GITPRO 2013
Big Data presentation at GITPRO 2013Big Data presentation at GITPRO 2013
Big Data presentation at GITPRO 2013Sameer Wadkar
 
Data Archiving -Ramesh sap bw
Data Archiving -Ramesh sap bwData Archiving -Ramesh sap bw
Data Archiving -Ramesh sap bwramesh rao
 
Building the DW - ETL
Building the DW - ETLBuilding the DW - ETL
Building the DW - ETLganblues
 
Tuning data warehouse
Tuning data warehouseTuning data warehouse
Tuning data warehouseSrinivasan R
 
Sap business intelligence 4.0 report basic
Sap business intelligence 4.0   report basicSap business intelligence 4.0   report basic
Sap business intelligence 4.0 report basictovetrivel
 
Lecture 03 - The Data Warehouse and Design
Lecture 03 - The Data Warehouse and Design Lecture 03 - The Data Warehouse and Design
Lecture 03 - The Data Warehouse and Design phanleson
 
Five Tuning Tips For Your Datawarehouse
Five Tuning Tips For Your DatawarehouseFive Tuning Tips For Your Datawarehouse
Five Tuning Tips For Your DatawarehouseJeff Moss
 
3 tier data warehouse
3 tier data warehouse3 tier data warehouse
3 tier data warehouseJ M
 

What's hot (19)

OLAP
OLAPOLAP
OLAP
 
Survey On Temporal Data And Change Management in Data Warehouses
Survey On Temporal Data And Change Management in Data WarehousesSurvey On Temporal Data And Change Management in Data Warehouses
Survey On Temporal Data And Change Management in Data Warehouses
 
Datawarehousing
DatawarehousingDatawarehousing
Datawarehousing
 
ETL Testing - Introduction to ETL testing
ETL Testing - Introduction to ETL testingETL Testing - Introduction to ETL testing
ETL Testing - Introduction to ETL testing
 
Data warehouse
Data warehouseData warehouse
Data warehouse
 
Case mis ch02
Case mis ch02Case mis ch02
Case mis ch02
 
Big Data presentation at GITPRO 2013
Big Data presentation at GITPRO 2013Big Data presentation at GITPRO 2013
Big Data presentation at GITPRO 2013
 
Data Archiving -Ramesh sap bw
Data Archiving -Ramesh sap bwData Archiving -Ramesh sap bw
Data Archiving -Ramesh sap bw
 
Building the DW - ETL
Building the DW - ETLBuilding the DW - ETL
Building the DW - ETL
 
Data Warehouse
Data WarehouseData Warehouse
Data Warehouse
 
Tuning data warehouse
Tuning data warehouseTuning data warehouse
Tuning data warehouse
 
Sap business intelligence 4.0 report basic
Sap business intelligence 4.0   report basicSap business intelligence 4.0   report basic
Sap business intelligence 4.0 report basic
 
D01 etl
D01 etlD01 etl
D01 etl
 
Lecture 03 - The Data Warehouse and Design
Lecture 03 - The Data Warehouse and Design Lecture 03 - The Data Warehouse and Design
Lecture 03 - The Data Warehouse and Design
 
Five Tuning Tips For Your Datawarehouse
Five Tuning Tips For Your DatawarehouseFive Tuning Tips For Your Datawarehouse
Five Tuning Tips For Your Datawarehouse
 
Session#5; data resource managment
Session#5;  data resource managmentSession#5;  data resource managment
Session#5; data resource managment
 
Lecture 04 data resource management
Lecture 04 data resource managementLecture 04 data resource management
Lecture 04 data resource management
 
Chapter 5 data resource management
Chapter 5  data resource managementChapter 5  data resource management
Chapter 5 data resource management
 
3 tier data warehouse
3 tier data warehouse3 tier data warehouse
3 tier data warehouse
 

Viewers also liked

MGT101 - Financial Accounting- Lecture 33
MGT101 - Financial Accounting- Lecture 33MGT101 - Financial Accounting- Lecture 33
MGT101 - Financial Accounting- Lecture 33Bilal Ahmed
 
ENG101- English Comprehension- Lecture 24
ENG101- English Comprehension- Lecture 24ENG101- English Comprehension- Lecture 24
ENG101- English Comprehension- Lecture 24Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 06
CS201- Introduction to Programming- Lecture 06CS201- Introduction to Programming- Lecture 06
CS201- Introduction to Programming- Lecture 06Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 27
CS201- Introduction to Programming- Lecture 27CS201- Introduction to Programming- Lecture 27
CS201- Introduction to Programming- Lecture 27Bilal Ahmed
 
CS101- Introduction to Computing- Lecture 43
CS101- Introduction to Computing- Lecture 43CS101- Introduction to Computing- Lecture 43
CS101- Introduction to Computing- Lecture 43Bilal Ahmed
 
MGT101 - Financial Accounting- Lecture 28
MGT101 - Financial Accounting- Lecture 28MGT101 - Financial Accounting- Lecture 28
MGT101 - Financial Accounting- Lecture 28Bilal Ahmed
 
MGT101 - Financial Accounting- Lecture 41
MGT101 - Financial Accounting- Lecture 41MGT101 - Financial Accounting- Lecture 41
MGT101 - Financial Accounting- Lecture 41Bilal Ahmed
 
MTH101 - Calculus and Analytical Geometry- Lecture 44
MTH101 - Calculus and Analytical Geometry- Lecture 44MTH101 - Calculus and Analytical Geometry- Lecture 44
MTH101 - Calculus and Analytical Geometry- Lecture 44Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 31
CS201- Introduction to Programming- Lecture 31CS201- Introduction to Programming- Lecture 31
CS201- Introduction to Programming- Lecture 31Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 10
CS201- Introduction to Programming- Lecture 10CS201- Introduction to Programming- Lecture 10
CS201- Introduction to Programming- Lecture 10Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 08
CS201- Introduction to Programming- Lecture 08CS201- Introduction to Programming- Lecture 08
CS201- Introduction to Programming- Lecture 08Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 15
CS201- Introduction to Programming- Lecture 15CS201- Introduction to Programming- Lecture 15
CS201- Introduction to Programming- Lecture 15Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 19
CS201- Introduction to Programming- Lecture 19CS201- Introduction to Programming- Lecture 19
CS201- Introduction to Programming- Lecture 19Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 39
CS201- Introduction to Programming- Lecture 39CS201- Introduction to Programming- Lecture 39
CS201- Introduction to Programming- Lecture 39Bilal Ahmed
 
CS101- Introduction to Computing- Lecture 44
CS101- Introduction to Computing- Lecture 44CS101- Introduction to Computing- Lecture 44
CS101- Introduction to Computing- Lecture 44Bilal Ahmed
 
MTH101 - Calculus and Analytical Geometry- Lecture 41
MTH101 - Calculus and Analytical Geometry- Lecture 41MTH101 - Calculus and Analytical Geometry- Lecture 41
MTH101 - Calculus and Analytical Geometry- Lecture 41Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 43
CS201- Introduction to Programming- Lecture 43CS201- Introduction to Programming- Lecture 43
CS201- Introduction to Programming- Lecture 43Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 22
CS201- Introduction to Programming- Lecture 22CS201- Introduction to Programming- Lecture 22
CS201- Introduction to Programming- Lecture 22Bilal Ahmed
 
ENG101- English Comprehension- Lecture 45
ENG101- English Comprehension- Lecture 45ENG101- English Comprehension- Lecture 45
ENG101- English Comprehension- Lecture 45Bilal Ahmed
 
CS101- Introduction to Computing- Lecture 31
CS101- Introduction to Computing- Lecture 31CS101- Introduction to Computing- Lecture 31
CS101- Introduction to Computing- Lecture 31Bilal Ahmed
 

Viewers also liked (20)

MGT101 - Financial Accounting- Lecture 33
MGT101 - Financial Accounting- Lecture 33MGT101 - Financial Accounting- Lecture 33
MGT101 - Financial Accounting- Lecture 33
 
ENG101- English Comprehension- Lecture 24
ENG101- English Comprehension- Lecture 24ENG101- English Comprehension- Lecture 24
ENG101- English Comprehension- Lecture 24
 
CS201- Introduction to Programming- Lecture 06
CS201- Introduction to Programming- Lecture 06CS201- Introduction to Programming- Lecture 06
CS201- Introduction to Programming- Lecture 06
 
CS201- Introduction to Programming- Lecture 27
CS201- Introduction to Programming- Lecture 27CS201- Introduction to Programming- Lecture 27
CS201- Introduction to Programming- Lecture 27
 
CS101- Introduction to Computing- Lecture 43
CS101- Introduction to Computing- Lecture 43CS101- Introduction to Computing- Lecture 43
CS101- Introduction to Computing- Lecture 43
 
MGT101 - Financial Accounting- Lecture 28
MGT101 - Financial Accounting- Lecture 28MGT101 - Financial Accounting- Lecture 28
MGT101 - Financial Accounting- Lecture 28
 
MGT101 - Financial Accounting- Lecture 41
MGT101 - Financial Accounting- Lecture 41MGT101 - Financial Accounting- Lecture 41
MGT101 - Financial Accounting- Lecture 41
 
MTH101 - Calculus and Analytical Geometry- Lecture 44
MTH101 - Calculus and Analytical Geometry- Lecture 44MTH101 - Calculus and Analytical Geometry- Lecture 44
MTH101 - Calculus and Analytical Geometry- Lecture 44
 
CS201- Introduction to Programming- Lecture 31
CS201- Introduction to Programming- Lecture 31CS201- Introduction to Programming- Lecture 31
CS201- Introduction to Programming- Lecture 31
 
CS201- Introduction to Programming- Lecture 10
CS201- Introduction to Programming- Lecture 10CS201- Introduction to Programming- Lecture 10
CS201- Introduction to Programming- Lecture 10
 
CS201- Introduction to Programming- Lecture 08
CS201- Introduction to Programming- Lecture 08CS201- Introduction to Programming- Lecture 08
CS201- Introduction to Programming- Lecture 08
 
CS201- Introduction to Programming- Lecture 15
CS201- Introduction to Programming- Lecture 15CS201- Introduction to Programming- Lecture 15
CS201- Introduction to Programming- Lecture 15
 
CS201- Introduction to Programming- Lecture 19
CS201- Introduction to Programming- Lecture 19CS201- Introduction to Programming- Lecture 19
CS201- Introduction to Programming- Lecture 19
 
CS201- Introduction to Programming- Lecture 39
CS201- Introduction to Programming- Lecture 39CS201- Introduction to Programming- Lecture 39
CS201- Introduction to Programming- Lecture 39
 
CS101- Introduction to Computing- Lecture 44
CS101- Introduction to Computing- Lecture 44CS101- Introduction to Computing- Lecture 44
CS101- Introduction to Computing- Lecture 44
 
MTH101 - Calculus and Analytical Geometry- Lecture 41
MTH101 - Calculus and Analytical Geometry- Lecture 41MTH101 - Calculus and Analytical Geometry- Lecture 41
MTH101 - Calculus and Analytical Geometry- Lecture 41
 
CS201- Introduction to Programming- Lecture 43
CS201- Introduction to Programming- Lecture 43CS201- Introduction to Programming- Lecture 43
CS201- Introduction to Programming- Lecture 43
 
CS201- Introduction to Programming- Lecture 22
CS201- Introduction to Programming- Lecture 22CS201- Introduction to Programming- Lecture 22
CS201- Introduction to Programming- Lecture 22
 
ENG101- English Comprehension- Lecture 45
ENG101- English Comprehension- Lecture 45ENG101- English Comprehension- Lecture 45
ENG101- English Comprehension- Lecture 45
 
CS101- Introduction to Computing- Lecture 31
CS101- Introduction to Computing- Lecture 31CS101- Introduction to Computing- Lecture 31
CS101- Introduction to Computing- Lecture 31
 

Similar to CS101- Introduction to Computing- Lecture 37

Complete Databases managment system.pptx
Complete Databases managment system.pptxComplete Databases managment system.pptx
Complete Databases managment system.pptxJunaidRamzan4
 
chapter09-120827115409-phpapp01.pdf
chapter09-120827115409-phpapp01.pdfchapter09-120827115409-phpapp01.pdf
chapter09-120827115409-phpapp01.pdfAxmedMaxamuud6
 
Chapter 9 Data Design .pptxInformation Technology Project Management
Chapter 9 Data Design .pptxInformation Technology Project ManagementChapter 9 Data Design .pptxInformation Technology Project Management
Chapter 9 Data Design .pptxInformation Technology Project ManagementAxmedMaxamuudYoonis
 
Overview of Data Base Systems Concepts and Architecture
Overview of Data Base Systems Concepts and ArchitectureOverview of Data Base Systems Concepts and Architecture
Overview of Data Base Systems Concepts and ArchitectureRubal Sagwal
 
4- DB Ch6 18-3-2020.pptx
4- DB Ch6 18-3-2020.pptx4- DB Ch6 18-3-2020.pptx
4- DB Ch6 18-3-2020.pptxShoaibmirza18
 
CS101- Introduction to Computing- Lecture 36
CS101- Introduction to Computing- Lecture 36CS101- Introduction to Computing- Lecture 36
CS101- Introduction to Computing- Lecture 36Bilal Ahmed
 
C1 basic concepts of database
C1 basic concepts of databaseC1 basic concepts of database
C1 basic concepts of databaseWan Azni
 
Introduction to Database Management Systems
Introduction to Database Management SystemsIntroduction to Database Management Systems
Introduction to Database Management SystemsAdri Jovin
 
Asper database presentation - Data Modeling Topics
Asper database presentation - Data Modeling TopicsAsper database presentation - Data Modeling Topics
Asper database presentation - Data Modeling TopicsTerry Bunio
 
Physical database design(database)
Physical database design(database)Physical database design(database)
Physical database design(database)welcometofacebook
 
System Analysis And Design
System Analysis And DesignSystem Analysis And Design
System Analysis And DesignLijo Stalin
 
Database Management Systems 1
Database Management Systems 1Database Management Systems 1
Database Management Systems 1Nickkisha Farrell
 
UNIT machine learning unit 1,algorithm pdf
UNIT machine learning  unit 1,algorithm pdfUNIT machine learning  unit 1,algorithm pdf
UNIT machine learning unit 1,algorithm pdfOmarFarooque9
 

Similar to CS101- Introduction to Computing- Lecture 37 (20)

Complete Databases managment system.pptx
Complete Databases managment system.pptxComplete Databases managment system.pptx
Complete Databases managment system.pptx
 
chapter09-120827115409-phpapp01.pdf
chapter09-120827115409-phpapp01.pdfchapter09-120827115409-phpapp01.pdf
chapter09-120827115409-phpapp01.pdf
 
Chapter 9 Data Design .pptxInformation Technology Project Management
Chapter 9 Data Design .pptxInformation Technology Project ManagementChapter 9 Data Design .pptxInformation Technology Project Management
Chapter 9 Data Design .pptxInformation Technology Project Management
 
Overview of Data Base Systems Concepts and Architecture
Overview of Data Base Systems Concepts and ArchitectureOverview of Data Base Systems Concepts and Architecture
Overview of Data Base Systems Concepts and Architecture
 
4- DB Ch6 18-3-2020.pptx
4- DB Ch6 18-3-2020.pptx4- DB Ch6 18-3-2020.pptx
4- DB Ch6 18-3-2020.pptx
 
CS101- Introduction to Computing- Lecture 36
CS101- Introduction to Computing- Lecture 36CS101- Introduction to Computing- Lecture 36
CS101- Introduction to Computing- Lecture 36
 
Rdbms
RdbmsRdbms
Rdbms
 
C1 basic concepts of database
C1 basic concepts of databaseC1 basic concepts of database
C1 basic concepts of database
 
Chapter 09
Chapter 09Chapter 09
Chapter 09
 
Introduction to Database Management Systems
Introduction to Database Management SystemsIntroduction to Database Management Systems
Introduction to Database Management Systems
 
lecture 1.pdf
lecture 1.pdflecture 1.pdf
lecture 1.pdf
 
Asper database presentation - Data Modeling Topics
Asper database presentation - Data Modeling TopicsAsper database presentation - Data Modeling Topics
Asper database presentation - Data Modeling Topics
 
Physical database design(database)
Physical database design(database)Physical database design(database)
Physical database design(database)
 
Introduction to Databases by Dr. Kamal Gulati
Introduction to Databases by Dr. Kamal GulatiIntroduction to Databases by Dr. Kamal Gulati
Introduction to Databases by Dr. Kamal Gulati
 
ITE 101 - Week 7
ITE 101 - Week 7ITE 101 - Week 7
ITE 101 - Week 7
 
System Analysis And Design
System Analysis And DesignSystem Analysis And Design
System Analysis And Design
 
Database Management Systems 1
Database Management Systems 1Database Management Systems 1
Database Management Systems 1
 
Database Management & Models
Database Management & ModelsDatabase Management & Models
Database Management & Models
 
UNIT machine learning unit 1,algorithm pdf
UNIT machine learning  unit 1,algorithm pdfUNIT machine learning  unit 1,algorithm pdf
UNIT machine learning unit 1,algorithm pdf
 
MS ACCESS.pptx
MS ACCESS.pptxMS ACCESS.pptx
MS ACCESS.pptx
 

More from Bilal Ahmed

CS201- Introduction to Programming- Lecture 45
CS201- Introduction to Programming- Lecture 45CS201- Introduction to Programming- Lecture 45
CS201- Introduction to Programming- Lecture 45Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 44
CS201- Introduction to Programming- Lecture 44CS201- Introduction to Programming- Lecture 44
CS201- Introduction to Programming- Lecture 44Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 42
CS201- Introduction to Programming- Lecture 42CS201- Introduction to Programming- Lecture 42
CS201- Introduction to Programming- Lecture 42Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 41
CS201- Introduction to Programming- Lecture 41CS201- Introduction to Programming- Lecture 41
CS201- Introduction to Programming- Lecture 41Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 40
CS201- Introduction to Programming- Lecture 40CS201- Introduction to Programming- Lecture 40
CS201- Introduction to Programming- Lecture 40Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 38
CS201- Introduction to Programming- Lecture 38CS201- Introduction to Programming- Lecture 38
CS201- Introduction to Programming- Lecture 38Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 37
CS201- Introduction to Programming- Lecture 37CS201- Introduction to Programming- Lecture 37
CS201- Introduction to Programming- Lecture 37Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 36
CS201- Introduction to Programming- Lecture 36CS201- Introduction to Programming- Lecture 36
CS201- Introduction to Programming- Lecture 36Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 35
CS201- Introduction to Programming- Lecture 35CS201- Introduction to Programming- Lecture 35
CS201- Introduction to Programming- Lecture 35Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 34
CS201- Introduction to Programming- Lecture 34CS201- Introduction to Programming- Lecture 34
CS201- Introduction to Programming- Lecture 34Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 33
CS201- Introduction to Programming- Lecture 33CS201- Introduction to Programming- Lecture 33
CS201- Introduction to Programming- Lecture 33Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 32
CS201- Introduction to Programming- Lecture 32CS201- Introduction to Programming- Lecture 32
CS201- Introduction to Programming- Lecture 32Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 30
CS201- Introduction to Programming- Lecture 30CS201- Introduction to Programming- Lecture 30
CS201- Introduction to Programming- Lecture 30Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 29
CS201- Introduction to Programming- Lecture 29CS201- Introduction to Programming- Lecture 29
CS201- Introduction to Programming- Lecture 29Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 28
CS201- Introduction to Programming- Lecture 28CS201- Introduction to Programming- Lecture 28
CS201- Introduction to Programming- Lecture 28Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 26
CS201- Introduction to Programming- Lecture 26CS201- Introduction to Programming- Lecture 26
CS201- Introduction to Programming- Lecture 26Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 25
CS201- Introduction to Programming- Lecture 25CS201- Introduction to Programming- Lecture 25
CS201- Introduction to Programming- Lecture 25Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 24
CS201- Introduction to Programming- Lecture 24CS201- Introduction to Programming- Lecture 24
CS201- Introduction to Programming- Lecture 24Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 23
CS201- Introduction to Programming- Lecture 23CS201- Introduction to Programming- Lecture 23
CS201- Introduction to Programming- Lecture 23Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 21
CS201- Introduction to Programming- Lecture 21CS201- Introduction to Programming- Lecture 21
CS201- Introduction to Programming- Lecture 21Bilal Ahmed
 

More from Bilal Ahmed (20)

CS201- Introduction to Programming- Lecture 45
CS201- Introduction to Programming- Lecture 45CS201- Introduction to Programming- Lecture 45
CS201- Introduction to Programming- Lecture 45
 
CS201- Introduction to Programming- Lecture 44
CS201- Introduction to Programming- Lecture 44CS201- Introduction to Programming- Lecture 44
CS201- Introduction to Programming- Lecture 44
 
CS201- Introduction to Programming- Lecture 42
CS201- Introduction to Programming- Lecture 42CS201- Introduction to Programming- Lecture 42
CS201- Introduction to Programming- Lecture 42
 
CS201- Introduction to Programming- Lecture 41
CS201- Introduction to Programming- Lecture 41CS201- Introduction to Programming- Lecture 41
CS201- Introduction to Programming- Lecture 41
 
CS201- Introduction to Programming- Lecture 40
CS201- Introduction to Programming- Lecture 40CS201- Introduction to Programming- Lecture 40
CS201- Introduction to Programming- Lecture 40
 
CS201- Introduction to Programming- Lecture 38
CS201- Introduction to Programming- Lecture 38CS201- Introduction to Programming- Lecture 38
CS201- Introduction to Programming- Lecture 38
 
CS201- Introduction to Programming- Lecture 37
CS201- Introduction to Programming- Lecture 37CS201- Introduction to Programming- Lecture 37
CS201- Introduction to Programming- Lecture 37
 
CS201- Introduction to Programming- Lecture 36
CS201- Introduction to Programming- Lecture 36CS201- Introduction to Programming- Lecture 36
CS201- Introduction to Programming- Lecture 36
 
CS201- Introduction to Programming- Lecture 35
CS201- Introduction to Programming- Lecture 35CS201- Introduction to Programming- Lecture 35
CS201- Introduction to Programming- Lecture 35
 
CS201- Introduction to Programming- Lecture 34
CS201- Introduction to Programming- Lecture 34CS201- Introduction to Programming- Lecture 34
CS201- Introduction to Programming- Lecture 34
 
CS201- Introduction to Programming- Lecture 33
CS201- Introduction to Programming- Lecture 33CS201- Introduction to Programming- Lecture 33
CS201- Introduction to Programming- Lecture 33
 
CS201- Introduction to Programming- Lecture 32
CS201- Introduction to Programming- Lecture 32CS201- Introduction to Programming- Lecture 32
CS201- Introduction to Programming- Lecture 32
 
CS201- Introduction to Programming- Lecture 30
CS201- Introduction to Programming- Lecture 30CS201- Introduction to Programming- Lecture 30
CS201- Introduction to Programming- Lecture 30
 
CS201- Introduction to Programming- Lecture 29
CS201- Introduction to Programming- Lecture 29CS201- Introduction to Programming- Lecture 29
CS201- Introduction to Programming- Lecture 29
 
CS201- Introduction to Programming- Lecture 28
CS201- Introduction to Programming- Lecture 28CS201- Introduction to Programming- Lecture 28
CS201- Introduction to Programming- Lecture 28
 
CS201- Introduction to Programming- Lecture 26
CS201- Introduction to Programming- Lecture 26CS201- Introduction to Programming- Lecture 26
CS201- Introduction to Programming- Lecture 26
 
CS201- Introduction to Programming- Lecture 25
CS201- Introduction to Programming- Lecture 25CS201- Introduction to Programming- Lecture 25
CS201- Introduction to Programming- Lecture 25
 
CS201- Introduction to Programming- Lecture 24
CS201- Introduction to Programming- Lecture 24CS201- Introduction to Programming- Lecture 24
CS201- Introduction to Programming- Lecture 24
 
CS201- Introduction to Programming- Lecture 23
CS201- Introduction to Programming- Lecture 23CS201- Introduction to Programming- Lecture 23
CS201- Introduction to Programming- Lecture 23
 
CS201- Introduction to Programming- Lecture 21
CS201- Introduction to Programming- Lecture 21CS201- Introduction to Programming- Lecture 21
CS201- Introduction to Programming- Lecture 21
 

Recently uploaded

Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitolTechU
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxUnboundStockton
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
 
MICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptxMICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptxabhijeetpadhi001
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentInMediaRes1
 

Recently uploaded (20)

Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptx
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docx
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
 
MICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptxMICROBIOLOGY biochemical test detailed.pptx
MICROBIOLOGY biochemical test detailed.pptx
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media Component
 

CS101- Introduction to Computing- Lecture 37

  • 1. 1 CS101 Introduction to Computing Lecture 37 Database Software
  • 2. 2 Focus of the last Lecture was on Data Management • First of a two-lecture sequence • We became familiar with the issues and problems related to data-intensive computing • We also found out about flat-file and tabular storage
  • 3. 3 Data Management • Keeping track of a few dozen data items is straight forward • However, dealing with situations that involve significant number of data items, requires more attention to the data handling process • Dealing with millions - even billions - of inter- related data items requires even more careful thought
  • 4. 4 Issues in Data Management
  • 5. 5 Data Entry • New titles are added every day • New customers are being added every day • That new data needs to be added accurately
  • 6. 6 Data Updates (2) • All those actions require updates to existing data • Those changes need to be entered accurately
  • 7. 7 Data Security (1) • All the data that BholiBooks has in its computer systems is quite critical to its operation • The security of the customers’ personal data is of utmost importance. Hackers are always looking for that type of data, especially for credit card numbers
  • 8. 8 Data Security (2) • This problem can be managed by using appropriate security mechanisms that provide access to authorized persons/computers only • Security can also be improved through: – Encryption – Private or virtual-private networks – Firewalls – Intrusion detectors – Virus detectors
  • 9. 9 Data Integrity • Integrity refers to maintaining the correctness and consistency of the data – Correctness: Free from errors – Consistency: No conflict among related data items • Integrity can be compromised in many ways: – Typing errors – Transmission errors – Hardware malfunctions – Program bugs – Viruses – Fire, flood, etc.
  • 10. 10 Ensuring Data Integrity (1) • Type Integrity • Limit Integrity
  • 11. 11 Ensuring Data Integrity (2) • Referential Integrity • Physical Integrity
  • 12. 12 Data Accessibility (1) • What is required is that: – Data be stored in an organized manner – Additional info about the data be stored so that the data access times are minimized
  • 13. 13 Data Accessibility (3) • A solution to this concurrency control problem: Lock access to data while someone is using it
  • 14. 14 DBMS (2) • A DBMS takes care of the storage, retrieval, and management of large data sets on a database • It provides SW tools needed to organize & manipulate that data in a flexible manner • It includes facilities for: – Adding, deleting, and modifying data – Making queries about the stored data – Producing reports summarizing the required contents
  • 15. 15 Database (1) • A collection of data organized in such a fashion that the computer can quickly search for a desired data item
  • 16. 16 OS Independence (2) • It provides an OS-independent view of the data to the user, making data manipulation and management much more convenient
  • 17. 17 What can be stored in a database? • As long as it is digital data, it can be stored: – Numbers, Booleans, text – Sounds – Images – Video
  • 18. 18 In the very, very old days … • Even large amounts of data was stored in text files, known as flat-file databases • All related info was stored in a single long, tab- or comma-delimited text file • Each group of info – called a record - in that file was separated by a special character; vertical bar ‘|’ was a popular option • Each record consisted of a group of fields, each field containing some distinct data item
  • 19. 19 The Trouble with Flat-File Databases • The text file format makes it hard to search for specific info or to create reports that include only certain fields from each record • Reason: One has to search sequentially through the entire file to gather desired info, such as ‘all books by a certain author’ • However, for small sets of data – say, consisting of several tens of kB – they can provide reasonable performance
  • 20. 20 Tabular Storage: Features & Possibilities 1. Similar items of data form a column 2. Fields placed in a particular row – same as a flat-file record – are strongly interrelated 3. One can sort the table w.r.t. any column 4. That makes searching – e.g., for all the books written by a certain author – straight forward
  • 21. 21 Tabular Storage: Features & Possibilities 5. Similarly, searching for the 10 cheapest/most expensive books can be easily accomplished through a sort 6. Effort required for adding a new field to all the records of a flat-file is much greater than adding a new column to the table
  • 22. 22 CONCLUSION: Tabular storage is better than flat-file storage We will continue on with tables’ theme today
  • 23. 23 Today’s Lecture: Database SW • In our 4th & final lecture on productivity software, we will continue our discussion from last week on data management • We will find out about relational databases • We will also implement a simple relational database
  • 24. 24 Let’s continue on with the tabular approach We stored data in a table last time, and liked it Let’s revisit that table and then put together another one
  • 25. 25 Table from the Last Lecture Title Author Publisher Price InStock Good Bye Mr. Bhola Altaf Khan BholiBooks 1000 Y The Terrible Twins Bhola Champion BholiBooks 199 Y Calculus & Analytical Geometry Smith Sahib Good Publishers 325 N Accounting Secrets Zamin Geoffry Sung-e- Kilometer Publishers 29 Y
  • 26. 26 Another table … Customer Title Shipment Type Aadil Ali Good Bye Mr. Bhola 2002.12.26 Air Aadil Ali The Terrible Twins 2002.12.26 Air Miftah Muslim Calculus & Analytical Geometry 2002.12.25 Surface Karen Kaur Good Bye Mr. Bhola 2002.12.24 Air
  • 27. 27 This & the previous table are related • They share a column, & are related through it • A program can match info from a field in one table with info in a corresponding field of another table to generate a 3rd table that combines requested data from both tables • That is, a program can use matching values in 2 tables to relate info in one to info in the other
  • 28. 28 Q: Who is BholiBooks’ best customer? • That is, who has spent the most money on the online bookstore? • To answer that question, one can process the inventory and the shipment tables to generate a third table listing the customer names and the prices of the books that they have ordered
  • 29. 29 The generated table Customer Price Aadil Ali 1000 Aadil Ali 199 Miftah Muslim 325 Karen Kaur 1000 Can you now process this table to find the answer to our question ?
  • 30. 30 Relational Databases (1) • Databases consisting of two or more related tables are called relational databases • A typical relational database may have anywhere from 10 to over a thousand tables • Each column of those tables can contain only a single type of data (contrast this with spreadsheet columns!) • Table rows are called records; row elements are called fields
  • 31. 31 Relational Databases (2) • A relational database stores all its data inside tables, and nowhere else • All operations on data are done on those tables or those that are generated by table operations • Tables, tables, and nothing but tables!
  • 32. 32 RDBMS • Relational DBMS software • Contains facilities for creating, populating, modifying, and querying relational databases • Examples: – Access – FileMaker Pro – SQL Server – Oracle – DB2 – Objectivity/DB – MySQL – Postgres
  • 33. 33 The Trouble with Relational DBs (1) • Much of current SW development is done using the object-oriented methodology • When we want to store the object-oriented data into an RDBMS, it needs to be translated into a form suitable for RDBMS
  • 34. 34 The Trouble with Relational DBs (2) • Then when we need to read the data back from the RDBMS, the data needs to be translated back into an object-oriented form before use • These two processing delays, the associated processing, and time spent in writing and maintaining the translation code are the key disadvantages of the current RDBMSes
  • 35. 35 Solution? • Don’t have time to discuss that, but try searching the Web on the following terms: – Object-oriented databases – Object-relational databases
  • 36. 36 Classification of DBMS w.r.t. Size •Personal/Desktop/Single-user (MB-GB) – Examples: Tech. papers’ list; Methai shop inventory – Typical DMBS: Access •Server-based/Multi-user/Enterprise (GB-TB) – Examples: HBL; Amazon.com – Typical DMBS: Oracle, DB2 •Seriously-huge databases (TB-PB-XB) – Examples: 2002 – BaBar experiment at Stanford (500TB); 2005 – LHC database at CERN (1XB) – Typical DMBS: Objectivity/DB
  • 37. 37 Some Terminology (1) • Primary Key is a field that uniquely identifies each record stored in a table • Queries are used to view, change, and analyze data. They can be used to: – Combine data from different tables, efficiently – Extract the exact data that is desired • Forms can be used for entering, editing, or viewing data, one record at a time
  • 38. 38 Some Terminology (2) • Reports are an effective, user-friendly way of presenting data. All DBMSes provide tools for producing custom reports. • Data normalization is the process of efficiently organizing data in a database. There are two goals of the normalization process: – Eliminate redundant data – Storing only related data in a table
  • 39. 39 Before we do a demo, let me just mention my favorite database application: Data Mining
  • 40. 40 Data Mining • The process of analyzing large databases to identify patterns • Example: Mining the sales records from a BholiBooks could identify interesting shopping patterns like “53% of customers who bought book A also bought book B”. This pattern can be put to good use! • Data mining often utilizes intelligent systems’ techniques
  • 41. 41 Let’s now demonstrate the use of a desktop RDBMS • We will create a new relational database • It will consist of two tables • We will populate those tables • We will generate a report after combining the data from the two tables
  • 42. 42 Assignment # 13 Develop a database by designing two tables, populate them, and then generate a report Further information on this assignment will be provided to you on the CS101 Web site
  • 44. 44 Today’s Lecture: • In this final lecture on productivity software, we continued our discussion from last week on data management • We found out about relational databases • We also implemented a simple relational database
  • 45. 45 Next Lecture’ Goals (Cyber Crime) • To know the different types of computer crimes that occur over cyber space • To familiarize ourselves with with several methods that can be used to minimize the effect of these crimes • To get familiar with a few policies and legislation designed to tackle cyber crime