Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Week 1 Before the Advent of Database Systems & Fundamental Concepts
1. ITS 20163
INTRODUCTION TO
DATABASES
Basic knowledge of how to collect, organize, and analyze data. The course will
cover the introduction concepts of querying, updating, and administration of
databases. Other topics include normalization, table structures, table
relationships, and data integrity.
4. 4
Da-ta / noun (Definition)
facts and statistics collected together for reference or analysis.
the quantities, characters, or symbols on which operations are
performed by a computer, being stored and transmitted in the form
of electrical signals and recorded on magnetic, optical, or
mechanical recording media.
Data / meaning
Data are factual information such as measurements or statistics
about objects and concepts.
We use data for discussions or as part of a calculation.
Data can be a person, a place, an event, an action or any one of a
number of things. A single fact is an element of data, or a data
element.
DATA
4
5. The Database
A database is a self-describing collection of
integrated tables.
The tables are called integrated because they
store data about the relationships between rows
of data.
A database is called self-describing because it
stores a description of itself.
The self-describing data is called metadata,
which is data about data.
The DATABASE
6. 6
1. File-based System
Time ago computers relied on a much less
sophisticated and costly approach to data
management.
2. DBMS (Database Management System)
Described a new system for storing and working
with large databases.
DATA STORAGE
6
7. 7
A collection of application programs that perform
services for the end-users such as the production of
reports.
Each program defines and manages its own data.
File-based System
7
8. 8
Advantage of File-oriented system:
1. Backup:
It is possible to take faster and automatic back-up of database
stored in files of computer-based systems.
computer systems provide functionalities to serve this purpose.it is
also possible to develop specific application program for this
purpose.
2. Compactness:
It is possible to store data compactly.
3. Data Retrieval:
Computer-based systems provide enhanced data retrieval
techniques to retrieve data stored in files in easy and efficient way.
File-based System
8
9. 9
Advantage of File-oriented system:
4. Editing:
It is easy to edit any information stored in computers in form of
files.
Specific application programs or editing software can be used for
this purpose.
5. Remote Access:
In computer-based systems, it is possible to access data remotely.
To access data it is not necessary for a user to remain present at
location where these data are kept.
6. Sharing:
Data stored in files of computer-based systems ca be shared
among multiple users at a same time.
File-based System
9
10. 10
1. Data Redundancy:
It is possible that the same information may be duplicated in different files.
This leads to data redundancy results in memory wastage.
2. Data Inconsistency:
Because of data redundancy, it is possible that data may not be in consistent
state.
3. Difficulty in Accessing Data:
Accessing data is not convenient and efficient in file processing system.
4. Limited Data Sharing:
Data are scattered in various files. Also different files may have different
formats and these files may be stored in different folders may be of different
departments.
So, due to this data isolation, it is difficult to share data among different
Disadvantage of File-oriented
system:
File-based System
10
11. 11
5. Integrity Problems:
Data integrity means that the data contained in the database in both correct and
consistent. For this purpose the data stored in database must satisfy correct and
constraints.
6. Atomicity Problems:
Any operation on database must be atomic. This means, it must happen in
its entirely or not at all.
7. Concurrent Access Anomalies:
Multiple users are allowed to access data simultaneously. This is for the sake of
better performance and faster response.
8. Security Problems:
Database should be accessible to users in limited way.
Each user should be allowed to access data concerning his requirements only.
Disadvantage of File-oriented
system:
File-based System
11
12. DBMS database management
software.
DBMS
A database management system (DBMS) is a software
package designed to define, manipulate, retrieve and manage
data in a database.
A DBMS generally manipulates the data itself, the data format,
field names, record structure and file structure. It also defines
rules to validate and manipulate this data.
A DBMS relieves users of framing programs for data
maintenance.
Fourth-generation query languages, such as SQL, are used
along with the DBMS package to interact with a database.
12
13. 13
Difference between file-based system and database
system?
A database management system is designed to coordinate multiple
users accessing the same data at the same time. A file-
processing system is usually designed to allow one or more programs
to access different data files at the same time.
A database management system coordinates both the physical and the
logical access to the data, whereas a file-processing system
coordinates only the physical access.
A database management system is designed to allow flexible access to
data (i.e. queries), whereas a file-processing system is designed to
allow predetermined access to data (i.e. compiled programs).
Unauthorized access is restricted in DBMS but not in the file system.
13
14. 14
Difference between file-based system and database
system?
Unauthorized access is restricted in DBMS but not in the file
system.
DBMS provide back up and recovery whereas data lost in
file system can't be recovered.
DBMS provide multiple user interfaces. Data is isolated in
file system.
A database management system is designed to coordinate
multiple users accessing the same data at the same time. A
file-processing system is usually designed to allow one or
more programs to access different data files at the same
time.
14
16. 16
What is a Database? (Definition)
A database is an organized collection of data
A database is a shared collection of related data used
to support the activities of a particular organization.
A database can be viewed as a repository of data that is
defined once and then accessed by various users.
A structured set of data held in a computer, especially
one that is accessible in various ways.
A database is a collection of information that is
organized so that it can be easily accessed,
managed and updated.
Database
16
18. The Characteristics of Databases
The purpose of a database is to help people track
things of interest to them.
Data is stored in tables, which have rows and
columns like a spreadsheet.
A database may have multiple tables, where each
table stores data about a different thing.
Each row in a table stores data about an occurrence
or instance of the thing of interest.
A database stores data and relationships.
19. 19
Database Structure (Relational Model)
The relational model invented by Edgar F. Codd, of IBM's San
Jose Research Laboratory.
This model organizes data into one or more tables (or
"relations") of columns and rows, with a unique key identifying
each row.
Generally, each table/relation represents one "entity type"
(such as customer or product).
The rows represent instances of
that type of entity (such as "Lee“
or "chair") and the columns
representing values attributed to that
instance (such as address or price).
Database Structure
19
20. 20
Database Structure (Relational)
Data is organized into rows, columns, and tables, and it
is indexed to make it easier to find relevant information.
Database Structure
20
21. 21
ROW—also called a record or tuple—
represents a single, implicitly structured data
item in a table.
Each row in a table represents a set of related
data, and every row in the table has the same
structure.
Database Structure
21
ROW
S
22. 22
Column's — equivalent is called attribute.
In relational database, a column is a set of data values of a
particular simple type, one for each row of the table.
The columns in relational database provide the structure
according to how the rows are composed.
When a column allows data values of a single type, it does
not essentially mean it only has simple text values. Also,
databases mostly let columns to have more complex data
for example whole documents, images or even video clips
also called a record or tuple represents a single, implicitly
structured data item in a table.
Database Structure
22
COLUMN
S
23. 23
For example, a table that represents companies might have the following
columns:
ID (integer identifier, unique to each row)
Name (text)
Address line 1 (text)
Address line 2 (text)
City (integer identifier, drawn from a separate table of cities from which any
information would be drawn)
State (integer identifier, drawn from a separate table from which any state
information would be drawn)
Postal code (text)
Industry (integer identifier, drawn from a separate table of industries)
Database Structure
23
COLUMNS
EXAMPLE
25. 25
Indexing is a way of sorting a number of records on
multiple fields.
Creating an index on a field in a table creates another
data structure which holds the field value, and pointer
to the record it relates to.
This index structure is then sorted, allowing Binary
Searches to be performed on it.
The downside to indexing is that these indexes
require additional space on the disk
Database Structure
25
Indexin
g
26. 26
A database index is a data structure that improves the
speed of data retrieval operations on a database table
at the cost of additional writes and storage space to
maintain the index data structure.
Indexes are used to quickly locate data without having
to search every row in a database table every time a
database table is accessed.
Database Structure
26
Indexin
g
27. 27
Let’s say that you have an index for a primary key. This will create an
ordered list of primary key values in a separate table, each entry has
a pointer points to the relative value in the original table.
So, whenever you want to access a table using the primary key, it
will use binary search algorithm to access the required value in the
Index table, and then, go to the relative value in the original table.
Database Structure
27
How Indexes
Work?
28. 28
Database Structure
28
How Indexes
Work?
And, definitely, you can create
another index on another
column, even if it’s a non-
primary column, like first name,
assuming that you usually
access the table using that
column.
The decision for choosing
another column (besides the
primary key) to be indexed can
be delayed until the database
has been used for a while.
29. The Components of a Database System
Applications are the computer programs that
users work with.
The Database Management System
(DBMS) creates, processes, and administers
databases.
Structured Query Language (SQL) is an
internationally recognized standard database
language that is used by all commercial
DBMSs.
30. METADATA
Metadata is "data that provides information about other data". In other words, it
is "data about data". Many distinct types of metadata exist, including descriptive
metadata, structural metadata, administrative metadata, reference
metadata, statistical metadata, and legal metadata.
• Descriptive metadata is descriptive information about a resource. It is used for
discovery and identification. It includes elements such as title, abstract, author,
and keywords.
• Structural metadata is metadata about containers of data and indicates how
compound objects are put together, for example, how pages are ordered to
form chapters. It describes the types, versions, relationships, and other
characteristics of digital materials.
• Administrative metadata is information to help manage a resource, like a
resource type, permissions, and when and how it was created
• Reference metadata is information about the contents and quality of statistical
data.
• Statistical metadata, also called process data, may describe processes that
collect, process or produce statistical data.