Tietokannan suunnittelu: vaiheet ja perusteet

Sisällysluettelo:

Tietokannan suunnittelu: vaiheet ja perusteet
Tietokannan suunnittelu: vaiheet ja perusteet
Anonim

Tietokannan suunnittelu on peräkkäinen prosessi, jossa käytettävissä olevaa tietoa ja työkaluja mukautetaan tietojen esittämiseen ja käsittelyyn.

Todellinen laajuus, erityinen tehtävä, tulevan tietovirran kuvaus ja yleiset käsitykset tietojenkäsittelyprosessista summautuvat vähitellen tiettyyn käsitteelliseen käsitykseen siitä, mitä tietokanta tietyssä tapauksessa on ja miten työskennellä sen kanssa.

Nykyaikainen tietokanta

Relaatiosuhteet ovat minkä tahansa tietomallin ytimessä. Oraclen ratkaisut vastaavat pohjimmiltaan MySQL:ää, mutta ne ovat pohjimmiltaan erilaisia monilta osin. Tietokannan suunnittelussa on kyse myös turvallisuudesta, tiedon määrästä ja vastuullisuudesta tietojen eheydestä, mutta nämä ovat toissijaisia tehokkaan, luotettavan ja käyttäjäystävällisen tietokannan suunnitteluun nähden.

tietokannan suunnitteluvaiheet
tietokannan suunnitteluvaiheet

Excel-taulukot eivät eroa Oraclesta ja MySQL:stä suorakulmaisten (relaatio)rakenteiden yhteydessä: sarakkeet ja rivit=yksi solu sarakkeen nimen (kentän) ja valintaindeksin (rivin) leikkauskohdassa. Jos et ota huomioon käsityön mittaa ja määrää, kehitettyjen solujen pysty- ja vaakasuuntaisten yhdistämismenetelmien ansiosta Excel on jopa Oraclen edellä!

Excel ei perusideansa mukaan koskaan "loista" Oraclen dynamiikkaa, toiminnallisuutta, eikä se voi siirtää jotain arkilta toiselle "jäänteiden mukaan". Tässä Oracle on lupaavampi, mutta sen pohdinnat suurten tietomäärien siirtämisestä ja eri lähteistä peräisin olevien virallisten paikkojen yhdistämisestä jättävät paljon toivomisen varaa. Tässä MySQL on lupaavampi: se ei aseta itselleen globaaleja tehtäviä, mutta tekee työnsä täydellisesti.

Suhdesuhteet ovat käteviä, käytännöllisiä ja vakiintuneita työkaluja yksityisistä Excel-tason ratkaisuista Oraclen maailmanlaajuisiin volyymeihin, niitä käytetään kaikkialla, kysyntää ja niillä on taattu tulevaisuus työpaikoilla.

Nykyaikainen tietokanta koostuu taulukoista, riveistä, sarakkeista ja indekseistä, joita ympäröivät kaikki toiminnot, kehitetyt lisätyökalut, jotka ottavat huomioon useat toiminnot, raskaat kuormat ja suuret volyymit.

Nykyaikaisten tietokannanhallintajärjestelmien (DBMS) tuntemus ja kokemus ottavat huomioon luotettavuuteen, tietojen luotettavuuteen, pääsyn säätelyyn ja tietoturvaan liittyvät kysymykset, vaan mahdollistavat myös negatiivisten ulkoisten vaikutusten jäljittämisen, mahdollisten hyökkäysten analysoinninja yrittää tahallaan vahingoittaa.

Nykyaikainen tietokanta on luotettava perusta kaikille verkkoresursseille ja paikallisille sovelluksille, mahdollisuus siirtää tietoa, muuntaa ja siirtää tietoja, leikata ja yhdistää erilaisia näkymiä.

Ainoa välttämätön edellytys: erittäin pätevä kehittäjä. Relaatiotietokantojen tehokkaan suunnittelun suorittaminen on asiantuntijan ja useammin asiantuntijaryhmän ja ratkaistavan ongelman soveltamisalan asiantuntijoiden käytettävissä.

Laajuus, mahdollinen ratkaisu ja esteet

Tietoa kiertää kaikkialla. Monet projektit ovat suoraan yhteydessä Internetiin, mutta muodollisen datan esittäminen tässä ei ole parempi kuin epävarmuustekijä luotaessa verkkoresurssia terästehtaalle.

Verkkokauppojen kehitys ja v altava kiinnostus ei anna perusteita ja mahdollisuuksia siirtää yhden kaupan luomisen kokemusta toisen luomiseen. Liikesalaisuustekijä luo monia esteitä tiedon siirtämiselle, vaikka itse asiassa sinun tulee erottaa varsinainen kauppa tätä kauppaa varten luoduista ohjelmistotyökaluista.

relaatiotietokannan suunnittelu
relaatiotietokannan suunnittelu

Tietenkin asiakas maksoi ja sivuston koodi on hänen omaisuuttaan. Nykyaikaisuuden ominaispiirre: tiedon ja kehityksen siirto samantyyppisten tehtävien ja niihin liittyvien sovellusalojen välillä on mahdotonta ja tämä on ongelma.

Jäsentäminen on laaja valikoima sovelluksia tietokannan hallintajärjestelmille. Ensinnäkin se skannaa tietoja Internetistä. Yhtä tärkeää on vertailla kerättyä tietoatietokanta ja verkkovierailijapyynnöt.

Avainsana-analyysiin liittyy myös tarve muodostaa optimaalinen ratkaisu, mutta tietokannan suunnittelu Accessissa voi olla lupaavampi kuin MS SQL Serverissä tai Oraclessa.

Tietolähteiden luettelo voi olla dynaaminen. Dynamiikka voi olla luonnostaan lähdetietokantataulukoissa, taulukon kenttien nimissä ja kutsu (kysely) säännöissä. Relaatiotietokantojen suunnittelu useista lähteistä pakottaa sinut selkeästi suunnittelemaan lähdetiedoista, ei kerätyn tiedon optimaalisesta järjestämisestä.

Kaksi asiaa on luontainen jokaiselle tietokannalle:

  • sisältöön suuntautuminen, dynaaminen tietokannan luontialgoritmi etusijalla;
  • käyttöön suuntautuminen, tietokannan rakenne on tärkeämpi ja tiedon käytön algoritmi perustuu siihen.

Millä tahansa sovellusalueella on muodollinen malli tulevasta tietovirrasta, tiedon tallennusmalli - tietokannan varsinainen rakenne ja malli (algoritmi) tietojen käyttämiselle.

Erilaisia toimenpiteitä ja suunnitteluvaiheita

Tietokantasuunnittelun perusteet jakautuvat yleensä kolmeen vaiheeseen. Eri asiantuntijat viittaavat työvaiheisiin eri tavoin, mutta itse asiassa virkoja on kolme:

  • konseptisuunnittelu;
  • looginen suunnittelu;
  • tekninen toteutus.

Harjoittelu edistää vakiintuneita perinteitä. Ei ole väliä kuinka monimutkainen laajuus ja ratkaistava ongelma. Se vaatii aina oikean valinnantyökaluja. Sinun on esimerkiksi kerättävä tietoja verkkoresurssin vierailijoilta, mutta sinun on verrattava niitä MS SQL Serverin tietoihin. Verkkoresurssia isännöi FreeBSD (Internet, Apache-palvelin), ja MS SQL Server toisessa kaupungissa on saatavilla yrityksen hajautetun verkon kautta.

tietokannan suunnittelun perusteet
tietokannan suunnittelun perusteet

Tässä ratkaisussa sinun on ensin ratkaistava tietty ongelma: luodaan tiedonvaihto sisäisen palvelimen kanssa.

Yhteisen tehtävän tekninen toteutus vaikuttaa väistämättä alkuvaiheeseen: on harvinaista, että tietokannan suunnittelu voidaan tehdä tyhjästä. Jopa todistetun ongelmanratkaisutekniikan kanssa laajuus kehittyy, aina vaaditaan jotain toisin kuin alun perin oli tarkoitettu.

Viime aikoina monet teoreetikot ja harjoittajat käyttävät kokonaisuuksia erityistietona. Nämä ovat abstraktioita, joiden avulla voit kuvata tiedon mallia syötteessä, käsittelyn aikana ja lopputuloksessa - tietokannassa.

Tietojen ja kokonaisuuksien näkymät

DB-suunnittelu abstraktien ja entiteettien kautta: kyky luoda informaatiokuva, määritellä tietotyyppejä ja niiden välisiä suhteita.

Yleensä tällainen tietokantamallin suunnittelu päättyy graafiseen malliin, jossa käytetään MS Visioa tai valitun DBMS:n visuaalisia työkaluja. Accessilla on oma tapansa muodostaa tietokuvaa, MySQL:llä oma, ja osa sisällönhallintajärjestelmistä piilottaa tietokannan kokonaan ja pakottaa kehittäjälle tietomallin omien entiteettiensä kautta -ratkaistavan tehtävän objektit.

Monille sisällönhallintajärjestelmille (CMS) on tyypillinen piirre, että ne tekevät "sovelluksen" suuremmalle abstraktiotasolle kuvattaessa ratkaistavan ongelman tietoaluetta. Todellinen tietokanta on piilotettu, CMS tarjoaa kehittäjälle oman käsityksensä maailman tietokuvasta.

Tämän seurauksena tietokannan suunnittelun vaiheet rajoittuvat perusvaatimusten noudattamiseen ja tietyn CMS:n luojien ehdottamien vaiheiden suorittamiseen. Symfonyn tai Bitrixin, Zendin tai Yiin tietokantojen ideoiden ja niiden suunnittelun käyttämisessä ei ole mitään häpeällistä, mutta kehittäjälle se on "taakka".

Ihannetapauksessa tietokannan suunnittelutyökalut tulisi valita ja soveltaa yksilöllisesti, ilman ulkopuolista mielipidettä, mutta kokemusta ja tietoa soveltaen.

tietokannan suunnittelu
tietokannan suunnittelu

Ihanteellinen kehittäjälle, jolle Oracle on sertifioinut, mutta täysin hyväksyttävä kehittäjän pätevyydelle, joka sisältää näkemyksiä Oraclen tietoideoista ja MySQL-sovellusten työtuntemuksen.

Monimutkaisissa projekteissa ja hajautetussa tiedonkäsittelyssä tietokanta ei ole tärkeä, vaan myös tietolähteet, ajatukset kuluttajien tarpeista.

Vaiheet tai joukkue: prioriteettien tasapaino

Johdonmukaisuuden vaatimus on välittömin merkitys. Tietokantasuunnittelun perusteisiin kuuluvat myös työn vaiheistus, välitulosten seuranta, jokaisen suoritetun vaiheen uudelleenarviointi seuraavan tyyppisten töiden suorittamisen perusteella:

  • järjestelmällinen;
  • vaiheistus;
  • palaute mistä tahansa ajankohdasta, aivan alkuasentoon.

Nämä säännökset ovat abstrakteja, mutta niitä esiintyy kaikissa teoreettisissa ja käytännön tekniikoissa tehokkaan tietokannan luomiseksi.

Mikään tekniikka ei kehity itsestään, se on ihmisten ohjaama. Kehitystiimin pätevyys on välttämätöntä. Tietokannan tietomalli ei ole vain kehys, vaan myös tietovirrat.

Mikä on tärkeämpää: kaunis grafiikka tietokantarakenteen esityksessä tai tarkka kuvaus tietovirroista dynamiikassa - kysymys ei pelkästään tehtävästä ja laajuudesta, vaan myös kehitystiimin mielipiteestä dynamiikassa.

tietokantarakenteen suunnittelu
tietokantarakenteen suunnittelu

Henkilökunta on kaikki kaikessa, mutta kontekstissa: tietokannan käsitteellinen suunnittelu on kaikki pätevyys. Kaikki ihmiset ovat ainutlaatuisia, ja tietojärjestelmien alalla on olemassa ja kehittyy tiettyjen ihmisten esityksiä.

On tärkeää rakentaa kehittäjäryhmä, ei arvov altaisen asiantuntijan ehdottamia myyttisiä tietokannan suunnitteluvaiheita. Tämän asiantuntijan auktoriteetti muodostui tiettyjen teosten perusteella tiettynä aikana. Työtä on tehtävä tänään, uusi tehtävä, modernit laitteet, tuore tekniikka, …

Mahdollinen käänteinen. Näissä muodoissa on Exceliä ja Accessia sekä "runsaasti" dataa muinaisista ajoista, jolloin Windows for Workgoups oli vielä elossa ja voimissaan. Osittain säilyi dBase ja Quattro data. Tänään nämä sanat on jo unohdettu, mutta tiedotsäilynyt, sillä on kysyntää ja se on poimittava ja muodostettava uusia ideoita.

Vanha ja uusi: tiedon tasapaino

Pilviteknologia ei ole kuin Ashton-Taten tietokannat. Se, mitä Oracle kerran osti, ei ole millään tavalla verrattavissa siihen, mitä se tekee nykyään. Mutta muuttujat, algoritmit, funktiot, silmukat ja ehdot ovat pysyneet ohjelmoinnissa 80-luvun alusta lähtien. Ellei toimenpiteen käsite ole vaipunut unohduksiin ja kaikki pysyy entisellään.

Jopa modernit ideat olio-ohjelmoinnista ovat pukeutuneet viime vuosisadan klassisiin syntaktisiin ja semanttisiin "kahleisiin".

Mitä tehdä - ohjelmointi on inertiaa, ja tiedon formalisointi ja tietokantojen suunnittelu on enemmän prosessi kuin tulos. Lavastettu työ on tulosten saavuttamisen edellytys. Mutta kuka laski iteraatioiden määrän välivaiheista melkein työn alkuun?

Tieto on aina dynaamista, mikään ei pysy paikallaan: varsinkin tehtävän aihealue ja käyttäjävaatimukset. Jokainen suoritettu työvaihe antaa sinun arvioida uudella tasolla, mitä on jo tehty ja mitä on vielä tehtävänä.

looginen tietokannan suunnittelu
looginen tietokannan suunnittelu

On turhaa pitää tietokantarakenteen suunnittelua tehtävänä ja saada lopputulos. Heti kun tietokanta otetaan käyttöön, ilmaantuu varmasti uusi idea, vaikka tietokannan luomistyökalu olisikin "yksinkertainen" Excel, eikä mikään fantastisen tehokas ja monipuolinen Oraclen tuote,manipuloi miljoonia tapahtumia, satoja tuhansia samanaikaisia käyttäjiä ja teratavuja tietoa.

Etusijalla ei ole tietokannan rakenne, vaan pätevän asiantuntijaryhmän muodostaminen sekä pakollinen vaatimus tuloksen suuremmasta dynaamisuudesta, jotta työn päätyttyä ei tarvitsisi ottaa yhteyttä kehittäjät, vähintään pari kuukautta.

Jaksottainen kehitys ja/tai korkeushypyt

Windows ei ole tietokanta, mutta sillä on jäänne - rekisteri. Hosts-tiedosto on yksinkertaisesti tunniste paikallisen koneen IP-osoitteista ja symbolisista nimistä. Mutta tämän tiedoston kautta muodostetaan tietovirtoja eri toimialueilta tai eri tietokantajärjestelmiin.

On mahdollista ymmärtää monipuolinen Windows toimivana tietokoneena tai palvelimena, mutta se ei toimi millään tavalla perustelemaan tämän tuotteen versioiden logiikkaa. PHP ei myöskään ole tietokanta, mutta kehittäjien perustelut sille, miksi versio 5 seuraa välittömästi versiota 7, ovat ristiriitaisia. PHP on MySQL-käyttötyökalu, jonka syntaksi määrittää, kuinka kyselyitä muodostetaan ja vastauksia saadaan tietokannasta SQL-murteella.

Esimerkit yhteensopimattomuudesta nykyaikaisten ohjelmointityökalujen ja tietokantatuen välillä ovat yleistyneet viime vuosina, mutta tämä ei ole omaperäisin. Mitä Windows 10 -version takana on? Mitkä ovat Oracle Database 12c:n näkymät?

Tietoja kehittäjästä: Oracle Database 11g Express Edition (Oracle Database XE) on Oracle Database 11g Release 2 DBMS -koodiin perustuva lähtötason tietokantajärjestelmä. Tämä DBMS on ilmainen kehittämiseen,käyttöönotto ja myynti, nopea lataus ja helppo hallinnoida.”

Käyttäjäkehittäjän näkökulma: "Vuonna 2013 Oracle julkaisi Oracle Database 12c:n (version 12.1.0.1), jonka tärkeimmät edut ovat alhaisemmat tallennuskustannukset, korkea tietojen saatavuus, helppo tietokannan konsolidointi ja tietojen käyttösuojaus "".

Todellinen käytäntö: Objektiivinen, tehokas ja vaikuttava looginen tietokantasuunnittelu on vain pätevien kehittäjien käytettävissä. Toimivan tuloksen saaminen ei ole vaikeaa, saapuvien tietovirtojen virallistaminen ja optimaalisen perustan määrittäminen on vaikeaa.

Täsmällisistä suorakulmioista tasaisten muotojen maailmaan

Olo-ohjelmoinnin myötä tietojen serialisointi on saanut uuden elämän. Itse asiassa kaikki ympärillä on vain viivoja, mieluiten määrittelemättömän pituisia. Numerot ja päivämäärät ovat myös merkkijonoja.

Suhdesuhteiden voima ja objektiivisuus on kiistatonta, mutta vahingoittaako sarakkeiden ja rivien dynamiikka niiden mainetta? Taulukko on yksinkertaisesti dataa, jolla voi olla otsikko (sarakeluettelo) tai ei rivejä. Olkoon taulukko vain kokoelma tietoja, ei välttämättä nimeä.

Tietojoukko voi olla heterogeeninen ja siitä voi löytää erilaisia rakenteellisia tietoja. Pohjimmiltaan tietojen homogeenisuus kertoo laajuuden kehittymisestä. Tietojen jakautuminen tyypeittäin ja lajeittain on merkki systemaattisesta ja objektiivisesta lähestymistavasta, mutta silti kannattaa myöntää rakennedynamiikan mahdollisuus.

Jos lähtöSuunnittelemalla ja luomalla tietokannan jäykkien rakenteiden lisäksi ja olettaen, että taulukko on kokoelma rivejä, jotka eivät välttämättä ole samantyyppisiä ja semantiikk altaan samanlaisia keskenään, tietokannan suunnittelu muuttuu dramaattisesti.

Työn aiheena ei ole tietokannan rakenteen kuvaus, vaan tiedon liikkumisen dynamiikka. Työvaiheet jaetaan kolmeen painopisteeseen:

  • syötä tiedonkulku;
  • tietojen muuntaminen ja liikkuminen tietokannassa;
  • valitse käytettävät tiedot.

Taulukon rakennetta ei ole olemassa. Ei ole rivejä tai sarakkeita. On abstraktio - tietyn rakenteen omaava, joka täyttää tietyn pisteen algoritmissa. Tarkemmin sanottuna tietojenkäsittelytoiminto vaatii tiettyjä tietoja tietyssä määrin.

Pakollinen vaatimus kaikkien tietojenkäsittelytoimintojen rekursiivisuudesta ja keskittymisestä toimintoihin, ei tietoihin, mahdollistaa tietokannan suunnittelun kertyneen tiedon ja saapuvan tietovirran dynamiikassa, joita käytetään käyttäjän aloitteesta., prosessi tai muu toiminto.

Itse asiassa: käyttösignaali tuli, noutopyyntö vastaanotettiin, sovelluksen laukaisu käynnistyi ja saapuvat tiedot jo olemassa olevien tietojen kautta tarjosivat halutun ratkaisun.

Perustietoa ja jäykät rakenteet

Tieto on ihmisen etuoikeus, ohjelmat ovat tietokoneiden taakka. Kehittäjä voi vapaasti soveltaa tietoa haluamallaan tavalla tietyssä tilanteessa. Tavallinen ihminen käyttää paljon tietokantoja kiinnittämättä sitä merkitystään. Mitentietokannat on järjestetty tavallisen ihmisen päässä, kukaan ei tiedä, mutta kaikki tietävät, kuinka hän hoitaa liiketoimintaansa, mihin hän kirjoittaa ylös, mitä hän löytää ja milloin hänen tarvitsee käyttää sitä.

Ohjelmoijan työn tulos - "Basicissa" olevan ohjelman tasolla, joka hakee tietoja verkkokaupan verkkosivuilta ODBC:n kautta, vastaa nimettyä Oracle-kehittäjää, joka pyytää tietojen noutopyyntöä. MAKS Aviation and Space Salonista. Molemmat tulokset "jäätyvät" staattiseen siitä hetkestä, kun työ on valmis. Tämä ei ole aktiivista tietoa, jota henkilö käyttää, tämä on tietokannan suunnittelujärjestelmän luomisen salaisuus.

Algoritmia ei voida korjata. Kaikki on määriteltävä dynaamisesti. Pätevien kehittäjien ansiot ovat kiistattomat, mutta ne eivät piile lainkaan Oraclen, MySQL:n tai Accessin eleganteissa muodoissa, joiden ominaisuudet ovat rajalliset. Toinen Excel-laskentataulukko voi tarjota dynaamista sisältöä, eikä se vaadi ohjelmoijan osallistumista enemmän tai vähemmän kunnolliseen aikaan työn valmistumisen jälkeen.

Kysymys on, kuinka hyvin sovellusalueen dynamiikka on formalisoitu, ei tietokannan rakenne.

Live Solutions

Työtä on mahdotonta suunnitella niin, että ammattimaisten kehittäjien tiimi sitoisi tehtävään. Ei sillä, että joukkue olisi loukkaantunut, mutta tämä ei ole oikea lähestymistapa.

Live-ratkaisut
Live-ratkaisut

Tietokannan suunnittelutehtävä tulee muotoilla siten, että kehitetty toiminnallisuus parantaisi itseään, kerääntyisi tietoa ja "tehtäviään suorittaessaan" ei lähteisi koodista,asiantuntijoiden luoma, mutta tämän koodin avulla hankitun tiedon perusteella.

Suositeltava: