Databaser
Chapter Six Overview
•
SECTION 6.1 – DATABASE FUNDAMENTALS
– Understanding Information
– Database Fundamentals
– Database Advantages
– Relational Database Fundamentals
– Database Management Systems
– Integrating Data Among Multiple Databases
•
SECTION 6.2 – DATA WARAEHOUSE FUNDAMENTALS
– Accessing Organizational Information
– History of Data Warehousing
– Data Warehouse Fundamentals
– Business Intelligence
– Data Mining
ITO 07-06-13 Bild 6-1
Understanding information
•
Information is everywhere in an organization
•
Employees must be able to obtain and analyze the many different levels,
formats, and granularities of organizational information to make decisions
•
Successfully collecting, compiling, sorting, and analyzing information can
provide tremendous insight into how an organization is performing
Kunskap och information har ett värde
Kostnad för att byta ut en skruv 1.101 kr
Skruven
1 kr
Arbetskostnad
100 kr
Kunskap och information om arbetet
1.000 kr
ITO 07-06-13 Bild 6-2
Understanding information
•
Information granularity – refers to the extent of detail within the
information (fine and detailed or coarse and abstract)
– Levels
– Formats
– Granularities
ITO 07-06-13 Bild 6-3
Information Quality
•
Business decisions are only as good as the quality of the information used to
make the decisions
•
Characteristics of high quality information include:
– Accuracy
Korrekt?
– Completeness
Saknas något?
– Consistency
Hänger det ihop? Är det logiskt?
– Uniqueness
Dubellagrar vi information? Kan vi komma åt
information direkt?
– TimelinessÄr informationen aktuell?
+ Är informationen spårbar
ITO 07-06-13 Bild 6-4
Information Quality
•
Low quality information example
ITO 07-06-13 Bild 6-5
Understanding the Costs of
Poor Information
•
The four primary sources of low quality information include:
1.
Online customers intentionally enter inaccurate information to protect
their privacy
2.
Information from different systems have different entry standards and
formats
3.
Call center operators enter abbreviated or erroneous information by
accident or to save time
4.
Third party and external information contains inconsistencies,
inaccuracies, and errors
ITO 07-06-13 Bild 6-6
Understanding the Costs of
Poor Information
•
Potential business effects resulting from low quality information include:
– Inability to accurately track customers
– Difficulty identifying valuable customers
– Inability to identify selling opportunities
– Marketing to nonexistent customers
– Difficulty tracking revenue due to inaccurate invoices
– Inability to build strong customer relationships
ITO 07-06-13 Bild 6-7
Konceptuell modellering
•
•
•
•
Objekt
Relationer
Egenskap
Entiteter
ITO 07-06-13 Bild 6-8
Objekt
Intressanta företeelser
Konkreta
Abstrakta
7
Icke existerande
• Evighetsmaskin
• Cirkelns kvadratur
ITO 07-06-13 Bild 6-9
Relationer
• Relationer beskriver samband mellan objekt
Har_far
äger
Gift_med
Har_mor
ITO 07-06-13 Bild 6-10
Mängder/klasser & Attribut
• Gruppering
av
• liknande
objekt
reg. no
model
year
colour
name
age
salary
hair colour
ITO 07-06-13 Bild 6-11
Example Conceptual Model
married to
PERSON
name
age
salary
hair colour
CAR
owns
reg.no.
model
year
colour
ITO 07-06-13 Bild 6-12
Tabeller/filer och databaser
Kolumn (Attribute, field, fält)
Artiklar Tabell (Register, File, Fil)
Art.nr
Namn
Pris
LagerAntal
1
2
3
Skruv
Mutter
Bricka
1.50
1.20
0.50
1.000
300
850
Rad (Record, Post)
DATABAS = Alla tab. Och relationer
LEVERERAR
BESTÅR-AV
ARTIKLAR
INGÅR -I
LEVERANTÖRER
ORDER
Operationer från program
Ny artikel (4, Spik, 0.70, 0)
Nytt pris (1, 1.60)
Antal i lager (2)
Ta bort (3)
Vilka artiklar har kund nr 51
köpt det senaste året ?
HAR
KUNDER
ITO 07-06-13 Bild 6-13
Olika typer av tabeller
REGISTER
ANVÄNDNING
PERSON
löneberäkning
KUND
fakturering
ARTIKEL
lagerhållning
fakturering
BOKNINGS
tid- och platsbokning
LÄKEMEDELS
recept
ITO 07-06-13 Bild 6-14
Nyckel/ Primary Key
Unikt sökbegrepp i ett register: Primärnyckel, ID-begrepp
EX
Personnummer i ett personregister: PersNr, Namn, Adress, Lön
Kundnummer i ett kundregister: KundNr, Namn, Rabatt, Kategori
Undvik klassificerande ID-begrepp
De spricker ofta
ex
xxxxx xx xxx
Typ av sko
Storlek
Vilken bonus har jag ?
Färgkod
Vilket är Ditt försäkringsnummer ??
ITO 07-06-13 Bild 6-15
En övning
GUTE CYKELUTHYRNING på soliga Gotland har4.500 cyklar till uthyrning.
Administrationen har har blivit så betungande att man beslutat att anskaffa en
PC. Vi skall nu konstruera systemet åt dem. Vi börjar med databasen. Det
grundläggande är att varje cykel har ett ingraverat ramnummer. I samband med
uthyrning betalar man en depositionsavgift som varierar mellan olika cyklar. Vid
återlämningen skall systemet skriva ut ett specificerat kvitto. Kostnaden är
cykelns dagspris gånger antalet dagar. Naturligtvis skall cykelregistret
uppdateras vid exempelvis nyanskaffning.
Två listor skall kunna tas fram:
1. Cyklar som just nu är uthyrda. Skall framgå vem som hyr.
2. En totallista över samtliga cyklar som skall uppta
anskaffningsår och hur många dagar den totalt varit
uthyrd sen anskaffningen.
UPPGIFT: Gör en postbeskrivning för cykelregistret, vilket
skall vara det enda förekommande registret.
ITO 07-06-13 Bild 6-16
Relationer i en databas
Fall 1 (ett till ett)
En fastighet kan bara ägas av en person och en person kan bara äga en fastighet
person
PNR **
NAMN
ADRESS
FNR*
fastighet
FNR **
KOMMUN
PRIS
PNR*
Fall 2 (ett till många)
En person kan äga fler fastigheter men en fastighet kan bara ha en ägare
person
PNR **
NAMN
ADRESS
fastighet
FNR **
KOMMUN
PRIS
PNR*
Fall 3 (många till många)
En person kan äga fler fastigheter och en fastighet kan ha fler delägare
person
PNR **
NAMN
ADRESS
fastighet
FNR **
KOMMUN
PRIS
** Primärnyckel
* Sekundärnyckel, referens
ITO 07-06-13 Bild 6-17
Exempel på relationer
1 - M
**
**
*
PNR
NAMN
ADR
FNR KOMMUN
PRIS PNR
1
KALLE
PELLE
NISSE
ULLA
A-GATAN
B-GATAN
C-GATAN
D-GATAN
A
B
C
D
1.000 1
2.000
1.500 1
5.000 4
2
3
4
PERSON
STHLM
GBG
MALMÖ
LUND
FASTIGHET
ITO 07-06-13 Bild 6-18
M - M kräver ett relationsobjekt
person
PNR **
NAMN
ADRESS
1
2
3
4
KALLE
PELLE
NISSE
ULLA
ägarförhållande
PNR*
FNR*
% ANDEL
A-Gatan.
B-Gatan
C-Gatan
D-Gatan
1 A 100
1 D 50
4 D 50
fastighet
FNR **
KOMMUN
PRIS
A STHLM 1.000
B GBG
2.000
C MALMÖ 1.000
D LUND 2.000
Kalle äger hela A och halva D
Ulla äger halva D
ITO 07-06-13 Bild 6-19
Kopplingstabell - Ytterligare ett exempel
Företag
Person
Pnr
Namn
1
2
3
4
Kalle
Pelle
Stina
Lisa
Fnr
Namn
A
B
C
D
ABB
HM
Univ.
Ericsson
Anställning
Person
Pnr
Fnr
Lön
Pnr
Namn
1
2
3
4
Kalle
Pelle
Stina
Lisa
1
2
1
3
A
A
B
C
10.000
20.000
30.000
15.000
Företag
Namn
Adress
A
B
C
D
ABB
HM
Univ.
Ericsson
LÖN ????
ITO 07-06-13 Bild 6-20
Increased Flexibility
•
A well-designed database should:
– Handle changes quickly and easily
– Provide users with different views
– Have only one physical view
• Physical view – deals with the physical storage of information on a
storage device
– Have multiple logical views
• Logical view – focuses on how users logically access information
ITO 07-06-13 Bild 6-21
Increased Scalability and Performance
•
A database must scale to meet increased demand, while maintaining
acceptable performance levels
– Scalability – refers to how well a system can adapt to increased
demands
– Performance – measures how quickly a system performs a certain
process or transaction
ITO 07-06-13 Bild 6-22
Reduced Redundancy
•
Databases reduce information redundancy
– Redundancy – the duplication of information or storing the same
information in multiple places
•
Inconsistency is one of the primary problems with redundant information
ITO 07-06-13 Bild 6-23
Increased Security
•
Information is an organizational asset and must be protected
•
Databases offer several security features including:
– Password – provides authentication of the user
– Access level – determines who has access to the different types of
information
– Access control – determines types of user access, such as read-only
access
ITO 07-06-13 Bild 6-24
Potential relational
database for CocaCola
Primary Key
Foreign Key
ITO 07-06-13 Bild 6-25
Operationer mot ett register
Ad Hoc eller fördefinierade frågor
LÄSA EN ELLER
FLER POSTER
Pull
SELEKTERA
FÖRSÄKRINGAR
FÖRSNR 7
ALLA
FÖRSÄKRINGAR
Hastighetsmätare
ALLA ARTIKLAR SOM
BÖRJAR PÅ S
1 SKRUV
5 SKIVA
NY KUND
TA BORT KUND
ADRESSÄNDRING
MATCHA
Push
Motor
UPPDATERA/
AKTUALISERA
SORTERA
NR ART
NR ART
1
SKRUV
4 BRÄDA
2
MUTTER
2 MUTTER
3
VINKEL
5 SKIVA
4
BRÄDA
1 SKRUV
5
SKIVA
3 VINKEL
PERS.REG
F-KASSA
PERS.REG
BOSTADSBIDRAG
JFR INKOMST
UPPGIFTER
ITO 07-06-13 Bild 6-26
Database management systems
•
Database management systems (DBMS) – software through which users and
application programs interact with a database
ITO 07-06-13 Bild 6-27
Database management systems
•
Four components of a DBMS
ITO 07-06-13 Bild 6-28
Data Definition Component
•
Data dictionary essentially defines the logical properties of the information that
the database contains
ITO 07-06-13 Bild 6-29
Data Manipulation Component
•
Data manipulation component – allows users to create, read, update, and
delete information in a database
•
A DBMS contains several data manipulation tools:
– View – allows users to see, change, sort, and query the database content
– Report generator – users can define report formats
– Query-by-example (QBE) – users can graphically design the answers to
specific questions
– Structured query language (SQL) – query language
ITO 07-06-13 Bild 6-30
Data Manipulation Component
•
Sample report using Microsoft Access Report Generator
ITO 07-06-13 Bild 6-31
Data Manipulation Component
•
Sample report using Access Query-By-Example (QBE) tool
ITO 07-06-13 Bild 6-32
Data Manipulation Component
•
Results from the query in Figure 6.10
ITO 07-06-13 Bild 6-33
SQL
Structured Query Language
Kommandon i program som används för data- åtkomst & manipulation
Lägga in ny data
INSERT person
Ändra data
UPDATE adress
Radera data
DELETE person
Hämta data
SELECT alla personer som är födda i
Vingåker
och som varit stadsministrar
mfl
ITO 07-06-13 Bild 6-34
SQL-exempel
INSERT INTO Medlem
(medlemsnr, fnamn, enamn,
gadr, lön)
VALUES (10004, ’Anna’,
’Andersson’, ’Kungsgatan 3’,
’40.000’);
SELECT fnamn, enamn
FROM Medlem
WHERE lön > 1.000.000 ;
DELETE Medlem
WHERE medlemsnr = 10005;
UPDATE Medlem
SET gadr = ’Byggvägen 3’
WHERE medlemsnr =
10004;
ITO 07-06-13 Bild 6-35
SQL – lite mer avancerat
KUND-TABELL
KundNr
KundNamn
KundKategori
ORDER-TABELL
OrderNr
KundNr
OrderBelopp
SELECT KUNDNAMN, ORDERNR FROM KUND-TABELL, ORDER-TABELL
WHERE
ORDERBELOPP > 10.000 AND KUNDKATEGORI = 7 OR 11
<--- villkor
AND KUND-TABELL.KundNr = ORDER-TABELL.KundNr
<--- join
SORT BY KUNDNAMN
Resulterar i
KundNamnn
Abelén
Adolfsson
Bengtsson
………..
OrderNr
4711
193
10.023
ITO 07-06-13 Bild 6-36
Application Generation and Data Administration
Components
•
Application generation component – includes tools for creating visually
appealing and easy-to-use applications
•
Data administration component – provides tools for managing the overall
database environment by providing faculties for backup, recovery, security,
and performance
•
IT specialists primarily use these components
ITO 07-06-13 Bild 6-37
Integrating data among multiple databases
•
Integration – allows separate systems to communicate directly with each
other
– Forward integration – takes information entered into a given system
and sends it automatically to all downstream systems and processes
– Backward integration – takes information entered into a given system
and sends it automatically to all upstream systems and processes
ITO 07-06-13 Bild 6-38
Integrating data
among multiple databases
•
Forward and backward integration
ITO 07-06-13 Bild 6-39
Integrating data
among multiple databases
•
Building a central repository specifically for integrated information
ITO 07-06-13 Bild 6-40
Att integrera system
Företag A
Regler
System B1
System A1
Logg
System A2
System B2
System A3
System B3
Systeminegrator
Företag B
Format
Tidpunkter
Regler/Kontroller
Historik
Backup
m.m.
System C1
Företag C
System C2
Istället för att
bygga om de olika
systemen
ITO 07-06-13 Bild 6-41
Övning i datamodellering
FAKTURA BILVERKSTADEN AB
uppdrag-nr 1
kund-nr
2
adress
O-gatan
namn Olle
faktnr 2453
regnr ABC123
datum 95-01-10
Arbeten (Fördefinierade)
Nr
A1
Namn
Byta avgasrör
Antal
Á-pris
1.000 kr 1 st
Summa
1.ooo kr
Material (Fördefinierade)
Nr
M1
M2
M3
M4
Namn
Avgasrör
Fäste
Skruv
Mutter
Á-pris
500 kr
10 kr
1 kr
2 kr
Antal
1 st
2 st
4 st
4 st
Summa
500 kr
20 kr
4 kr
8 kr
summa
532 kr
moms
133 kr
att betala 1.665 kr
Gör en datamodell för denna verksamhet
ITO 07-06-13 Bild 6-42
Lösning
KUND
KNR**
NAMN
ADRESS
1
ARBETEN I UPPDRAG
UNR*
ANR*
ANTAL
M
1
ARBETEN
ANR**
NAMN
À-PRIS
M
1
M
UPPDRAG
UNR**
KNR*
DATUM
REGNR
FAKTNR
MATERIAL
MNR**
NAMN
À-PRIS
1
1
M
M
MATERIAL I UPPDRAG
UNR*
MNR*
ANTAL
ITO 07-06-13 Bild 6-43
Lösning, forts
KUND
KNR
1
2
3
4
5
NAMN
KALLE
OLLE
ULLA
SIV
INGVAR
ADRESS
K-GATAN
O-GATAM
U-GATAN
S-GATAN
I-GATAN
UPPDRAG
UNR
001
002
KNR
2
4
DATUM
950110
950111
ARBETEN
ANR
A1
A2
A3
A4
NAMN
BYTA AVGASRÖR
BYTA TÄNDSTIFT
SERVICE
MOTORTVÄTT
REGNR
ABC123
XYZ789
FAKTNR
2453
2454
Á-PRIS
1.000
200
1.500
600
ITO 07-06-13 Bild 6-44
Lösning, forts
MATER
MNR
M1
M2
M3
M4
M5
M6
NAMN
AVGASRÖR
FÄSTE
SKRUV
MUTTER
TÄNDSTIFT
TVÄTTMEDEL
ARBETEN
I UPPDR.
UNR
001
002
ANR
A1
A4
ANTAL
1
1
MATR
I UPPDR
UNR
001
001
001
001
002
MNR
M1
M2
M3
M4
M6
ANTAL
1
2
4
4
1
Á-PRISD
500
10
1
2
10
100
ITO 07-06-13 Bild 6-45
6.2. DATA WAREHOUSE FUNDAMENTALS
•
Data warehouses extend the transformation of data into information
•
In the 1990’s executives became less concerned with the day-to-day
business operations and more concerned with overall business functions
•
The data warehouse provided the ability to support decision making without
disrupting the day-to-day operations
ITO 07-06-13 Bild 6-46
Data warehouse fundamentals
•
Data warehouse – a logical collection of information – gathered from many
different operational databases – that supports business analysis activities
and decision-making tasks
•
The primary purpose of a data warehouse is to aggregate information
throughout an organization into a single repository for decision-making
purposes
ITO 07-06-13 Bild 6-47
Data Warehouse
ITO 07-06-13 Bild 6-48
Data warehouse fundamentals
•
Extraction, transformation, and loading (ETL) – a process that extracts
information from internal and external databases, transforms the
information using a common set of enterprise definitions, and loads the
information into a data warehouse
•
Data mart – contains a subset of data warehouse information
ITO 07-06-13 Bild 6-49
Data warehouse fundamentals
ITO 07-06-13 Bild 6-50
Multidimensional Analysis
•
Cube – common term for the representation of multidimensional information
ITO 07-06-13 Bild 6-51
Information Cleansing or Scrubbing
ITO 07-06-13 Bild 6-52
Multidimensional Analysis
•
Data mining – the process of analyzing data to extract information not
offered by the raw data alone
•
To perform data mining users need data-mining tools
– Data-mining tool – uses a variety of techniques to find patterns and
relationships in large volumes of information and infers rules that
predict future behavior and guide decision making
ITO 07-06-13 Bild 6-53
Business intelligence
•
Business intelligence – information that people use to support their
decision-making efforts
•
Principle BI enablers include:
– Technology
– People
– Culture
ITO 07-06-13 Bild 6-54
Data mining
•
Common forms of data-mining analysis capabilities include:
–
Cluster analysis
–
Association detection
–
Statistical analysis
ITO 07-06-13 Bild 6-55
Cluster Analysis
•
Cluster analysis – a technique used to divide an information set into
mutually exclusive groups such that the members of each group are as
close together as possible to one another and the different groups are as
far apart as possible
•
CRM systems depend on cluster analysis to segment customer
information and identify behavioral traits
ITO 07-06-13 Bild 6-56
Association Detection
•
Association detection – reveals the degree to which variables are
related and the nature and frequency of these relationships in the
information
–
Market basket analysis – analyzes such items as Web sites and
checkout scanner information to detect customers’ buying behavior
and predict future behavior by identifying affinities among customers’
choices of products and services
ITO 07-06-13 Bild 6-57
Statistical Analysis
•
Statistical analysis – performs such functions as information
correlations, distributions, calculations, and variance analysis
–
Forecast – predictions made on the basis of time-series information
–
Time-series information – time-stamped information collected at a
particular frequency
ITO 07-06-13 Bild 6-58