Andmete mõiste: määratlus, näited

Sisukord:

Andmete mõiste: määratlus, näited
Andmete mõiste: määratlus, näited
Anonim

Andmeid seostatakse tavaliselt programmeerimisega ja tänapäevases infomaailmas esitatakse neid kolmes loogiliselt võrdväärses versioonis: programmeerimiskeeles programmis kirjeldatud ja kasutatud andmed; andmed andmebaasisüsteemides; andmed hajutatud infosüsteemides. Kaasaegne programmeerimine on andnud suhtelise vabaduse vaid teabe vormistamise esimesele variandile. Teised kaks võimalust on enam-vähem usaldusväärsed teabe edastamise vormid ja selle komponentidevahelised suhted.

Andmed minevikus ja olevikus

Programmeerimiskeelte põhipositsioon on andmete ja algoritmide täpne kirjeldus. Arvutid ei "esita" mingit ebakindluse võimalust: on midagi, mille alusel tegutseda, ja on käsk, mis selle toimingu sooritab.

Kaasaegne kontseptsioon põhineb palju kõrgemal alusel: on ette antud ja milline see täpselt saab, määratakse selle kasutuskohas. Igal juhul kontrollitakse andmeid kasutamise ajal automaatselt ja teisendatakse õigesse tüüpi. Kaasaegne programmeerija ei ole kohustatud hoolitsema nende esialgse kirjeldamise ja tüübi ühilduvuse järgimise eest algoritmis.

Andmed minevikust ja olevikust
Andmed minevikust ja olevikust

Üleminekuprotsess:

  • trükitud andmetest ja nende kohustuslikust kirjeldusest enne kasutamist;
  • tüüpimata andmetele ja vabaduse kohustusest neid kirjeldada ja kasutada.

Tegelikult võime tunnistada vormistamisnõuete suhtelist leevendust – see on saadaval ainult kaasaegsete programmeerimisvahendite keskkonnas. Käitusajal on iga nullpunkti tüüp fikseeritud ja käsujada on täpselt määratletud.

Tüübid ja modelleerimine

Matemaatika ja füüsika, kaubandus ja tootmine, majandus ja muud valdkonnad, kus kasutatakse numbreid, on alati opereerinud andmetega ega omistanud tüübi mõistele mingit tähtsust. See, et numbrid võivad olla täis- või murdarvud, ei omanud erilist tähtsust.

Iga konkreetne valem või konkreetne toiming võib anda täisarvu, lõpmatu murdosa, reaal- või kompleksarvu. Siiani on selliseid vaimuimesid nagu lõpmatult väikesed ja lõpmata suured. Pealegi on neil imedel isegi omadusi.

Programmeerimisel pole endiselt vabadust. Kõik peab olema rangelt vormistatud. Andmete mõiste on ennekõike tüüp:

  • täisarv;
  • boolean;
  • char;
  • string ja nii edasi.

Tüüpide nimed võivad erinevates programmeerimiskeeltes erineda, kuid alati on olemas täis- või reaalarv, tõeväärtus, sümbol,rida. Alles on veel säilmeid ja konkreetseid ideid: märgita täisarv, kood, bait, sõna, topeltsõna, fikseeritud pikkusega string.

Reliikviad ja ideed
Reliikviad ja ideed

Andmete mõistel andmesüsteemis puudub vabadus. SQL-keel - "rahvusvaheline" (iga kaasaegse andmebaasi jaoks on oma dialekt) - ei talu ebatäpsusi mitte ainult andmetes, vaid ka sql-päringutes. Viga taotluses on tulemuse puudumise garantii. Kirjelduste rikkumistest pole vaja üldse rääkida.

Teabeprotsesside ja andmete esitusviiside modelleerimine on ainus kindel viis sellise struktuuri loomiseks, mis võib areneda ja kohaneda muutuvate tingimustega.

Originaali dünaamika

Looduslik teave on pidev muutumine. Andmemudeli ametlik kirjeldus ja kontseptsioon konkreetses ainevaldkonnas tähendab kolme probleemi lahendamist:

  • määratle, millised andmed siin on;
  • formaliseerige nendevaheline suhe;
  • kirjeldage andmete ja suhete muutmise protsesse.

Näide JavaScripti lihtsa algoritmi andmekogumist – isegi kõige kindlama andmebaasihaldussüsteemi mudeli vähendatud koopia.

Lihts alt teisel juhul ei näe eksperdid ja spetsialistid andmestruktuure, tabeleid ja seoseid kujundades tavaliselt (suurt hulka loomulikku informatsiooni on tõesti raske katta) asjade olemust ja saadakse tülikas, väljatöötamata andmehulk, samas kui ainevaldkonnas liigub lähteteave vab alt ja lihts alt.

Staatilinevõimalik

Leheküljele lisatud koodi ja sündmustele määratud funktsioonide lisamine lehe siltidele on levinud JavaScripti tava. Mõlemal juhul määravad lehesildid andmed, mida antud veebiressurss aktsepteerib, muudab või loob.

Kui keskendute oma töötleja koodis väga hoolik alt elementide sündmustele, mitte lehe koodile tervikuna, on see parim väljapääs. Ideaalis, kui kood ei lisa uusi andmeid või ei paranda olemasolevaid andmeid, vaid keskendub sellele, mis sellel konkreetsel ajahetkel täpselt on.

Tegelikult, kui määratlete mõiste "andmed" kui lähteteabe minimaalselt staatilise kirjelduse ja järgite seda, tähendab see, et teil on eduvõimalus.

Andmebaasidega seoses on asjad palju keerulisemad. Iga JavaScripti kood "pakkub" lehele funktsionaalsust. Iga andmebaas on tabelite, nendevaheliste suhete, salvestatud protseduuride, päringute ja funktsioonide kogum, mis on saadaval väljastpoolt.

Staatiline on iga algoritmi probleem. Tänapäevane andmete mõiste on staatiline: arv, string, märk jne. Töötlemisel või andmebaasi tabelisse kirjutamisel sujub kõik sujuv alt. Millal aga omandab originaal hoopis teise mõõtme või tähenduse? Esimene võimalus: muutke märki, kuid ühendused ja taotlused võivad kohe sisse kukkuda.

Staatika ja objektid

Mõiste "andmed" kui objekti määratlemine muudab olukorda dramaatiliselt. Objektil on oma struktuur. Siin saate kasutada mis tahes muutujate mis tahes kirjeldust. Rolli ei mängita. Objektil on meetodid, mille kaudu andmed on kättesaadavad. Kuna kõikmida kasutatakse programmeerimise valdkonnas, see tähendab kolme põhimeetodit: loe, kirjuta, muuda. Saate lisada rohkem, et võrrelda, otsida, kloonida jne.

Teemaala määrab igale andmele hulga omadusi. Seega selgub, et andmete mõiste muudetakse omamoodi kirjelduseks, mida saab dünaamiliselt muuta. Staatiline objekti sees annab dünaamika sellest väljaspool.

Objekti sees olevate staatiliste deskriptorite kombinatsiooni muutmisel ei pea te muretsema selle suhete dünaamika pärast teiste objektidega.

Andmete programmeerimine ja esitamine

Mis on andmed? Avalik teadvus on infotehnoloogiaga juba harjunud, töötab pilvedes ja omab konteinereid virtuaalruumides. Nüüd on teabe ja selle kasutamise küsimustes pädevad mitte ainult professionaalsed programmeerijad ja kasutajad, vaid ka tavalised inimesed.

Avalik arvamus
Avalik arvamus

Aga mis on programmeerimine? Tänaseni annab avalik arvamus sellele mõistele ja selle mõistetele järgmise määratluse:

  • Teave ja andmed on arvutiteaduses kasutatavad põhimõisted.
  • Andmed on teatud viisil saadud ja salvestatud vaatlused ümbritseva reaalsuse suhtes.
  • Need on lihtsad ja keerulised (struktuurid), esmased ja sekundaarsed.
  • Andmebaas on sõltumatute materjalide kogum, mis on esitatud süstemaatilisel viisil, et neid oleks võimalik leida, muuta ja kasutada.

Kui objektiivne see on? Autoriteetsed autoridarvan nii. Tegelik praktika kipub tagama, et iga ainevaldkond määrab oma õige andmesüsteemi ja annab kõik võimalused hea dünaamilise mudeli loomiseks.

Ei ole harvad juhud, kui klient (tarbija) surub programmeerijale (andmebaasi kujundajale) peale oma arvamuse, kuidas ja mida teha. Programmeerimise seisukoh alt saab ülima täpsusega täita iga kliendi soovi.

Vaja Oracle, et lahendada maaelu veevärgi korrashoiu eelarvestamise probleem (külas 21. maja) - hea. MySQL-i on vaja kõigi Venemaa postkontorite postisaadetiste jälgimissüsteemi korraldamiseks – kõik toimib samuti.

Andmebaasihaldussüsteemi või programmeerimiskeele arendaja poolt kehtestatud andmete mõiste definitsiooni raames saate alati koostada mis tahes algoritmi ja pakkuda juurdepääsu mis tahes teabe esitusviisile. Küsimus on erinev: kuidas seda teha minimaalsete kuludega maksimaalse dünaamika korral?

Andmebaasid, näited

Lihtne alus luuakse ilma mudelita. Andmete ja side põhimõisted on väikesed, funktsionaalsus väga lihtne. Näiteks kõrgkooli jaoks vajate:

  • õpetajate tabel;
  • rühmatabel (võti ja rühma number);
  • üliõpilaste tabel (kasutatakse rühmaklahve).

Dekaan soovib teada õppejõudude edusamme. Õpetajate tabelis on väljad:

  • perekonnanimi;
  • nimi;
  • patroonüüm;
  • jälgitava rühma number.

Õpilaste tabelis on väljad:

  • perekonnanimi;
  • nimi;
  • patroonüüm;
  • sünnikuupäev;
  • GPA (kõikide ainete jaoks);
  • grupinumber.

Valimi moodustamiseks võib olla vähem alt kaks võimalust: kasutades õpetaja nime, saate minna rühma numbrile ja näha kõiki õpilasi ja nende keskmisi hindeid või õpetaja perekonnanime ja viimase nime järgi. õpilase nime, näete viimase õpilase keskmist punktisummat.

Lihtne andmebaas
Lihtne andmebaas

Isegi nii lihtsa versiooni puhul on probleemid garanteeritud ja midagi tuleb muuta. Olukord: õpetaja jäi haigeks, teda asendab veel üks kuu, mis tähendab, et ta juhendab kahte rühma. Õpetajate tabelis on ühe rühmanumbri all ainult üks väli.

Probleemi lahendamiseks peate lisama duplikaatvälja. Ja kui kaks haigestuvad, lisage kolm põldu. Nii et õpetajate tabel hakkab nullist kasvama.

On veel üks võimalus: asendage rühmaklahvi numbriväli sümboolse väljaga. Seejärel peate iga kord, kui valite, teisendama stringi võtmete jadaks ja ühest SQL-päringust saab mitu.

Lootavam näide on mitte tabelite, vaid objektide tegemine. Siis on õpetaja objekt ja tal võib olla mitu juhendatavat rühma. Kuid see on alati üks objekt. Õpetajaobjektil on kordumatu võti, kuid sellel võib olla mitu jälgitavat rühma. Grupil on ka ainulaadne võti. Ka tudeng.

Kõik kolm ametikohta pole saadaval mitte ainult ülesande raames, vaid neid saab edasi arendada.

Objektorienteeritud alused

Teabetööstuse juhidpakkuda klassikalisi relatsiooniandmebaase. Need on elu poolt testitud, töötavad, on turvalised, töökindlad ja võimaldavad probleemide korral teavet taastada.

Objektorienteeritud andmebaase (OODB) hakati välja töötama 1980. aastate keskel ja need on autoriteetsete autorite sõnul paljulubavad tänaseni. Kuid siiani, peale fundamentaalsete teooriate ja kontseptuaalsete sätete, pole ühtegi OODB-d, mis oleks saavutanud sama reitingu ja jaotuse kui MySQL, MS SQL Server või Oracle kõigis oma erinevates kehastustes.

OO andmebaas
OO andmebaas

Aga mis siis, kui määratluse, andmete mõiste, tüüpide, atribuutide, klasside ja hierarhiate pakub välja arendaja, kelle reiting ei ole piisav, et luua programmeerijate kogukond, kes tunnistab selle OODB mentaliteeti? Peame lootma oma jõule.

Linux keskkonnas on loodud üle kolmekümne OODB variandi. Aga kus on garantii, et loodud andmebaas ei vaja rohkem funktsionaalsust? Windowsi keskkond ei paku selles valdkonnas suuri garantiisid.

Objektorienteeritud lahendus

Siiski on lahendus. Kasutades MySQL-i näitena, saate näidata, kuidas standardsed relatsioonitabelid muutuvad lahendatava probleemi objektorienteeritud mudeliks.

Näide teie enda OODB-st
Näide teie enda OODB-st

Siin pole andmebaasi, küll aga on keskkond oma objektide süsteemi moodustamiseks. MySQL-i võimsust kasutatakse ainult teaberidade tabelite relatsioonimäluna. Kasutusloogika määrab arendaja ise. Eelkõige on tabel is_cache. Sellel on kõikemitu põhivälja:

  • owner_code;
  • session_code;
  • h_code;
  • a_surprise;
  • a_contents.

Ülejäänud väljad sisaldavad teenindusfunktsioone. See tabel seisab mis tahes päringu sisendis ja salvestab selle saabumise. Selle, mida andmebaasi mudel välja töötab, määrab selle arendaja. See, mis mahub sisuväljale (a_contents), määratakse arendaja loodud mudeli objektide järgi.

Selles idees on neli asja: tabamus, tabamuse seanss, tabamuse ajaloo kood ja konkreetne sisu. Mis on kõne, millist objektide süsteemi tuleks ehitada - määrab arendaja. Mida seansi (tööprotsessi) all mõeldakse, määrab arendaja. Ajaloo kood võimaldab taotlustel tagasi pöörduda.

Siinsetel tabelitel pole teemavaldkonnaga mingit pistmist. On kõnekontroller (is_cache), on logimine (is_customs), on kõneajalugu (is_histories). Ülejäänud tabelid määratakse lahendatava ülesande järgi.

Tegelikult soovitab see lahendus luua oma OODB ehitatud domeeni andmebaasi mudeli ja lahendatava probleemi põhjal. Siin on tohutu pluss – see on teie enda andmete kontseptsioon, teie enda mudel nende esitlemiseks ja nendevaheline suhe. Siin on alus – suurepärane relatsiooniandmebaas. Ei teki probleeme millegi otsimisel ja millestki valesti aru saamisel.

Mudel: objektsüsteem + DBMS

Infotehnoloogias on peaaegu võimatu midagi muuta. Tõeline inforevolutsioon on veel kaugel. professionaalne teadvustarkvaraarendajad ei kavatse klassikalisi traditsioone muuta. Kuid olukorrast on veel väljapääs.

Ideaalne Lahendus
Ideaalne Lahendus

Kasutades usaldusväärseid kaasaegseid andmebaasihaldussüsteeme oma mudeli olemasoluks keskkonna loomisel, võite saavutada märgatavat edu.

Igal juhul peate ülesande lahendamiseks looma vaate või andmemudeli, kuid peate seda tegema õigesti: olgu selleks objektide süsteem ja selle keskkonnaks hea DBMS.

Soovitan: