Overleg:Database

Pagina-inhoud wordt niet ondersteund in andere talen.
Uit Wikipedia, de vrije encyclopedie
(Doorverwezen vanaf Overleg:Databank)

Ik begrijp de tekst over het "netwerkmodel" en "relationele databases" niet. Datgene wat hier bij "netwerkmodel" staat is m.i. een "relationele database". Het "hiërarchisch model" staat bij mij bekend als een recursieve tabel, of eventueel iets als XML. De tekst voor "relationele databases" is nogal duister. Met name de opmerking "rijen worden hier relaties genoemd". Dat lijkt me onjuist. Ook deze zin: "Anders dan bij netwerk databases worden de verbanden tussen tabellen niet expliciet gedefinieerd" lijkt me onjuist. een "constraint" is een expliciete definitie van een relatie in een relationeel model. Een "inner join" is een expliciete definitie van een relatie in een relationeel model.

beste :"rijen worden hier relaties genoemd" lijkt je me misschien onjuist, maar het is inderdaad zo. Een relationele database kan uit 1 tabel bestaan, de term relationeel slaat op de rijen NIET op de verbindingen tussen tabellen.

De zin "Bewerkingen worden uitgevoerd op basis van de relationele algebra" komt me ook nogal duister voor, maar goed, ik heb Ted Codd niet meegemaakt, maar werkt wel dagelijks met de SQL taal. Ik verbaas me nogal dat Ted Codd iets als "relationele algebra" nodig had, want relaties tussen tabellen zijn zodanig voor de hand liggend dat je er echt geen wiskunde voor gestudeerd hoeft te hebben. Het was in elk geval een van de eerste dingen die bij me opkwam toen ik - jaren geleden - voor het eerst iets met een database probeerde. Verder alle eer aan Ted Codd overigens hoor.

Ik zou aan degene die de tekst geschreven heeft, of iemand die het begrijpt willen vragen om of de tekst toe te lichten, of de situatie te verduidelijken. Volgens deze pagina: http://unixspace.com/context/databases.html is het "networkmodel" niets anders dan een many-to-many relation, dus hetgeen wat in het spraakgebruik een "koppeltabel" of "linktable" wordt genoemd. iets wat in een relationele database als SQL Server gewoon mogelijk is.

In de hele tekst is het eigenlijk onduidelijk of het gaat om een database-product of een hoeveelheid gestructureerde gegevens. Voor beide wordt het woord "database" gebruikt. MS SQL Server is in mijn optiek een database-product dat specifiek gebouwd is om met relationele data te werken. Kortweg een "relationele database". Het is duidelijk dat XML beter geschikt is voor hiërarchische data dat MS SQL Server, en dat MS SQL Server beter geschikt is voor relationele data dan XML. Dat neemt niet weg dat beide soorten datamodellen in beide soorten "database producten" kunnen worden gebruikt. En natuurlijk kan je "platte gegevens" in beide opslaan. Maar platte gegevens kunnen ook als platte tekst worden opgeslagen. Noem je dat dan ook een "database"

--Taka 4 okt 2004 16:17 (CEST)[reageer]

Hiërarchische en Netwerkmodellen[brontekst bewerken]

Het platte model zal ik maar overslaan, dat is eigenlijk geen database volgens de definitie. Zie Overleg:Platte database Eventueel kunnen we iets neerzetten in de trant van

Het platte model is een gewoon computerbestand

--

Voor wat betreft de andere twee. Het is m.i. precies andersom: Het netwerkmodel is een bijzondere vorm van het hiërarchische. In het uiteindelijke artikel wil ik er wel wat uitgebreider op in gaan. Hier alvast wat plaatjes en een korte tekst om over te discuzeuren :).

--

CODASYL heeft vroeger een hiërarchisch model ontwikkeld met Data Description Language (DDL), Data Manipulation Language (DML) e.d. In DDL beschrijf je de (infra)structuur van de Database. Dit is het werkterrein van de Database Administrator (DBA). DML, met name het werk van de ontwikkelaar, dient via een interface om via procedures als het toevoegen, veranderen of weghalen van entiteiten de vulling van de Database te regelen.

Het is vooral in gebruik (geweest) op Mainframes en heeft daar diverse namen en architecturen. Ook de terminologie verschilt.

Links het hiërarchische, rechts het netwerk model. Het verschil is dat je in de laatste de entiteittypen Artikelen aan Gebruikers en/of aan elkaar koppelt zonder dat je via wiki het hele domein door hoeft of een sleutelwaarde op moet geven.

Beide bestaan ze uit entiteittypen gekoppeld aan onderliggende entiteittypen die steeds naar de volgende (eventueel ook naar de vorige) en meestal ook naar het enige bovenliggende. Elk entiteittype heeft koppelingsadressen beheerd door de software en waarschijnlijk gegevens, zoals sleutelwaarde voor de Owner (Wiki) en soms ook voor de Member rijen (Artikel en Gebruiker). Samen heet dat een Set. Het geheel noemen we een (Sub)Schema van de Database. Een subschema is een gedeelte van het totaal schema, dat we op zichzelf Totaal Subschema noemen. Het subschema is een beschrijving van de Database toegespitst op een bepaalde Programmeertaal en/of applicatie (toepassing).

Voorbeeld: Het Schema van de Database beschrijft alle Wiki's. Eén van de subschema's bevat alleen de Gebruikers met hun Activiteiten, terwijl een andere alleen Artikelen bevat. Ook kun je in een Subschema bepaalde Attributen weglaten, bijvoorbeeld Ge_adr_mail en Ge_adr_huis. Attributen zijn voor de applicatie zichtbare gegevens. Wiki heeft onder andere Wi_soort ('Wikipedia', 'Wiktionary' etc.), Wi_taal ('nl', 'en' etc) Wi_soort en Wi_taal vormen samen de sleutelwaarde. Hiermee bepaalt het DBMS (Data Base Management Systeem) de fysieke addressering.

--Patio 18 apr 2005 06:05 (CEST)[reageer]

Bovenstaande schema's zijn goed bruikbaar. Ik moet zeggen dat ik theoretisch niet goed onderlegd ben in welke databasemodellen er zijn. Dat had je misschien al begrepen uit mijn commentaar bovenaan deze pagina. Mijn ervaring bestaat uit een jaar of 8 database-driven websites bouwen, en dan vrijwel uitsluitend met MS SQL Server. Ik ben dan ook blij dat er nu iemand is die wel over theoretische kennis beschikt. Met datgene waar ik meen iets over te weten werk ik graag mee aan de verbetering van de artikelen over databases. Ik heb er wel enigszins over nagedacht, en zoals ik al elders heb genoemd, zie ik een opzet met aan elkaar gelinkte artikelen wel zitten (zoals met Sjabloon:Webdesign - aan de meeste artikelen daarin heb ik behoorlijk gesleuteld). Wat ik daarbij voor ogen heb is dat het artikel database inleidend is en (tot op zekere hoogte) voor leken te volgen, en vooral verwijst naar artikelen met meer diepgang. In het artikel database kan bijvoorbeeld ook informatie worden gegeven over de maatschappelijke kanten van koppelingen van databases.
Qua werkwijze denk ik dat er geen reden is om top-down te werken, als er maar vooraf een idee is van hoe de artikelen in elkaar grijpen. Want dan is duidelijk welke artikelen er kunnen komen en waar ze over gaan. Ik wil wel een opzetje maken voor een sjabloon. Opmerkingen welkom.
Taka 15 apr 2005 19:00 (CEST)[reageer]
Opzetje gemaakt, zie Gebruiker:Taka/Sjabloon:Database. Taka 15 apr 2005 19:22 (CEST)[reageer]

Ik heb het artikel aangepast aan hoe het m.i. bter is: een algemeen begrijpelijk (niet al te technisch) verhaal over databases, met nadruk op de maatschappelijke kan. Daar is genoeg over te vertellen. De technische dingen moeten maar in afzonderlijke artikelen worden besproken, daar kan wel naar worden verwezen natuurlijk. Taka 15 mei 2005 17:43 (CEST)[reageer]

Goed plan, Taka. Zodra ik wat meer tijd heb zal ik mijn schema's in Datamodel inpassen. Misschien kan iemand anders dat ook doen en tegelijk de tekst wat meer op leken aanpassen?
--Patio 17 mei 2005 10:42 (CEST)[reageer]

Ik vindt dta het moeilijk is uit gelegd en dat er meer voorbelden in moet komen.

Meer voorbeelden is lastig, aangezien het artikel niet bedoeld is als een handleiding of cursusboek. Zo moet het niet gelezen worden.
Dat het moeilijk is uitgelegd is mogelijk, het kan ongetwijfeld beter. Hoewel de definitie "digitaal opgeslagen archief, ingericht met het oog op flexibele raadpleging en gebruik" toch heel duidelijk is. Het kan dan twee kanten op: een technisch verhaal - en dat is in dit artikel niet echt de bedoeling - en een maatschappelijk verhaal - dat is belangrijker voor dit artikel. Taka 5 okt 2005 16:38 (CEST)[reageer]

Verschil dataset/gegevensverzameling en database[brontekst bewerken]

Hoi, er is ook een artikel dataset, wat is het grote verschil met een database? In het artikel 'dataset' wordt het woord 'database' niet één keer genoemd, laat staan dat een wikilink naar dit artikel is opgenomen. Andersom ook: in het artikel 'database' staan de woorden 'dataset' en 'gegevensverzameling' niet één keer genoemd, en er zijn ook geen wikilinks naar dat artikel opgenomen. (Ik heb dit ook op de overlegpagina van 'dataset' gezet.) Laurier (Overleg) 10 mrt 2016 08:08 (CET)[reageer]