Dizajnimi i bazës së të dhënave: hapat dhe bazat

Përmbajtje:

Dizajnimi i bazës së të dhënave: hapat dhe bazat
Dizajnimi i bazës së të dhënave: hapat dhe bazat
Anonim

Dizajni i bazës së të dhënave është një proces vijues i përshtatjes së njohurive dhe mjeteve të disponueshme për të përfaqësuar dhe përpunuar informacionin.

Qëllimi real, detyra specifike, përshkrimi i rrjedhës së informacionit në hyrje dhe idetë e përgjithshme rreth procesit të përpunimit të informacionit shtohen gradualisht në një ide të caktuar konceptuale se çfarë është një bazë të dhënash në një rast të veçantë dhe si për të punuar me të.

Baza e të dhënave moderne

Marrëdhëniet relacionale janë në qendër të çdo modeli informacioni. Zgjidhjet nga Oracle janë ekuivalente me MySQL në thelb, por ato janë thelbësisht të ndryshme në shumë aspekte. Dizajni i bazës së të dhënave është gjithashtu një çështje e sigurisë, vëllimit të informacionit dhe përgjegjësisë për integritetin e të dhënave, por këto janë dytësore për çështjen e dizajnimit të një baze të dhënash efikase, të besueshme dhe miqësore për përdoruesit.

hapat e projektimit të bazës së të dhënave
hapat e projektimit të bazës së të dhënave

Tabelat Excel nuk ndryshojnë nga Oracle dhe MySQL në kontekstin e strukturave drejtkëndore (relacionale): kolonat dhe rreshtat=një qelizë në kryqëzimin e emrit të kolonës (fushës) dhe indeksit të përzgjedhjes (rreshtit). Nëse nuk merrni parasysh masën dhe sasinë e punës manuale, atëherë, falë mjeteve të zhvilluara të kombinimit të qelizave vertikalisht dhe horizontalisht, Excel është përpara edhe Oracle!

Excel, sipas idesë së tij bazë, nuk "shkëlqen" kurrë dinamikën, funksionalitetin e Oracle dhe nuk mund të transferojë diçka nga një fletë në tjetrën "sipas mbetjeve". Këtu Oracle është më premtues, por konsideratat e tij për çështjet e migrimit të sasive të mëdha të informacionit dhe kombinimit të pozicioneve të formalizuara nga burime të ndryshme lënë shumë për të dëshiruar. Këtu MySQL është më premtuese: nuk i vendos vetes detyra globale, por e bën punën e saj në mënyrë perfekte.

Marrëdhëniet relacionale janë mjete të përshtatshme, praktike dhe të vendosura mirë, nga zgjidhjet private të nivelit Excel deri te vëllimet globale të Oracle, përdoren kudo, në kërkesë dhe ato kanë një të ardhme të garantuar nga puna.

Një bazë moderne e të dhënave është tabela, rreshta, kolona dhe indekse të rrethuara nga funksionalitet të plotë, mjete shtesë të zhvilluara që marrin parasysh operacione të shumta, ngarkesa të rënda dhe vëllime të mëdha.

Njohuritë dhe përvoja e sistemeve moderne të menaxhimit të bazës së të dhënave (DBMS) marrin parasysh jo vetëm çështjet e besueshmërisë, besueshmërisë së të dhënave, rregullimit të aksesit dhe çështjeve të sigurisë, por gjithashtu bëjnë të mundur gjurmimin e ndikimeve negative të jashtme, analizimin e sulmeve të mundshmedhe tenton të dëmtojë qëllimisht.

Një bazë moderne e të dhënave është një bazë e besueshme për çdo burim ueb dhe aplikacion lokal, aftësinë për të migruar informacion, për të transformuar dhe transferuar të dhëna, për të kryqëzuar dhe kombinuar pamje të ndryshme.

Kushti i vetëm thelbësor: zhvillues shumë i kualifikuar. Për të kryer dizajn efektiv të bazave të të dhënave relacionale është në dispozicion të një specialisti, dhe më shpesh të një ekipi specialistësh dhe ekspertësh në fushën e aplikimit të problemit që zgjidhet.

Qëllimi, zgjidhja e mundshme dhe pengesat

Informacionet qarkullojnë kudo. Shumë projekte janë të lidhura drejtpërdrejt me internetin, por faktori i përfaqësimit formal të të dhënave këtu nuk është më i mirë se faktori i pasigurisë kur krijoni një burim në internet për një fabrikë çeliku.

Zhvillimi dhe interesi masiv për dyqanet online nuk ofron baza dhe mundësi për të transferuar përvojën e krijimit të një dyqani në krijimin e një tjetri. Faktori i sekretit tregtar krijon shumë pengesa për transferimin e njohurive, megjithëse, në fakt, ju duhet të ndani dyqanin aktual nga mjetet softuerike të krijuara për këtë dyqan.

dizajni relacional i bazës së të dhënave
dizajni relacional i bazës së të dhënave

Sigurisht, klienti ka paguar dhe kodi i faqes është pronë e tij. Një tipar karakteristik i modernitetit: transferimi i njohurive dhe zhvillimeve ndërmjet detyrave të të njëjtit lloj dhe fushave përkatëse të zbatimit është i pamundur dhe ky është një problem.

Parsing është një gamë e gjerë aplikacionesh për sistemet e menaxhimit të bazës së të dhënave. Para së gjithash, është skanimi i informacionit nga Interneti. Është po aq e rëndësishme të krahasohet informacioni i grumbulluar nëbaza e të dhënave dhe kërkesat e vizitorëve të internetit.

Analiza e fjalëve kyç përfshin gjithashtu nevojën për të formuar një zgjidhje optimale, por dizajni i bazës së të dhënave në Access mund të jetë më premtues sesa në MS SQL Server ose Oracle.

Lista e burimeve të informacionit mund të jetë dinamike. Dinamika mund të jetë e natyrshme në tabelat e bazës së të dhënave burimore, emrat e fushave të tabelave dhe rregullat e thirrjes (pyetjes). Dizajnimi i bazave të të dhënave relacionale nga burime të shumta ju detyron qartë të dizajnoni nga të dhënat burimore, dhe jo nga organizimi optimal i informacionit të mbledhur.

Ka dy gjëra që janë të natyrshme në çdo bazë të dhënash:

  • orientimi në përmbajtje, algoritmi dinamik i gjenerimit të bazës së të dhënave në prioritet;
  • orientimi për t'u përdorur, struktura e bazës së të dhënave është më e rëndësishme dhe algoritmi për përdorimin e informacionit bazohet në të.

Në çdo fushë aplikimi ekziston një model formal i rrjedhës së informacionit në hyrje, një model i ruajtjes së informacionit - dizajni aktual i bazës së të dhënave dhe një model (algoritëm) për përdorimin e të dhënave.

Procedura të ndryshme dhe hapa të projektimit

Bazat e dizajnit të bazës së të dhënave zakonisht ndahen në tre faza. Specialistë të ndryshëm i referohen fazave të punës në mënyra të ndryshme, por, në fakt, ekzistojnë tre pozicione:

  • planifikimi konceptual;
  • dizajn logjik;
  • ekzekutim teknik.

Praktika kontribuon në traditat e vendosura. Pavarësisht se sa komplekse është qëllimi dhe problemi që zgjidhet. Gjithmonë duhet të zgjedhësh atë të duhurinmjetet. Për shembull, ju duhet të mbledhni informacion nga vizitorët në një burim në internet, por duhet ta krahasoni atë me të dhënat nga MS SQL Server. Burimi i uebit është i pritur në FreeBSD (Internet, server Apache) dhe MS SQL Server në një qytet tjetër është i disponueshëm nëpërmjet rrjetit të shpërndarë të kompanisë.

bazat e projektimit të bazës së të dhënave
bazat e projektimit të bazës së të dhënave

Në këtë zgjidhje, së pari duhet të zgjidhni një problem të veçantë: të vendosni shkëmbimin e të dhënave me serverin e brendshëm.

Ekzekutimi teknik i një detyre të zakonshme do të ketë domosdoshmërisht një ndikim në fazën fillestare: është e rrallë që dizajni i bazës së të dhënave të mund të bëhet nga e para. Edhe me teknologjinë e provuar të zgjidhjes së problemeve, qëllimi po evoluon, gjithmonë kërkohet të bëhet diçka ndryshe nga sa ishte menduar fillimisht.

Kohët e fundit, shumë teoricienë dhe praktikues operojnë me entitetet si të dhëna të veçanta. Këto janë abstraksione që ju lejojnë të përshkruani modelin e informacionit në hyrje, gjatë përpunimit dhe në rezultatin përfundimtar - bazën e të dhënave.

Pamjet e të dhënave dhe entitetit

Dizajnimi i DB-së përmes abstraksioneve dhe entiteteve: aftësia për të krijuar një pamje informacioni, për të përcaktuar llojet e të dhënave dhe marrëdhëniet ndërmjet tyre.

Zakonisht një dizajn i tillë i një modeli bazë të dhënash përfundon me një model grafik, duke përdorur MS Visio ose mjete vizuale të DBMS-së së zgjedhur. Access ka mënyrën e vet për të formuar një pamje informacioni, MySQL ka të vetën dhe disa sisteme të menaxhimit të përmbajtjes fshehin plotësisht bazën e të dhënave, duke i imponuar një model të dhënash zhvilluesit përmes entiteteve të tyre -objektet e detyrës që zgjidhen.

Një tipar karakteristik i shumë sistemeve të menaxhimit të përmbajtjes (CMS) është se ato bëjnë një "aplikacion" për një nivel më të madh abstraksioni kur përshkruajnë zonën e informacionit të problemit që zgjidhet. Baza e vërtetë e të dhënave është e fshehur, CMS i ofron zhvilluesit idenë e tij për pamjen e informacionit të botës.

Si rezultat, fazat e hartimit të bazës së të dhënave reduktohen në respektimin e kërkesave themelore dhe ekzekutimin e hapave të propozuar nga krijuesit e një CMS të veçantë. Nuk ka asgjë të turpshme në përdorimin e ideve të bazave të të dhënave dhe dizajnit të tyre nga Symfony ose Bitrix, Zend ose Yii, por për zhvilluesin është një "barrë".

Idealisht, mjetet e projektimit të bazës së të dhënave duhet të zgjidhen dhe zbatohen individualisht, pa opinion nga jashtë, por me aplikimin e përvojës dhe njohurive.

dizajnimi i bazës së të dhënave të informacionit
dizajnimi i bazës së të dhënave të informacionit

Ideal për një zhvillues që do të certifikohet nga Oracle, por krejtësisht i pranueshëm për kualifikimet e një zhvilluesi për të përfshirë njohuri mbi idetë e informacionit të Oracle dhe njohuritë e punës për aplikacionet MySQL.

Në projektet komplekse dhe përpunimin e informacionit të shpërndarë, jo vetëm baza e të dhënave është e rëndësishme, por edhe burimet e informacionit, idetë për nevojat e konsumatorëve.

Fazat ose ekipi: bilanci i prioriteteve

Kërkesa për konsistencë është e rëndësisë më të menjëhershme. Bazat e hartimit të bazës së të dhënave përfshijnë gjithashtu fazat e punës, monitorimin e rezultateve të ndërmjetme, rimendimin e çdo faze të përfunduar bazuar në ekzekutimin e llojit të mëposhtëm të punës:

  • sistematik;
  • fazimi;
  • feedback nga çdo moment në kohë, deri në pozicionin fillestar.

Këto dispozita janë abstrakte, por të pranishme në çdo teknologji teorike dhe praktike për krijimin e një baze të dhënash efektive.

Asnjë teknologji nuk zhvillohet vetvetiu, ajo drejtohet nga njerëzit. Kualifikimet e ekipit të zhvillimit janë thelbësore. Modeli i informacionit të bazës së të dhënave nuk është vetëm një kornizë, por edhe flukse informacioni.

Ajo që është më e rëndësishme: grafika të bukura në paraqitjen e strukturës së bazës së të dhënave ose një përshkrim i saktë i rrjedhave të informacionit në dinamikë - çështje jo vetëm e detyrës dhe fushëveprimit, por edhe e mendimit të ekipit të zhvillimit në dinamikë.

dizajni i strukturës së bazës së të dhënave
dizajni i strukturës së bazës së të dhënave

Personeli është gjithçka, por në kontekst: dizajni konceptual i një baze të dhënash është gjithçka kualifikim. Të gjithë njerëzit janë unikë dhe në fushën e sistemeve të informacionit ekzistojnë dhe zhvillohen përfaqësimet e njerëzve të veçantë.

Është e rëndësishme të ndërtosh një ekip zhvilluesish, jo disa hapa mitik të projektimit të bazës së të dhënave të sugjeruara nga një ekspert autoritar. Autoriteti i këtij specialisti u formua mbi bazën e punimeve specifike, në një kohë të caktuar. Puna duhet bërë sot, detyrë e re, pajisje moderne, teknologji e freskët, …

E mundur e kundërta. Ka Excel dhe Access dhe të dhëna "të bollshme" në këto formate nga kohët e lashta, kur Windows për Workgoups ishte ende gjallë dhe mirë. Pjesërisht mbetën të dhëna dBase dhe Quattro. Sot këto fjalë tashmë janë harruar, por informacionimbeti, është në kërkesë dhe duhet të nxirret e të formohen ide të reja.

E vjetra dhe e reja: ekuilibri i njohurive

Teknologjia Cloud nuk është si bazat e të dhënave që bëri Ashton-Tate. Ajo që Oracle bleu dikur nuk është aspak e krahasueshme me atë që bën sot. Por variablat, algoritmet, funksionet, nyjet dhe kushtet kanë mbetur në programim që nga fillimi i viteve '80. Përveç nëse koncepti i procedurës është zhytur në harresë dhe gjithçka mbetet si në kohët e lashta.

Edhe idetë moderne të programimit të orientuar nga objekti janë të veshura me "vargjet" klasike sintaksore dhe semantike të shekullit të kaluar.

Çfarë duhet bërë - programimi është inercial, dhe formalizimi i informacionit dhe dizajnimi i bazave të të dhënave të informacionit është më shumë një proces sesa një rezultat. Puna në skenë është një parakusht për arritjen e rezultateve. Por kush e numëroi numrin e përsëritjeve nga fazat e ndërmjetme pothuajse deri në fillimin e punës?

Informacioni është gjithmonë dinamik, asgjë nuk qëndron ende: veçanërisht fusha lëndore e detyrës dhe kërkesat e përdoruesit. Çdo fazë e përfunduar e punës ju lejon të vlerësoni në një nivel të ri atë që tashmë është bërë dhe çfarë mbetet për të bërë.

dizajni logjik i bazës së të dhënave
dizajni logjik i bazës së të dhënave

Të konsiderosh dizajnimin e një strukture bazë të dhënash si detyrë dhe të marrësh rezultatin përfundimtar është e kotë. Sapo baza e të dhënave të vihet në funksion, me siguri do të shfaqet një ide e re, edhe nëse mjeti për krijimin e bazës së të dhënave ishte Excel "i thjeshtë", dhe jo një produkt fantastik i fuqishëm dhe i gjithanshëm nga Oracle,duke manipuluar miliona transaksione, qindra mijëra përdorues të njëkohshëm dhe terabajt informacion.

Prioriteti nuk është struktura e bazës së të dhënave, por formimi i një ekipi të kualifikuar specialistësh, plus kërkesa e detyrueshme për dinamizëm më të madh të rezultatit, në mënyrë që pas përfundimit të punës të mos jetë e nevojshme të kontaktohet zhvilluesit, të paktën disa muaj.

Zhvillim sekuencial dhe/ose kërcime së larti

Windows nuk është një bazë të dhënash, por ka një relike - regjistrin. Skedari i hosteve është thjesht një identifikim i adresave IP dhe emrave simbolikë të makinës lokale. Por nëpërmjet këtij skedari, formohen rrjedhat e informacionit nga fusha të ndryshme ose në DBMS të ndryshme.

Është e mundur të kuptosh Windows-in e shumëanshëm si një kompjuter ose server që funksionon, por nuk do të funksionojë në asnjë mënyrë për të justifikuar logjikën e versioneve të këtij produkti. PHP nuk është as një bazë të dhënash, por argumentet e zhvilluesve se pse versioni 5 pason menjëherë versionin 7 janë të paqëndrueshme. PHP është një mjet aksesi MySQL, sintaksa e tij përcakton se si të formoni pyetje dhe të merrni përgjigje nga baza e të dhënave duke përdorur dialektin SQL.

Shembuj të papajtueshmërisë midis mjeteve moderne të programimit dhe mbështetjes së bazës së të dhënave janë bërë normë vitet e fundit, por ky nuk është më origjinali. Çfarë do të fshihet pas versionit të Windows 10? Cilat janë perspektivat për Oracle Database 12c?

Informacion për zhvilluesin-autor: Oracle Database 11g Express Edition (Oracle Database XE) është një DBMS e nivelit fillestar bazuar në kodin DBMS të Oracle Database 11g Release 2. Ky DBMS është falas për zhvillim,vendosje dhe shitje, shkarkim i shpejtë dhe i lehtë për t'u administruar.”

Perspektiva e një zhvilluesi të përdoruesit: "Në 2013, Oracle lëshoi Oracle Database 12c (versioni 12.1.0.1) me përfitimet kryesore të kostove më të ulëta të ruajtjes, disponueshmërisë së lartë të të dhënave, konsolidimit të lehtë të bazës së të dhënave dhe mbrojtjes nga aksesi i të dhënave "".

Praktikë e vërtetë: Një dizajn objektiv, efikas dhe efektiv i bazës së të dhënave logjike është i disponueshëm vetëm për një ekip zhvilluesish të kualifikuar. Marrja e një rezultati pune nuk është e vështirë, është e vështirë të zyrtarizosh flukset e informacionit në hyrje dhe të përcaktosh bazën optimale.

Në botën e formave të lëmuara nga drejtkëndëshat e saktë

Me ardhjen e programimit të orientuar nga objekti, serializimi i të dhënave ka marrë një jetë të re. Në të vërtetë, gjithçka përreth është vetëm vija, mundësisht me gjatësi të pacaktuar. Numrat dhe datat janë gjithashtu vargje karakteresh.

Fuqia dhe objektiviteti i marrëdhënieve relacionale është i pamohueshëm, por a e dëmton dinamika e kolonave dhe rreshtave reputacionin e tyre? Një tabelë është thjesht të dhëna që mund të kenë një kokë (një listë kolonash) ose pa rreshta. Le të jetë tabela vetëm një koleksion të dhënash, jo domosdoshmërisht të emërtuar.

Grupi i të dhënave mund të jetë heterogjen dhe në të mund të gjeni të dhëna me strukturë të ndryshme. Në thelb, homogjeniteti i të dhënave tregon zhvillimin e fushëveprimit. Shpërndarja e të dhënave sipas llojeve dhe llojeve është një shenjë e një qasjeje sistematike dhe objektive, por megjithatë është e këshillueshme që të pranohet mundësia e dinamikës së strukturës.

Nëse delduke projektuar dhe krijuar një bazë të dhënash përtej strukturave të ngurta dhe duke supozuar se një tabelë është një koleksion rreshtash që nuk janë domosdoshmërisht të të njëjtit lloj dhe të ngjashëm në semantikë me njëri-tjetrin, atëherë dizajni i bazës së të dhënave do të ndryshojë në mënyrë dramatike.

Subjekti i punës nuk do të jetë përshkrimi i strukturës së bazës së të dhënave, por dinamika e lëvizjes së informacionit. Fazat e punës do të ndahen në tre qendra graviteti:

  • rrjedha e informacionit hyrës;
  • transformimi dhe lëvizja e informacionit brenda bazës së të dhënave;
  • zgjidh të dhënat për t'u përdorur.

Nuk ka asnjë koncept të strukturës së tabelës. Nuk ka rreshta apo kolona. Ekziston një abstraksion - një e dhënë, e një strukture të caktuar, që plotëson një pikë specifike në algoritëm. Më konkretisht, funksioni i përpunimit të informacionit kërkon informacion të caktuar në një sasi specifike.

Kërkesa e detyrueshme për rekurzivitetin e të gjitha funksioneve të përpunimit të informacionit dhe fokusimin në funksione, jo në të dhëna, ju lejon të krijoni një bazë të dhënash në dinamikën e informacionit të grumbulluar dhe rrjedhës së të dhënave hyrëse, të cilat përdoren me iniciativën e përdoruesit., proces ose funksion tjetër.

Në fakt: erdhi një sinjal përdorimi, u mor një kërkesë për tërheqje, u ndez një shkas në aplikacion dhe informacioni hyrës, nëpërmjet asaj që ishte tashmë aty, dha zgjidhjen e dëshiruar.

Njohuri themelore dhe konstruksione të ngurta

Dituria është prerogativë e njeriut, programet janë barra e kompjuterëve. Zhvilluesi është i lirë të zbatojë njohuritë siç e sheh të arsyeshme në një situatë të caktuar. Një person i zakonshëm përdor shumë baza të dhënash, pa i kushtuar rëndësi. sibazat e të dhënave janë të organizuara në kokën e një personi të zakonshëm, askush nuk e di, por të gjithë e dinë se si ai e bën biznesin e tij, ku shkruan atë që gjen dhe kur duhet ta përdorë.

Rezultati i punës së programuesit - në nivelin e një programi në "Basic", i cili merr të dhëna nga faqja e internetit e një dyqani online nëpërmjet ODBC, është i barabartë me një zhvillues të titulluar Oracle që bën një kërkesë për të marrë të dhëna nga Salloni i Aviacionit dhe Hapësirës MAKS. Të dy rezultatet "ngrijnë" në statike që nga momenti i përfundimit të punës. Kjo nuk është njohuri aktive që një person përdor, ky është sekreti i krijimit të një sistemi të projektimit të bazës së të dhënave.

Algoritmi nuk mund të rregullohet. Gjithçka duhet të përcaktohet në mënyrë dinamike. Meritat e zhvilluesve të kualifikuar janë të pamohueshme, por ato nuk qëndrojnë aspak në format elegante të zgjidhjeve nga Oracle, MySQL ose Access, e cila është e kufizuar në aftësitë e saj. Një tjetër spreadsheet Excel mund të ofrojë përmbajtje dinamike dhe të mos kërkojë pjesëmarrjen e një programuesi për një kohë pak a shumë të mirë pas përfundimit të punës.

Pyetja është se sa mirë është formalizuar dinamika e zonës së aplikimit, jo struktura e bazës së të dhënave.

Zgjidhje të drejtpërdrejta

Është e pamundur të planifikosh punën në atë mënyrë që të lidhësh një ekip zhvilluesish profesionistë me një detyrë. Jo se skuadra u ofendua, por kjo nuk është qasja e duhur.

Zgjidhje të drejtpërdrejta
Zgjidhje të drejtpërdrejta

Detyra e hartimit të një baze të dhënash duhet të formulohet në atë mënyrë që funksionaliteti i zhvilluar të përmirësohet vetë, të grumbullojë njohuri dhe, në kryerjen e "detyrave" të tij, të mos fillojë nga kodi,krijuar nga ekspertë, por nga njohuritë e marra nëpërmjet këtij kodi.

Recommended: