You are on page 1of 31

Kapitulli 2

Koncepte dhe Arkitektura e


Database System

2.1
2.
1

Modelet e te Dhenave
Data Model: Nje bashkesi konceptesh per te
pershkruar strukturen e nje database si dhe disa
kushte qe database duhet ti bindet.
Data Model Operations: Operacionet per
specifikimin e retrievals dhe updates te database
duke ju referuar koncepteve te data model.
Operacionet ne lidhje me data model perfshijne
operacionet baze (basic operations) si dhe
operacionet e perdoruesit (user-defined operations).
2.2
2.
2

Kategorite e data models

Modeli Konceptual i te dhenave (high-level,


semantic): Ofron koncepte qe jane afer me
menyren se si users perceptojne te dhenat. (Quhet
gjithashtu entity-based ose object-based data
models.)
Modeli Fizik i te dhenave (low-level, internal):
Ofron koncepte qe pershkruajne detajet si te dhenat
ruhen ne komputjer.
Modeli i Implemenimit te dhenave
(representational): Ofrojne koncepte qe jane
midis dy koncept. te mesiperme duke balancuar user
views me disa detaje te ruajtjes ne kompjuter.
2.3
2.
3

Historia e Data Models

Relational Model: propozuar ne 1970 nga E.F. Codd


(IBM), sistemi i pare komercial ne 1981-82. Tani disa
produkte komerciale (DB2, ORACLE, SQL Server,
SYBASE, INFORMIX).
Network Model: i pari eshte implementuar nga
Honeywell ne 1964-65 (IDS System). Ndryshime te
medha te bera nga CODASYL (CODASYL DBTG report
of 1971). Me vone implementuar ne nje numer
systemess - IDMS (Cullinet - sot CA), DMS 1100
(Unisys), IMAGE (H.P.), VAX -DBMS (Digital Equipment
Corp.).
Hierarchical Data Model: implementuar nga bashkimi
i IBM dhe North American Rockwell rreth 1965. Resultoi
ne sisteme te familjes se IMS. Modeli me popullor.
Sisteme te tjere te bazuar ne kete model: System 2k
(SAS inc.)
2.4
2.
4

Historia e Data Models

Object-oriented Data Model(s): disa modele


u propozuan per tu implemenuar ne nje
database system. Nje prej tyre konsiston ne O-O
Programming Languages si psh C++ (psh., ne
OBJECTSTORE ose VERSANT), apo Smalltalk
(psh., ne GEMSTONE). Pervec tyre, systeme si
O2, ORION (ne MCC pastaj ITASCA), IRIS (ne
H.P.- perdorur ne Open OODB).
Object-Relational Models: Model i
meparshem. Starton me Informix Universal
Server. Versione me te fundit Oracle-10i, DB2,
dhe SQL Server etj.
2.5
2.
5

Modeli Hierarkik

AVANTAZHET:
Model Hierarkik eshte i thjeshte ne ndertim dhe ne
operim
Korrespondon me nje numer rastesh organizimesh ne
menyre hierarkike - psh, organizimi i personelit ne
nje kompani
Gjuha eshte e thjeshte; perdor konstrukte si GET,
GET UNIQUE, GET NEXT, GET NEXT WITHIN
PARENT etj.
DIZAVANTAZHET:
Natyra Navigacionale dhe proceduriale e processing
Database vizualizohet si nje vendosje lineare e
rekordeve
Pak mundesi per "query optimization"
2.6
2.
6

Model Network

AVANTAZHET:
Model Network eshte i afte te modeloje relacione komplexe
dhe paraqet semantike te add/delete ne lidhje me
relacionet.
Krijon mundesi per modelim duke perdorur record types dhe
relationship types.
Gjuha eshte navigacionale; perdor konstrukte si FIND, FIND
member, FIND owner, FIND NEXT ne nje bashkesi, GET etj.
Programistet mund te bejne navigime optimale ne database.

DIZAVANTAZHET:
Natyra navigacionale dhe proceduriale e processing
Database permban nje array komplekse pointersash qe
perdoren midis nje bashkesi rekordesh.
Pak mundesi per "query optimization te automatizuar.
2.7
2.
7

Schemas versus Instances

Database Schema: Pershkrimi i nje database.


Perfshin pershkrimet e struktures se database dhe
kushtezimeve qe duhen vendosur ne database.
Schema Diagram: Nje afishim ne forme
diagrame te nje database schema (disa aspekte te
saj).
Schema Construct: Nje komponente e schema
ose nje objekt brenda schema, psh., STUDENT,
LENDA.
Database Instance: E dhena aktuale e ruajtur
ne nje database ne nje moment te vecante kohe.
Gjithashtu quhet database state (ose
occurrence).
2.8
2.
8

Database Schema Vs. Database


State

Database State: I referohet permbajtjes se nje


database ne nje moment te kohes.
Initial Database State: I referohet database kur
ajo loaded
Valid State: Nje gjendje qe kenaq strukturen dhe
kushtezimet e nje database.

Dallimi
Database schema ndryshon ne menyre mjaft
frekuente. Database state ndryshon cdo here qe
database update-t.
Schema quhet gjithashtu intension, ndersa state
quhet extension.
2.9
2.
9

Arkitekture e Three-Schema

Propozuar per te mbeshtetur karakteristikat


e DBMS:

Pavaresia program-data.

Mbeshtetje per multiple views te te dhenave.

2.10
2.
10

Arkitektura e Three-Schema

Percakton DBMS schemas ne tre nivele:

Skema e brendeshme (Internal schema) ne nivel te


brendshem per te pershkruar strukturen fizike te ruajtjes
si dhe access paths. Zakonisht perdor nje physical data
model.
Skema konceptuale (Conceptual schema) ne nivel
konceptual per te pershkruar strukturen dhe kushtezimet
per te gjithe database per nje komunitet users-ash.
Perdor conceptual ose implementation data model.
Skema e jashtme (External schemas) ne nivel te
jashtem per te pershkruar user views te ndryshme.
Zakonisht perdor te njejtin data model si dhe niveli
konceptual.
2.11
2.
11

Arkitektura e Three-Schema

Mappings ndermjet niveleve te schema


nevojiten per te transformuar kerkesat
dhe data. Programet ju referohen schema
te jashtme, si dhe mapped nga DBMS ne
skemat e brendeshme per egzekutim.

2.12
2.
12

Pavaresia e Data

Pavaresia Logjike e Data: Kapaciteti per


te ndryshuar skemen konceptuale pa qene
nevoja per te ndryshuar schemas e
jashtme dhe programet e tyre aplikative.
Pavaresia Fizike e Data: Kapaciteti per
te ndryshuar schema e brendeshme pa
qene nevoja per te ndryshuar schema
konceptuale.
2.13
2.
13

Pavaresia e Data

Kur nje schema ne nivel te ulet ndryshohet,


vetem mappings ndermjet kesaj schema dhe
schemas te nivelit te larte kane nevoje te
ndryshojne ne nje DBMS qe mbeshtet plotesisht
pavaresine e te dhenave. Nga ana e tyre,
schemas e nivelit te larte jane te
pandryshueshme. Nderkohe, programet
aplikative nuk kane nevoje te ndryshohen meqe
ato ju referohen schemas te jashtme.

2.14
2.
14

Gjuhet e DBMS

Data Definition Language (DDL): Perdoret


ngae DBA dhe dizenjuesit e database per te
specifikuar schema konceptuale te nje database.
Ne shume DBMS, DDL perdoret gjithashtu per te
percaktuar dhe schemas e brendeshme dhe te
jashtme (views). Ne disa DBMS, perdoren vec e
vec storage definition language (SDL) dhe
view definition language (VDL) per te
percaktuar schemas te brendeshme dhe te
jashtme.
2.15
2.
15

Gjuhet DBMS

Data Manipulation Language (DML):


Perdoret per te specifikuar retrievals dhe
updates e database.
Komandat e DML (data sublanguage) mund te
embedded ne nje gjuhe programimi te qellimit
te pergjithshem (host language), si psh gjuha
COBOL, C ose Assembly.
Ne menyre alternative, komandat stand-alone
DML mund te aplikohen direkt (query
language).
2.16
2.
16

Gjuhet DBMS

Gjuhet e Nivelit te Larte ose Joproceduriale: psh., SQL, jane set-oriented


dhe specifikojne cfare data te retrieve
pastaj si te retrieve. Quhen gjithashtu gjuhe
deklarative.
Gjuhet e Nivelit te Ulet ose
Proceduriale: ato specifikojne si te
retrieve data dhe perfshijne konstrukte si
psh looping.
2.17
2.
17

Interfacet e DBMS

Stand-alone query language interfaces.


Programmer interfaces for embedding DML in
programming languages:

Pre-compiler Approach
Procedure (Subroutine) Call Approach

User-friendly interfaces:

Menu-based, popullor per browsing ne web


Forms-based, dizenjuar per nave users
Graphics-based (Point and Click, Drag and Drop etj.)
Natural language: kerkesat te shkruajtura ne English
Kombinim i te gjitha mesiper
2.18
2.
18

Interfaces te tjere DBMS

Speech as Input (?) and Output


Web Browser si nje interface
Interface Parametrike (psh., bank tellers)
perdorin function keys.
Interfacet per DBA:

Krijim accounts, garantim autorizimesh


Vendosja e parametrave te sistemit
Ndryshimi i schemas ose access path
2.19
2.
19

Utilitietet e Database System

Per te kryer disa funksione si psh:

Loading data te ruajtura ne files into a database.


Perfshijne tools konvertimi te te dhenave.
Backing up database ne menyre periodike ne shirita.
Reorganizing strukturen e skedareve ne database.
Utilitete gjenerim Reportesh.
Utilitete per monitorimin e Performances.
Funksione te tjera, si psh sorting, monitorim
perdoruesish, kompresim data, etj.

2.20
2.
20

Tools te tjera

Data dictionary / repository:


Perdoret per te pershkruar schema dhe
informacione te tjera si vendime ne lidhje me
design, pershkrime programesh aplikative,
informacione per user, standarte te perdorimit, etj.
Active data dictionary aksesohet nga software
DBMS si dhe users/DBA.
Passive data dictionary aksesohet vetem nga
users/DBA.
Application Development Environments and
CASE (computer-aided software engineering)
tools:
Shembuj Power builder (Sybase), Builder (Borland)
2.21
2.
21

Architekturat e Centralizuara dhe


Client-Server

DBMS Centralizuara : kombinojne


gjithshka ne nje sistem te vetem duke
perfshire - softwaret DBMS, hardwaret,
programet aplikative si dhe softwaret e
perpunimit te user interface.

2.22
2.
22

Arkitektura Client-Server

Servera te Specializuara me
funksione te Specializuara
Clients
DBMS Server

2.23
2.
23

Servera te Specializuar me
funksione te Specializuara :

File Servers
Printer Servers
Web Servers
E-mail Servers

2.24
2.
24

Clients:

Ofrojne interfacet e duhur dhe nje version te


client per te aksesuar dhe perdorur burimet e
server.
Clients mund te jene makina ose PC pa disqe
ose Workstations me disqe ku jane instaluar
vetem softwaret e client.
Te lidhur me serverat via disa formash me ane
te nje network. (LAN: local area network,
wireless network, etj.)
2.25
2.
25

Serveri i DBMS

Ofrojne query dhe sherbime


tranzaksionesh te database per clients
Disa here quhen query and
transaction servers

2.26
2.
26

Architektura e
Two Tier Client-Server

Programe te User Interface dhe


Programe Aplikative egzekutohen tek
client
Interface te quajtur ODBC (Open
Database Connectivity) ofrojne
Application program interface (API) qe
lejojne programet e client te therrasin
(call) DBMS. Shumica e shitesave te DBMS
ofrojne drivera te ODBC.
2.27
2.
27

Arkitektura e
Three Tier Client-Server

Zakonisht per Web applications


Shtrese Ndermjetese e quajtur Application
Server ose Web Server:

mban software te konektivitetit ne web si dhe rregullat


dhe business logic (constraints) - pjese e aplikimit
qe perdoret per te akseuar sasine e duhur te te
dhenave nga database server
vepron si nje udherrefyes per dergimin e te dhenave te
pjeseshme te perpunuarar ndermjet database server
dhe client.

Vecori shtese- Security:

encripton data ne server perpara transmetimit


decriptondata tek client
2.28
2.
28

Klasifikimi i DBMSs

Bazuar ne data model qe perdoren:

Tradicionale: Relational, Network, Hierarchical.


Emerging: Object-oriented, Object-relational.

Klasifikime te tjera:

Single-user (zakonisht perdoren tek microkompjutera) vs. multi-user (shumica e DBMS).


Te centralizuar (perdor nje kompjuter te vetem
me nje database) vs. te shperndare (perdor
shume kompjutera, shume databases)
2.29
2.
29

Klasifikimi i DBMSs

Sisteme Bazash te Dhenash te


Shperndara (Distributed Database
Systems) tashme kane filluar te njihen si
database systems te bazuar ne client
server, sepse ato nuk suportojne nje
ambjent totalisht te shperndare, por me
shume nje bashkesi database servers qe
mbeshtesin nje bashkesi clients.
2.30
2.
30

Variacione Ambjentesh te
Shperndare:

Homogeneous DDBMS
Heterogeneous DDBMS
Federated ose Multidatabase
Systems

2.31
2.
31

You might also like