Beste antwoord
OQ: Wat is een voorbeeld van een tijdelijke database?
Temporele database is vergelijkbaar met ruimtelijke database met dat verschil dat ruimtelijke db datatypes, relaties en functies ondersteunt die gerelateerd zijn aan ruimte, terwijl temporele db gericht is op hetzelfde gerelateerd aan tijd. Zeggen dat het gegevenstype in tijdelijke database tijdsperiode zou kunnen zijn en dat de taaluitbreiding (van typische SQL) functies zou kunnen zijn zoals binnen\_periode, perioden\_overlap, perioden\_ exclusief enz. De primaire sleutel in de tijdelijke database kan in de tijd veranderen (moet alleen constant zijn binnen tijd, niet voor altijd en altijd).
U kunt de tijdelijke database gedeeltelijk simuleren in de normale relationele database door alle tabellen uit te breiden met kolommen “date from” en “date to” die specificeren van wanneer tot wanneer gegeven record is geldige informatie. Zoals:
Mark, blond, 2000–03–21, 2048–12–11
Mark, kaal, 2048–12–12, 2048–12–23
Mark, wigged, 2048–12–24,…
Temporal db zou je nog wat meer moeten laten doen. U zou bijvoorbeeld gemakkelijk unieke beperking over een bepaalde periode moeten kunnen aangeven in de betekenis van een niet-over-sprongperiode, die meer is dan alleen UQ (kapsel, datum van, datum tot).
Antwoord
Laat me eerst wat terminologie ophelderen. Een databasebeheersysteem is software die is ontworpen om gegevens zodanig te ordenen en beheren dat ze gemakkelijk langdurig kunnen worden opgeslagen, doorzocht (opgevraagd), opgehaald en gewijzigd. Een database is een instantie van deze opslag. Dus naar analogie is een databasebeheersysteem als het concept van de bibliotheekkaartcatalogus, en een database is als een bepaalde kast met kaarten van een bepaalde bibliotheek. Ik zal het algemene concept echter “databases” noemen, zoals de meeste mensen dat doen in gesprekken.
In staat zijn om gegevens op te slaan en op te halen, klinkt vrij algemeen, en dat is waar. Dat is precies wat databases zijn. Ze zijn een algemene oplossing om te voldoen aan de behoeften die vaak voorkomen in softwaretoepassingen. Het belangrijkste kenmerk van een database is dat deze gegevens op een of andere manier organiseert die bedoeld zijn voor gebruik door een applicatie / bedrijf. Het is niet alleen een verzameling bestanden; het is ook een manier om ze binnen de context van een applicatie te ordenen. Dit soort behoeften komt de hele tijd naar voren in software, met name internettoepassingen die permanente opslag en online toegang vereisen. Als u bijvoorbeeld een e-mailservice maakt, moet u e-mails permanent kunnen opslaan en gebruikers in staat stellen de e-mails op te halen. U moet de e-mails kunnen zoeken en sorteren. U moet gemakkelijk kunnen zien welke e-mails bij welke gebruiker horen, enzovoort. Een database is hiervoor ideaal.
Vrijwel elke software heeft gegevens nodig om gegevens op te slaan en er toegang toe te krijgen, maar software-ingenieurs kiezen er niet altijd voor om een database te gebruiken. Dus als ze niet altijd nodig zijn, wat doel dienen ze, en hoe weten ze wanneer ze er een moeten gebruiken?
Nou nogmaals, ik zal proberen een analogie te gebruiken, hoewel die niet perfect zal zijn. Stel je voor dat je een kort onderzoekspaper van twee paginas voor school schrijft. U hoeft slechts een paar hoofdstukken uit een leerboek te lezen over een onderwerp dat u al kent. In dit geval kunt u de hoofdstukken lezen en dan meteen beginnen met het schrijven van de paper. Misschien verwijs u zo nodig naar het leerboek. . Misschien maak je een paar aantekeningen over een schets. Hoe dan ook, geen probleem.
Stel nu dat je een grondig onderzochte scriptie moet schrijven van 50 paginas lang. Je zult onderzoek moeten doen aan de hand van een dozijn leerboeken en referenties moeten citeren. Nu zul je zeker wat georganiseerd moeten worden. U zult waarschijnlijk meer georganiseerd en ijverig willen zijn over de manier waarop u notities schrijft, hoe u bladwijzers gebruikt in de leerboeken en hoe u uw paper schetst.
In het eerste scenario, super- georganiseerd kan een beetje overdreven zijn en u misschien vertragen. In het tweede scenario, als u “niet zo georganiseerd” was, zou u het werk nooit goed kunnen doen. Ergens tussen deze twee scenarios in is het verschil tussen wanneer een applicatie zou een database moeten gebruiken en wanneer het waarschijnlijk iets lichters zou kunnen doen. Het hangt af van het scenario en de behoeften van het product / de dienst.
Op dit punt is het normaal om te vragen, wat is het verschil tussen een database en een bestandssysteem? Ze worden beide gebruikt om gegevens op te slaan, te ordenen en op te halen, toch?
Een bestandssysteem (zoals het systeem dat bestanden opslaat en presenteert op uw computer) veel van dezelfde dingen waarvoor een database is ontworpen. Het slaat gegevens op lange termijn op. Hiermee kunt u de gegevens doorzoeken. U kunt de gegevens en nieuwe gegevens ophalen, bestaande gegevens wijzigen en gegevens verwijderen.
Het belangrijkste verschil is dat een bestandssysteem niet bedoeld is om de gegevens te ordenen voor een specifieke toepassing of zakelijk doel. Het begrijpt niet veel van de structuur van de gegevens, behalve wat nodig is om bestanden op te kunnen slaan en op te halen. De bestanden zijn niet noodzakelijkerwijs aan elkaar gerelateerd.Ze zijn niet per se afhankelijk van elkaar of hebben een bepaalde betekenis met betrekking tot elkaar. In het bestandssysteem van je computer heb je mp3 s, en misschien schoolpapieren die je hebt geschreven, videogame-opslagbestanden, e-mails, en fotos van je camera. Een bestandssysteem helpt u deze bestanden te ordenen en te gebruiken met verschillende toepassingen, maar er is geen centraal begrip om ze samen te binden. Sommige vragen kunnen dus logisch zijn, zoals “Waar is mijn favoriete mp3?” “Welk bestand is het grootste?” “Welk bestand is het nieuwste?” Waar zijn al mijn fotos van vorig jaar? Er zijn echter andere vragen die niet kloppen voor een bestandssysteem, zoals “Is deze MP3 waardevoller dan deze Word .doc?”
Een database daarentegen is bedoeld om gegevens op te slaan die ze hebben allemaal, althans op de een of andere manier, betrekking op een gemeenschappelijk doel. Databases zijn dus goed voor het ordenen van informatie op een manier die het gemakkelijk maakt om vragen te beantwoorden als Wie is mijn meest waardevolle klant? Welk product is het populairst? “” Wie zijn alle leveranciers en wie zijn alle klanten die ervan afhankelijk zijn dat product A beschikbaar is? “Enz.
Dus om nog maar eens een vergelijking te gebruiken, een bestandssysteem kan lijken op uw archiefkast bij U gebruikt het om uw belastingdocumenten op te slaan, de onderhoudsgegevens voor uw auto, de rapporten van uw kinderen, bonnen die u wilt bewaren, rekeningen, enz. Het houdt uw spullen georganiseerd zodat u weet hoe u het kunt vinden, maar niet alles wat erin staat, is noodzakelijkerwijs gerelateerd aan al het andere dat erin staat.
Een database lijkt meer op bijvoorbeeld een stel archiefkasten bij een acc een kantoor waar alleen facturen staan. Ze zijn waarschijnlijk allemaal op de een of andere manier georganiseerd. Zoals alle vorderingen tegen de ene muur staan en alle schulden aan de andere. Ze kunnen op datum zijn gerangschikt, of misschien alfabetisch op betaler of begunstigde. Er kunnen enkele indexcijfers zijn bestanden aan de voorkant die u vertellen in welk kast u moet zoeken naar bestanden die zijn gekoppeld aan betalers die een bepaalde naam hebben en misschien een andere index op telefoonnummer, of een andere index met alle facturen ter waarde van meer dan $ 200.000 of zoiets. De bestanden zijn allemaal gerelateerd voor het bedrijf en zijn georganiseerd op een manier die nuttiger is voor het doel van het bedrijf.