Ce este exemplul bazei de date temporale?

Cel mai bun răspuns

OQ: Ce este exemplul bazei de date temporale?

Baza de date temporală este similară cu baza de date spațială, cu diferența că db-ul spațial acceptă tipuri de date, relații și funcții legate de spațiu, în timp ce db-ul temporal este axat pe același lucru legat de timp. A spune că tipul de date în db temporală ar putea fi „perioadă de timp” și extinderea limbajului (din SQL tipic) ar putea fi funcții precum în intervalul\_perioadă, perioade\_de-suprapunere, perioade\_exclusiv etc. timp, nu „pentru totdeauna și pentru totdeauna”).

Puteți simula parțial baza de date temporală în db relațional obișnuit, având toate tabelele extinse cu columele „date de la” și „dată la” care specifică de când până când sunt date înregistrarea este o informație validă. De exemplu:

Mark, blondă, 2000-03-21, 2048-12-11

Mark, chel, 2048-12-12, 2048-12-23

Mark, periat, 2048–12–24, …

Db temporar ar trebui să vă permită să mai faceți ceva. De exemplu, ar trebui să puteți afirma cu ușurință constrângerea unică pe o perioadă de timp, în sensul unei perioade care nu depășește, care este mai mult decât UQ (stilul de păr, data de la, data la).

Răspuns

În primul rând, permiteți-mi să clarific o anumită terminologie. Un sistem de gestionare a bazelor de date este un software conceput pentru a organiza și gestiona datele astfel încât să poată fi stocate cu ușurință pe termen lung, căutate (interogate), recuperate și modificate. O bază de date este o instanță a acestui spațiu de stocare. Deci, prin analogie, un sistem de gestionare a bazelor de date este asemănător conceptului de catalog de cărți de bibliotecă, iar o bază de date este ca un cabinet special care deține cărți la o anumită bibliotecă. Cu toate acestea, mă voi referi la conceptul general ca „baze de date”, așa cum fac majoritatea oamenilor în conversație.

A putea stoca și prelua date sună destul de generic și este adevărat. bazele de date sunt. Sunt o soluție generalizată pentru a se potrivi nevoilor care apar în mod obișnuit în aplicațiile software. Caracteristica cheie a unei baze de date este aceea că organizează datele într-un fel care este menit să fie utilizat de o aplicație / companie. Nu este doar o colecție de fișiere, ci este și un mod de a le organiza în contextul unei aplicații. Acest tip de nevoie apare tot timpul în software, în special în aplicațiile de internet care necesită stocare persistentă și acces online. De exemplu, dacă creați un serviciu de e-mail, trebuie să puteți stoca e-mailuri permanent și să permiteți utilizatorilor să preia e-mailurile. Trebuie să puteți căuta și sorta e-mailurile. Trebuie să puteți spune cu ușurință ce e-mailuri aparțin unui utilizator și așa mai departe. O bază de date este potrivită pentru aceasta.

Cam orice software are nevoie pentru a stoca și accesa date, dar inginerii software nu aleg întotdeauna să utilizeze o bază de date. Deci, dacă nu sunt întotdeauna necesare, ce scop servesc și cum știu când să folosească unul?

Din nou, voi încerca să folosesc o analogie, deși nu va fi perfectă. Imaginați-vă că scrieți o școală scurtă de două pagini pentru școală. Trebuie doar să citiți câteva capitole dintr-un manual despre un subiect pe care îl cunoașteți deja. În acest caz, s-ar putea să citiți capitolele și apoi să începeți imediat să scrieți lucrarea. Poate că vă veți referi la manual după cum este necesar. . Poate că veți nota câteva note pe o schiță. Oricum, nu e mare lucru.

Acum presupunem că trebuie să scrieți o teză bine cercetată care va avea 50 de pagini. Va trebui să cercetați folosind o duzină de manuale și să citați referințe. Acum, va trebui cu siguranță să vă organizați. Probabil că veți dori să fiți mai organizat și mai sârguincios în ceea ce privește modul în care scrieți note, modul în care utilizați marcajele în manuale și modul în care vă conturați lucrarea.

În primul scenariu, fiind super- organizat ar putea fi un pic excesiv și ar putea să vă încetinească. În cel de-al doilea scenariu, dacă nu ați fi organizat, nu ați putea face niciodată treaba corect. Undeva între aceste două scenarii este diferența dintre când o aplicație ar trebui să utilizeze o bază de date și atunci când ar putea face ceva mai ușor. Depinde de scenariu și de nevoile produsului / serviciului.

În acest moment, este normal să ne întrebăm, ce ” Este diferența dintre o bază de date și un sistem de fișiere? Ambele sunt utilizate pentru a stoca, organiza și prelua date nu?

Un sistem de fișiere (cum ar fi sistemul care stochează și prezintă fișiere pe computer) multe dintre aceleași lucruri pe care o bază de date este concepută să le facă. Stochează date pe termen lung. Vă permite să căutați datele. Puteți prelua datele și datele noi, modifica datele existente și șterge datele.

Diferența cheie este că un sistem de fișiere nu este destinat să organizeze datele pentru o anumită aplicație sau scop comercial. Nu înțelege prea multe despre structura datelor, altele decât cele de care are nevoie pentru a putea stoca și prelua fișiere. Fișierele nu sunt neapărat legate între ele.Nu depind neapărat unul de celălalt sau nu au nicio semnificație specială unul față de celălalt. În sistemul de fișiere al computerului dvs. aveți MP3 și, probabil, lucrări școlare pe care le-ați scris, fișiere de salvare a jocurilor video, e-mailuri, și imagini de la camera dvs. Un sistem de fișiere vă ajută să organizați aceste fișiere și să le utilizați cu diferite aplicații, dar nu există o înțelegere centrală care să le lege. Astfel, unele întrebări ar putea avea un sens pentru sistemul de fișiere, cum ar fi „Unde este MP3-ul meu preferat?” „Care fișier este cel mai mare?” „Care fișier este cel mai nou?” „Unde sunt toate pozele mele de anul trecut?” Cu toate acestea, există alte întrebări care nu au sens pentru un sistem de fișiere precum „Este MP3 mai valoros decât acest .doc Word?”

O bază de date, pe de altă parte, este menită să stocheze date care toate, cel puțin într-un fel, se referă la un scop comun. Astfel, bazele de date sunt bune pentru organizarea informațiilor într-un mod care facilitează răspunsul la întrebări precum „Cine este cel mai valoros client al meu?” „Care este produsul cel mai popular? „” Cine sunt toți furnizorii și care sunt toți clienții care depind de disponibilitatea produsului A? „Etc

Deci, pentru a folosi din nou o analogie, un sistem de fișiere ar putea fi ca cabinetul dvs. de fișiere la Îl folosiți pentru a stoca documentele dvs. fiscale, evidențele de întreținere a mașinii dvs., buletinele de evidență ale copiilor dvs., chitanțele de care doriți să vă agățați, facturi etc. Vă păstrează lucrurile organizate, astfel încât să știți cum să le găsiți, dar nu tot ce este acolo este neapărat legat de orice alt lucru de acolo.

O bază de date seamănă mai degrabă cu o grămadă de dulapuri la un birou de contabilitate care deține doar facturi. Probabil că toate sunt organizate într-un fel. Ca și cum toate creanțele sunt pe un perete și toate datoriile pe celălalt. Acestea ar putea fi ordonate în funcție de dată, sau poate în ordine alfabetică de către plătitor sau beneficiar. Ar putea exista câțiva indici fișierele din față care vă spun în ce cabinet să căutați fișierele asociate cu plătitorii care au un anumit nume și poate un alt index după numărul de telefon sau un alt index care listează toate facturile în valoare de peste 200.000 USD sau ceva. afacerii și sunt organizate într-un mod mai util scopului afacerii.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *