Leksioni-1Hyrje në bazat e të dhënave

Preview:

DESCRIPTION

Hyrje në bazat e të dhënave

Citation preview

Hyrje në bazat e të dhënave

Leksioni 1

Kaltrina Nuredini, MSc

Universiteti Shtetëror i Tetovës

1

Informata për lëndën Mësimdhënësja: Kaltrina Nuredini

Kontakti: knuredini.usht@gmail.com

Informata në: www.haliti.info

Konsultimet: E hënë: 12:00-13:00

Literatura: • Ramakrishnan.R, Gehrke.J: Database Management Systems,

TheMcGraw-Hill, third edition (2003) • Slajdet

2

Notimi

10% pjesëmarrja

15% detyrat

30% kolokiumi parë

30% kolokiumi dytë

15% projekti final (dy studentë për grup)

Plagjiatura/kopjimi

Detyrat dhe projekti i dërguar duhet të jetë puna juaj individuale dhe jo i dikujt tjetër.

Nuk lejohet bashkëpunimi në detyra dhe kolokiume. Ato të cilët kanë plagjiaturë nuk e kalojnë lëndën.

3

Baza e të dhënave gjithandej»

4

You can have data without information, but you cannot have information without data!

Web users ultimately want to get at data quickly and easily. They don’t care as

much about attractive sites and pretty design.

5

Tim Berners-Lee

Pse studiojmë bazat e të dhënave?

• Shumica e aplikacioneve merren me sasi të

mëdha informatash. (Mendoni një softuer për spitalet)

• Sistemet e bazave të të dhënave me anë të mjeteve për ruajtje, kërkim, modifikim, mbrojtje u mundëson të dhënave një menaxhim të mirëfilltë.

• Një sistem i bazës së të dhënave përbëhet nga:

- Të dhënat (baza)

- Softueri

- Hardueri

- Përdoruesit

6

?

Baza e të dhënave?

• Një bazë të dhënash paraqet një koleksion të organizuar të të dhënave të lidhura ndërmjet veti në tabela për të përshkruar aktivitetet e një organizate të caktuar.

• Një bazë të dhënash duhet të përmbaj informatat si në vazhdim:

- Entitetet ( studentët, fakultetet, laboratorët etj.)

- Lidhjet (studentët regjistrojnë lëndët, lëndët mbahen në laboratorët)

7

Një bazë tipike (Media-wiki)

8

Sistemi për menaxhimin e bazës së të dhënave

DBMS

• Është një softuer i dizajnuar për të mundësuar krijimin, mirëmbajtjen dhe shfrytëzimin e një baze të dhënash.

• Softuerë të këtillë:

-

-

-

-

9

Pse DBMS? • Pavarësia e të dhënave dhe qasja efikase (Nëse futen të

dhëna të reja, nuk do të kërkoj ndërrimin e aplikacioneve ekzistuese). Operacionet me të dhënat duhet të kryhen shpejtë.

• Integriteti dhe siguria e të dhënave ( Me integritetin ruhet ko-ekzistenca dhe rregullsia e të dhënave. Ndërsa siguria mundëson sigurimin e të dhënave (rikthimin) nga zhdukja e bazës nga ndikime të ndryshme si ato harduerike edhe ato softuerike).

• Qasje e njëkohshme (mundëson qasje të njëkohshme, psh. Shumë përdorues mund t’i qasen bazës njëkohësisht).

• Mbrojtja nga përdoruesit e pa autorizuar ( përdorues të ndryshëm të kenë qasje të ndryshme tek të dhënat).

10

SHEMBULL

11

Koleksion i listave

Jo në letër por në kompjuter p.sh. Në SQL server

Modelet e të dhënave

• Modeli i të dhënave (data model) është një koleksion i koncepteve për të përshkruar të dhënat.

- Modeli relacional

- Modeli i rrjetit

- Modeli hierarkik

12

Modeli Relacional

• Është një ndër modelet më të përdorura në bazat e të dhënave dhe që bazohet në teorinë matematikore të relacioneve. Ky model ndërtohet me anë të relacionit (relation) i cili paraqet një bashkësi të rekordeve – rreshtave (records).

• Modeli semantic - mundëson përshkrimin logjik të të dhënave, modeli i këtillë njihet si Entity Relationship Model (E-R modeli).

• Një skemë (schema) paraqet përshkrimin e një koleksioni të dhënash duke përdorur modelin e të dhënave. Në modelin relacional, skema për një relacion paraqet emrin e relacionit, emrat e fushave (kolonat) dhe tipet e fushave.

13

Skema relacionale për studentin

14

ID Emri Mbiemri Mosha Nota

53767 John Smith 19 8

53879 Robert Pierce 18 9

53812 Ane Fernandes 19 8

53453 Kenny Riberio 20 7

Instanca për relacionin studenti / (Instance)

Nivelet e abstraksionit në DBMS

1. Niveli konceptual, 2. Niveli fizik dhe 3. Niveli i jashtëm

• Niveli konceptual (conceptual schema): Në DBMS relacionale, kjo

skemë definon paraqitjen logjike që i përshkruan të gjitha relacionet që ruhen në bazën e të dhënave. Administratori i bazës.

• Niveli fizik (physical schema): përmbledh se si relacionet e përshkruara në skemën konceptuale ruhen në memorie sekondare. Programerët sistemor (DBMS).

• Niveli i jashtëm (external schema): është mënyra me të cilën e sheh shfrytëzuesi ose programi aplikativ.

• Nën-skemat (views-shiqimet) përshkruajnë se si përdoruesit i shikojnë të dhënat.

15

16

Baza e të dhënave

Skema fizike

Skema konceptuale

View 1 View 2 View 3 View 4

Gjuhët në bazën e të dhënave • DDL (Data Definition Language): është gjuhë e përdorur nga sistemi për

menaxhim të bazës së të dhënave që u lejon përdoruesve të definojnë bazën, relacionet dhe lidhjet në mes tyre.

Komandat e DDL (shembull):

CREATE TABLE, CREATE INDEX, ALTER, and DROP.

• DML (Data Manipulation Language): është gjuhë që mundëson lidhjen në mes programeve aplikative dhe bazës. Në këtë rast kryhen ruajtja, ndryshimi, fshirja dhe leximi i rekordeve.

Komandat e DML (shembull):

SELECT...FROM...WHERE

INSERT INTO...VALUES...

UPDATE...SET...WHERE

• SQL (Structured Query Language) – gjuhë që shërben për realizimin pyetësorëve (queries) nga ana e shfrytëzuesve. 17

Shembull: baza e të dhënave për Universitetin

• Skema Konceptuale

ë

ë ë

• Skema fizike

Relacionet e ruajtura në fajlla jo të renditura

Indeksim në kolonën e parë te Studentët

• Skema e jashtme

Info_Lënda(L_id:string, regjistrimi:integer) 18

Pavarësia e të dhënave

• Programet aplikative janë të izoluar nga ndryshimet për të dhënat e strukturuara dhe të ruajtura. Pavarësia e të dhënave arrihet nëpërmjet të përdorimit të tre niveleve të abstraksionit.

• Pavarësia e të dhënave logjike: mbrojtja nga ndryshimet me të dhëna të strukturës logjike.

• Pavarësia e të dhënave fizike: Mbrojtja nga ndryshimet me të dhëna të strukturës fizike.

• Shfrytëzuesit (end-user)

• Programuesit e programeve të bazave të të dhënave

• Administratori i bazës së të dhënave

19

Menaxhimi transaksioneve

• DBMS-të lejojnë qasje të menjëhershme tek të dhënat e njëjta. Kjo lloj qasjeje mund të thirret edhe si qasje paralele ndërmjet përdoruesve të cilët kanë bindjen se janë shfrytëzues të vetëm në atë sistem. Qasja paralele mund të kryhet me anë të transaksioneve.

• Transaksioni paraqet një veprim apo një ekzekutim nga programi i përdoruesit në DBMS. Transaksioni mund të jetë psh. Regjistrimi i një të dhëne.

• Transaksioni që fillohet duhet patjetër të përfundohet. Nëse transaksioni mbetet i pa përfunduar për arsye të ndryshme atëherë ai duhet patjetër të neutralizohet.

20

Ensuring Atomicity

• DBMS ensures atomicity (all-or-nothing property) even if system crashes in the middle of a Xact.

• Idea: Keep a log (history) of all actions carried out by the DBMS while executing a set of Xacts:

• Before a change is made to the database, the corresponding log entry is forced to a safe location. (WAL protocol; OS support for this is often inadequate.)

• After a crash, the effects of partially executed transactions are undone using the log. (Thanks to WAL, if log entry wasn’t saved before the crash, corresponding change was not applied to database!)

21

Karakteristikat e ACID

• Një transaksion është koleksion i veprimeve nën ndjekje të karakteristikave ACID:

• Atomicity: Baza e të dhënave ndjek rregullën: gjitha apo asnjë: DB i konsideron të gjitha operacionet e transaksionit si një njësi të tërë (ose atom). Kur DB proceson një transaksion, transaksioni i tillë ose përfundohet plotësisht ose nuk ekzekutohet aspak.

• Consistency: Siguron që vetëm të dhënat e vlefshme shkruhen në bazën e të dhënave. Kur një transaksion rezulton në të dhëna të pavlefshme , baza e të dhënave kthehet në gjendje të mëparshme.

22

Karakteristikat e ACID

• Isolation: vërteton që transaksionet janë të sigurta dhe të procesuara në mënyrë të pavarur në të njëjtën kohë pa ndonjë ndërhyrje, por nuk siguron rendin e transaksioneve.

• Durability: Pasi transaksioni përfundon me sukses ai nuk do të humbet kurrë nga baza e të dhënave.

23

Përmbledhje

• DBMS përdoret për të ruajtur dhe pyetur një sasi të madhe të dhënash.

• Përparësitë e përdorimit të DBMS: rikthimi i të dhënave nga rrëzimi i sistemit, qasje e njëkohshme, ruajtja e integritetit të të dhënave dhe sigurimi i tyre.

• Administratorët e DB (DBA) mbajnë një punë të përgjegjshme por paguhen mirë.

24

Detyra!

• Fq. 23-24

Exercises 1.1.

Exercises 1.2.

Exercises 1.3

Exercises 1.4

Exercises 1.5

25

Recommended