650 likes | 1.27k Views
Baza te dhenave. Literatura themelore: Database Processing: Fundamentals, Design, and Implementation Autori: David M. Kroenke Mesimdhenesi: Fisnik Dalipi, MSc fisnik.dalipi@unite.edu.mk. P ërmbajtja. 1. Hyrje 2. Hyrje ne SQL 3. Modeli relacional dhe Normalizimi
E N D
Baza te dhenave • Literatura themelore: • Database Processing: • Fundamentals, Design, and Implementation • Autori: David M. Kroenke • Mesimdhenesi: • Fisnik Dalipi, MSc • fisnik.dalipi@unite.edu.mk
Përmbajtja 1. Hyrje 2. Hyrje ne SQL 3. Modeli relacional dhe Normalizimi 4. Dizajni i bazave me anë të Normalizimit 5. Modelimi i të dhënave me ER-diagrame 6. Transformimi i modeleve të të dhënave në dizajn të bazës 7. SQL për ndërtimin e databazës dhe për procesimin e aplikacioneve 8.Strukturat e të dhënave për procesimin e databazës 9. Menaxhimi i databazës me shumë përdorues 10. XML dhe ADO.NET 11. Procesimi i databazave në sistemet e Biznes Inteligjencës
Kapitulli 1 - Objektivat • Të kuptohet natyra dhe karkteristikat e databazës • Të shqyrtohen disa aplikacione interesante për procesimin e databazave • Të arrihet në një kuptueshmëri të plotë për tabelat dhe relacionet • Të përshkruhen komponentat e sistemit të databazave dhe të sqarohet funksioni i tyre (psh. Microsoft Access) • Të përshkruhen komponentat e sistemit të databazave të klasit enterprise dhe të sqarohen funksionet e tyre • Të definohet termi sistemi për menaxhimin e databazave(DBMS)si dhe të sqarohen funksionet e DBMS
Karakteristikat e Databazës • Të dhënat ruhen në tabela, të cilat kanë rreshta dhe kolona. Databaza mund të ketë shumë tabela, ku çdo tabelë ruan të dhëna për gjëra të ndryshme • Çdo rresht në tabelë përmban të dhëna për ndodhi ose instancatë gjërave në interes • Databaza përmban të dhëna dhe relacione
Disa konventa • Emrat e Tabelavejanë të shënuara me shkronja të mëdha: • STUDENT, CLASS, GRADE • Emrat e kolonavejanë të shënuara me një shkrronjë të madhe në fillim, dhe emrat e përbëra shënohen me shkronja të mësha në fillim të çdo fjale: • Term, Section, ClassNumber, StudentName
Databaza krijon informacion • Të dhëna = Fakte dhe ndodhi të regjistruara/verifikuara • Informacioni = Njohuri të nxjerra nga të dhënat • Databaza përmban të dhëna, por në atë mënyrë që mund të nxjerrim informata nga të dhënat • Të dhënat në tabelat STUDENT, CLASS and GRADE mund të prodhojnë informacione për secilin student
Aplikacionet, DBMS dhe SQL • Aplikacionetjanë programe kompjuterike me anë të cilave punojnë përdoruesit • Sistemi për Menaxhim të Databazës -Database Management System (DBMS)krijon, proceson dhe administron databazën • Structured Query Language (SQL)është një gjuhë standarde e databazave që përdoret nga të gjitha DMBS-et komerciale
Çfarë është MS Access? • MS Access është DBMS plus gjenerues aplikacionesh: • DBMS krijon, proceson dhe administron MS Access databazën • Gjeneruesi i aplikacionit përfshin komponentat pyetësore, të formave dhe raporteve • DBMS makina e MS Access DBMS quhet Jet, e cila nuk shitet si produkt i veçantë • MS Access 2000 dhe më vonë mund të përdoren si gjenerues aplikacionesh për MS SQL Server DBMS
DBMS Produkte më të njohura • Microsoft Access • Microsoft SQL Server • IBM DB2 • Oracle Corporation ORACLE • Sybase • Informix • Ingress • Dhe mos e anashkaloniMySQL
Databaza • Databaza është koleksion vetë-përshkrues me tabela të integruara • Tabelat quhet të integruara sepse ato përmbajnë të dhëna për relacionet ndërmjet rreshtave me të dhëna • Databaza quhet vetë-përshkruesepasiqë përmban përshkrim të vetvehtes • Të dhënat vetë-përshkruese quhenmetadata, që janë të dhëna për të dhënat
Përmbajtja e Databazës • Tabela • Metadata • Indekse • Stored procedures • Triggers • Të dhëna sigurie • Të dhëna për Backup
Tre tipe të dizajnit të Databazës • 1. Nga të dhënat ekzistuese • Analizimi i tabelave dhe tekst fajlleve të ndryshme • Nxjerrja e të dhënave nga databaza ekzistuese • Dizajni me anë të normalizimit 2. Zhvillimi i ri i Sistemeve - Krijohet modeli i të dhënave për nevojat e aplikacionit - Transformimi i modelit të të dhënave në dizajn të databazës 3. Ridizajnimi i Databazës - Migrimi i databazës në databazë të re - Integrimi i dy apo më shumë databazave
Importimi i të dhënave: Një apo dy Tabela? Kjo është një vendim-marrje e rëndësishme, bazohet në rregullat e normalizimit
Dizajnimi i Databazës me anë të ridizajnimit të databazës ekzistuese
Modeli Relacional i databazave • Modeli dominant i databazave është modeli relaciona (relational database model) – të gjitha DBMS produktet më të mëdha bazohen në të • I krijuar nga inxhinieri i IBM E. F. Coddnë 1970 • I bazuar në algjebrën relacionale • Në këtë kurs do të shqyrtojmë kryesisht modelin relacional të databazave
Mjedisi i Databazës Kapitulli 2
Pavarësia e të dhënave Shpeshherë mënyra e organizimit fizik të të dhënave varet nga nevojat e aplikacionit. Rezultati: • Nuk është e mundur të ndryshohet struktura e bazës pa patur ndikim në aplikacion Pavarësia e të dhënave nevojitet sepse: • Aplikacione të ndryshme kërkojnë qasje të ndryshme për të dhënat e njëjta • Administruesi i bazës duhet të ketë liri për të ndryshuar strukturën e bazës, organizimin e fajllave dhe strategjinë e qasjes
Definimi i pavarësisë së të dhënave Pavarësia e të dhënave është pavarësia e të dhënave dhe aplikacioneve. • Strukturat e të dhënave mund të modifikohen pa e ndryshuar aplikacionin • Aplikacionet mund të modifikohen duke mos i ndikuar aplikacionet e tjera Mundësia për ta arritur këtë: • Arkitektura me tre nivele e bazës
Arkitektura me tre nivele • Niveli konceptual: Reflekton këndvështrimin e komunitetit • Niveli i jashtëm: Reflekton këndvështrimin e përdoruesit • Niveli i brendshëm: Në afërsi të ruajtësve (ang. storage) fizikë Është një kornizë që përshkruan koncpte tp përgjithshme-jo të gjithë sistemet e bazave e kanë këtë arkitekturë
ANSI-SPARC arkitektura me tre nivele Arsyet për këtë arkitekturë • Përdoruesi duhet të ketë qasje në të dhënat e njëjta, por ka këndvështrim(view) të personalizuar për të dhënat • Përdoruesit nuk duhet të kenë lidhje direkte me detajet e databazës fizike • DBA (database administrator) duhet të jetë në gjendje të ndryshojë strukturën e bazës pa e ndikuar këndvështirmin e përdoruesit • DBA duhet të jetë në gjendje ta ndryshojë strukturën konceptuale apo gjenerale të bazës duke mos i ndikuar të gjithë përdoruesit
Niveli i jashtëm Ky nivel përshkruan atë pjesë të databazës që është relevante për një pjesë të veçantë të përdoruesve ose grupi të përdoruesve • Mund të përbëhet nga këndvështrime të ndryshme të jashtme • Një pjesë e databazës mund të fshihet për persona të caktuar – paraqitje e ndryshme e të dhënave të njëjta • Mund të përfshijë të dhëna të derivuara ose të përllogaritura, që nuk ruhen në databazë
Niveli konceptual Këndvështrimi i komunitetit për databazën.Ky nivel përshkruan çfarë të dhënash janë ruajtur në databazë dhe relacionet në mes të dhënave. • Struktura logjike e tërë databazës si e shikuar nga ana e DBA, që nuk i merrë parasysh konsiderimet fizik të ruajtësve • Të gjitha entitetet, atributet dhe relacionet • Kufizimet e të dhënave • Informata semantike për të dhënat • Informacione për siguri dhe integritet • I mbështet të gjithë këndvështrimet e jashtme
Niveli i brendshëm Përfaqësimi fizik i databazës në kompjuter. Ky nivel përshkruan se si janë organizuar dhe ruajtur të dhënat në databazë. • Për të arritur performancë optimale të ekzekutimi dhe përdorim racional të hapësirës • Strukturat e të dhënave dhe pajisjet për ruajtje • Organizimi i fajlleve, indekset • Aspekte gjenerale • Alocimi i hapësirës për ruajtje për të dhënat dhe indekset • përshkrim i shënimeve për ruajtësit • Kompresimi i të dhënave dhe teknikat enkriptuese të të dhënave
Pavarësia e të dhënave • Pavarësia logjike e të dhënave. • I referohet imunitetit të skemave të jashtme për ndryshime në skemën konceptuale • Ndryshimet e skemës konceptuale p.sh. shtimi/fshierja e entiteteve. • Nuk duhet të kërkojë ndryshime në skemat e jashtme gjatë intervenimit në kodin e aplikacioneve
Pavarësia e të dhënave • Pavarësia fizike e ë dhënave • I referohet imunitetit të skemës konceptuale për ndryshime në skemën e brendshme. • Ndryshimet në skemën e brendshme p.sh. Përdorimi i organizimit të ndryshëm të fajllave, struktura e pajisjeve ruajtës. • Nuk duhet të kërkojë ndryshime në skemat konceptuale apo të jashtme.
Pavarësia e të dhënave dhe ANSI-SPARC Three-level arkitektura
Gjuhët e databazave • Gjuha për definimin e të dhënave - Data Definition Language (DDL) • I mundëson DBA ose përdoruesit të përshkruaj dhe emërojë entietete, atribute dhe relacione të nevojshme për aplikacionin.
Gjuhët e databazave • Gjuha për Manipulimin e të dhënave- Data Manipulation Language (DML) • Ofrom operacione për manipulim bazik të të dhënave në databazë. • DML procedurale- iu mundëson përdoruesve saktësisht se si ti manipulojnë të dhënat. • DML jo procedurale- iu mundëson përdoruesve në çfarë gjendje nevojiten të dhënat dhe jo në çmënyrë duhet të nxirren nga baza.
Gjuhët e databazave • Gjuhët e gjeneratës së katërt- Fourth Generation Language (4GL) • Gjuhët e pyetësorëve • Gjeneruesit e formave • Gjeneruesit e raporteve • Gjeneruesit e grafikës • Gjeneruesit e aplikacioneve
Modeli i të dhënave • Koleksion i koncepteve për përshkrimin e të dhënave, relacionet ndërmjet të dhënave dhe kufizimet të dhënave në një organizim. • Modeli i të dhënave përbëhet nga: • Pjesa strukturale. • Pjesa manipuluese. • Një bashkësi me rregulla të integruara.
Modelimi konceptual • Procesi i zhvillimit të modelit konceptual me të dhëna që është • Përfaqësim i plotë dh i saktë i të dhënave të nevojshme në organizim. • I pavarur nga detajet e implementimit.
Funksionet e DBMS • Ruajtja, nxjerrja dhe përditësimi i të dhënave. • Duhet tju mundësoj përdoruesve të ruajnë nxjerrin dhe ti përditësojnë/ndryshojnë të dhënat në databazë. • Katalog për qasje nga përdoruesi. • Duhet të mundësoj katalogimin e të dhënave ku përshkrimet e elementëve të të dhënave do të ruhen dhe që janë të qasshme nga ana e përdoruesit.
Funksionet e DBMS • Mbështetje e transakcioneve • Duhet të shërbejë si mekanizëm që ose të gjitha përditësimet që korespondojnë me një transakcion të dhënë janë kryer ose asnjë prej tyre nuk është kryer. • Shërbime për kontrollin e konkurencës • Duhet të shërbejë si mekanizëm që mundëson që databaza është përditësuar korrektësisht atëherë kur përdorues të shumëfishtë e përditësojnë databazën në mënyrë konkurente.
Funksionet e DBMS • Shërbimet e rigjenerimit (recovery services) • Duhet të shërbejë si mekanizëm për rigjenerimin e databazës në raste kur dëmtohet databaza në mënyra të shumta. • Shërbimet e autorizimit • Duhet të shërbejë si mekanizëm që do të sigurojë se vetëm persona të autorizuar mund ti qasen databazës.
Funksionet e DBMS • Mbështetje për komunikimin e të dhënave • Duhet ë jetë në gjendje të integrohet me softverët për komunikim. • Shërbimet e integritetit • Duhet të shërbejë si mekanizëm që do të mundësojë se edhe të dhënat e databazës edhe ndryshimet ndaj të dhënave të pasojnë rregulla të caktuara.