Wat is een hiërarchisch databasemodel?
Het hiërarchische databasemodel is een van de eerste databasemodellen die brede acceptatie krijgt, voornamelijk vanwege het vermogen om een deel van de gegevens aan een ander te relateren. In dit model, dat boomachtig van structuur is, bestaan er verschillende niveaus van hiërarchieën die beginnen met een bovenliggend knooppunt en leiden naar een onderliggend knooppunt. Als een bovenliggend knooppunt bijvoorbeeld 'Naam' is, is het onderliggende knooppunt een lijst met namen en is het volgende niveau specifieke informatie over die naam. Hoewel flexibel toen het voor het eerst uitkwam, wordt het hiërarchische databasemodel zelden gebruikt in moderne databases, omdat moderne databases sterkere relationele groeperingsmogelijkheden hebben.
In het hiërarchische databasemodel is alles gerelateerd aan een hiërarchie. Er zijn een paar overkoepelende ouderknooppunten op het hoogste niveau van de database. Wanneer een gebruiker het knooppunt selecteert, verschijnt een specifieker knooppunt en, wanneer de gebruiker op een van die knooppunten klikt, verschijnt informatie die nog specifieker is. Als de bovenste hiërarchie bijvoorbeeld 'Oefening' is, kunnen de volgende knooppunten 'Gewichtheffen' en 'Cardio' zijn, en dan kunnen er spiergroepen zijn voor de eerste en hardloopmethoden voor de laatste, en dan nog meer specifieke informatie daarna.
Het hiërarchische databasemodel werd in de jaren zestig gemaakt door IBM® en wordt beschouwd als het eerste databasemodel dat ooit is geïmplementeerd. In de begindagen van databases werd dit als uiterst flexibel beschouwd, omdat databaseontwerpers eenvoudig relaties tussen verschillende knooppunten konden laten zien en gebruikers gemakkelijk gegevens konden invoeren. De hiërarchische database werd bekend als een één-op-veel-database, omdat één knooppunt gerelateerd was aan vele andere.
Toen de relationele database uitkwam, verloor het hiërarchische databasemodel populariteit. Dit komt omdat de hiërarchische database, in vergelijking met de relationele database, niet flexibel is. Het kan slechts één knooppunt relateren aan vele andere, terwijl het relationele model verschillende knooppunten kan relateren aan verscheidene andere knooppunten. Nieuwere versies van de hiërarchische database stellen ontwerpers in staat om een ouderknooppunt te relateren aan verschillende andere knooppunten, maar dit is moeilijker te programmeren dan de relationele database.
Hoewel het niet wordt gebruikt voor de meeste moderne databases, wordt het hiërarchische databasemodel vanaf 2011 nog steeds voor sommige toepassingen gebruikt. Voor servers die zijn gemaakt om gegevens voor lange periodes te bewaren zonder dat de gegevens worden aangeraakt, wordt meestal een hiërarchische database gevonden, omdat dat het databasemodel dat werd gebruikt toen de server werd gemaakt. Een andere reden om het hiërarchische model te gebruiken, is dat het, in combinatie met een eenvoudige database met slechts enkele records, minder tijd kost om te programmeren.