logo

Databaseontwerp

Databaseontwerp

Invoering

Wellicht zijn we het woord ' Database ' best vaak. Deze term legt een hoge nadruk op zijn armen. Vaker is het niet alleen gerelateerd aan het perspectief van de ontwikkelaar, maar wordt het ook vaak gebruikt bij niet-technische groepen of gemeenschappen. Technisch gezien is een database meer een opslagterm die wordt gebruikt om de relatie aan te duiden met verschillende vormen van gegevens die op één plek worden samengevoegd. We kunnen een database dus definiëren als een georganiseerde verzameling gegevens, doorgaans elektronisch opgeslagen en toegankelijk via computersystemen. Dit artikel is zeer gericht op het databaseontwerp en er werd vaak rekening gehouden met de associatie met citeerbare termen en methodologieën. We zullen die termen met betrekking tot databaseontwerp bespreken om de stukjes en beetjes te begrijpen. Laten we er meteen over praten.

Java-tekenreeks toevoegen

Wat is databaseontwerp?

Databaseontwerp kan in het algemeen worden gedefinieerd als een verzameling taken of processen die het ontwerp, de ontwikkeling, de implementatie en het onderhoud van een bedrijfsgegevensbeheersysteem verbeteren. Het ontwerpen van een goede database verlaagt de onderhoudskosten, waardoor de gegevensconsistentie wordt verbeterd en de kosteneffectieve maatregelen worden sterk beïnvloed in termen van schijfopslagruimte. Daarom moet er een briljant concept zijn voor het ontwerpen van een database. De ontwerper moet de beperkingen volgen en beslissen hoe de elementen met elkaar correleren en wat voor soort gegevens moeten worden opgeslagen.

De belangrijkste doelstellingen achter het ontwerpen van databases zijn het produceren van fysieke en logische ontwerpmodellen van het voorgestelde databasesysteem. Om dit uit te werken, is het logische model primair geconcentreerd op de vereisten van gegevens en moeten de overwegingen worden gemaakt in termen van monolithische overwegingen en daarom moeten de opgeslagen fysieke gegevens onafhankelijk van de fysieke omstandigheden worden opgeslagen. Aan de andere kant omvat het fysieke databaseontwerpmodel een vertaling van het logische ontwerpmodel van de database door controle te houden over fysieke media met behulp van hardwarebronnen en softwaresystemen zoals Database Management System (DBMS).

Waarom is databaseontwerp belangrijk?

De belangrijke overweging waarmee rekening kan worden gehouden bij het benadrukken van het belang van databaseontwerp kan worden uitgelegd in termen van de volgende punten hieronder.

  1. Databaseontwerpen bieden de blauwdrukken van hoe de gegevens in een systeem worden opgeslagen. Een goed ontwerp van een database heeft grote invloed op de algehele prestaties van elke applicatie.
  2. De ontwerpprincipes die voor een database zijn gedefinieerd, geven een duidelijk beeld van het gedrag van elke applicatie en hoe de verzoeken worden verwerkt.
  3. Een ander voorbeeld dat de nadruk legt op het databaseontwerp is dat een goed databaseontwerp aan alle eisen van gebruikers voldoet.
  4. Ten slotte wordt de verwerkingstijd van een applicatie aanzienlijk verkort als de beperkingen van het ontwerpen van een zeer efficiënte database op de juiste manier worden geïmplementeerd.

Levenscyclus

Hoewel de levenscyclus van een database geen belangrijke discussie is die in dit artikel verder moet worden gevoerd, omdat we ons concentreren op het databaseontwerp. Maar voordat we direct ingaan op de ontwerpmodellen die deel uitmaken van het databaseontwerp, is het belangrijk om de algehele workflow en levenscyclus van de database te begrijpen.

Vereistenanalyse

Allereerst moet er worden gepland wat de basisvereisten zijn van het project waarbij het ontwerp van de database verder moet worden uitgevoerd. Ze kunnen dus worden gedefinieerd als: -

Planning - Deze fase houdt zich bezig met het plannen van de gehele DDLC (Database Development Life Cycle). Voordat er verder wordt gegaan, wordt rekening gehouden met de strategische overwegingen.

Systeemdefinitie - Deze fase omvat de grenzen en reikwijdten van de juiste database na planning.

Database ontwerpen

De volgende stap bestaat uit het ontwerpen van de database, waarbij rekening wordt gehouden met de op de gebruiker gebaseerde vereisten en deze wordt opgesplitst in verschillende modellen, zodat er geen zware of zware afhankelijkheden van één aspect worden opgelegd. Daarom is er sprake geweest van een modelgerichte benadering, en dat is waar logische en fysieke modellen een cruciale rol spelen.

Fysiek model - Het fysieke model houdt zich bezig met de praktijken en implementaties van het logische model.

Java-basisprincipes

Logisch model - In deze fase gaat het vooral om het ontwikkelen van een model op basis van de voorgestelde eisen. Het hele model is op papier ontworpen zonder enige implementatie of DBMS-overwegingen.

Implementatie

De laatste stap omvat de implementatiemethoden en het controleren van het gedrag dat overeenkomt met onze vereisten. Dit wordt verzekerd door continue integratietests van de database met verschillende datasets en de conversie van gegevens in machinaal begrijpelijke taal. De manipulatie van gegevens is primair gericht op deze stappen waarbij query's worden uitgevoerd om te controleren of de applicatie naar tevredenheid is ontworpen of niet.

Gegevensconversie en laden - Deze sectie wordt gebruikt om gegevens van het oude naar het nieuwe systeem te importeren en om te zetten.

Testen - Deze fase houdt zich bezig met het identificeren van fouten in het nieuw geïmplementeerde systeem. Testen is een cruciale stap omdat het de database rechtstreeks controleert en de vereistenspecificaties vergelijkt.

Databaseontwerpproces

Het proces van het ontwerpen van een database omvat verschillende conceptuele benaderingen waarmee rekening moet worden gehouden. Een ideaal en goed gestructureerd databaseontwerp moet in staat zijn om:

javascript voor lus
  1. Bespaar schijfruimte door overbodige gegevens te elimineren.
  2. Behoudt de integriteit en nauwkeurigheid van de gegevens.
  3. Biedt gegevenstoegang op handige manieren.
  4. Vergelijking van logische en fysieke datamodellen.

Logisch

Een logisch datamodel beschrijft de gegevens doorgaans in zoveel mogelijk details, zonder dat u zich zorgen hoeft te maken over de fysieke implementaties in de database. Kenmerken van een logisch datamodel kunnen zijn:

  1. Alle entiteiten en relaties daartussen.
  2. Elke entiteit heeft goed gespecificeerde kenmerken.
  3. De primaire sleutel voor elke entiteit is gespecificeerd.
  4. Er worden externe sleutels gespecificeerd die worden gebruikt om een ​​relatie tussen verschillende entiteiten te identificeren.
  5. Op dit niveau vindt normalisatie plaats.

Een logisch model kan worden ontworpen met behulp van de volgende aanpak:

  1. Geef alle entiteiten met primaire sleutels op.
  2. Geef gelijktijdige relaties tussen verschillende entiteiten op.
  3. Ontdek de kenmerken van elke entiteit
  4. Los veel-op-veel-relaties op.
  5. Voer het normalisatieproces uit.

Een belangrijke factor na het volgen van de bovenstaande aanpak is ook om het ontwerp kritisch te onderzoeken op basis van het verzamelen van vereisten. Als de bovenstaande stappen strikt worden gevolgd, zijn er kansen om een ​​zeer efficiënt databaseontwerp te creëren dat de native aanpak volgt.

Om deze punten te begrijpen, bekijk de onderstaande afbeelding om een ​​duidelijk beeld te krijgen.

Als we het logische datamodel zoals weergegeven in de bovenstaande afbeelding vergelijken met enkele voorbeeldgegevens in het diagram, kunnen we met feiten komen dat er in een conceptueel datamodel geen primaire sleutel aanwezig is, terwijl een logisch datamodel primaire sleutels heeft voor al zijn attributen. Ook modelleren logische gegevens de dekkingsrelatie tussen verschillende entiteiten en bieden ze ruimte voor externe sleutels om relaties daartussen tot stand te brengen.

Fysiek

Een fysieke gegevensmodus vertegenwoordigt over het algemeen de aanpak of het concept van het ontwerpen van de database. Het belangrijkste doel van het fysieke datamodel is om alle structuren van de tafel inclusief de kolomnaam, kolomgegevenstype, beperkingen, sleutels (primair en extern) en de relatie tussen tabellen. Hieronder volgen de kenmerken van een fysiek datamodel:

  1. Specificeert alle kolommen en tabellen.
  2. Specificeert externe sleutels die doorgaans de relatie tussen tabellen definiëren.
  3. Op basis van gebruikersvereisten kan denormalisatie optreden.
  4. Omdat er rekening wordt gehouden met de fysieke overwegingen, zijn er eenvoudigere redenen voor verschillen dan een logisch model.
  5. Fysieke modellen kunnen voor verschillende RDBMS verschillend zijn. De gegevenstypekolom kan bijvoorbeeld verschillend zijn in MySQL en SQL Server.

Bij het ontwerpen van een fysiek datamodel moeten de volgende punten in overweging worden genomen:

  1. Converteer de entiteiten naar tabellen.
  2. Converteer de gedefinieerde relaties naar externe sleutels.
  3. Converteer de gegevensattributen naar kolommen.
  4. Wijzig de beperkingen van het datamodel op basis van fysieke vereisten.

Als we dit fysieke datamodel vergelijken met het logische met het vorige logische model, kunnen we de verschillen concluderen dat in een fysieke database entiteitsnamen worden beschouwd als tabelnamen en attributen als kolomnamen. Ook wordt het gegevenstype van elke kolom gedefinieerd in het fysieke model, afhankelijk van de feitelijk gebruikte database.

Woordenlijst

Entiteit - Een entiteit in de database kan worden gedefinieerd als abstracte gegevens die we in onze database opslaan. Bijvoorbeeld een klant, producten.

algoritme voor rsa

Kenmerken - Een attribuut is een gedetailleerde vorm van gegevens die bestaat uit entiteiten zoals lengte, naam, prijs, enz.

Relatie - Een relatie kan worden gedefinieerd als de verbinding tussen twee entiteiten of figuren. Een persoon kan bijvoorbeeld betrekking hebben op meerdere personen in een gezin.

Vreemde sleutel - Het fungeert als een verwijzing naar de primaire sleutel van een andere tabel. Een externe sleutel bevat kolommen met waarden die alleen bestaan ​​in de primaire sleutelkolom waarnaar ze verwijzen.

Hoofdsleutel - Een primaire sleutel is de aanwijzer van records die uniek is en niet nul, en wordt gebruikt om attributen van een tabel op unieke wijze te identificeren.

Java is leeg

Normalisatie - Een flexibel datamodel moet aan bepaalde regels voldoen. Het toepassen van deze regels heet normaliseren.

Samenvatting

Databaseontwerp is een methode voor het identificeren van de hiaten en kansen bij het ontwerpen van een juiste gebruiksmethode. Het is het hoofdonderdeel van een systeem dat een blauwdruk geeft van de gegevens en het gedrag ervan binnen het systeem. Een goed databaseontwerp krijgt altijd prioriteit omdat de gebruikerseisen buitensporig hoog worden gehouden en het opvolgen van de beperkende praktijken van het ontwerpen van een database zou alleen maar een kans kunnen zijn om de gevraagde efficiëntie te verkrijgen. Bovendien leerden we ook afzonderlijk over de verschillende ontwerpmodellen die het ideale databaseontwerp weergeven, samen met de grenzeloze discussie over hun eigenschappen en hoe we er gebruik van kunnen maken. Verder hebben we geleerd hoe de levenscyclus van een database het ontwerp van de database bepaalt en hoe we het concept van ontwerp in de levenscyclusmethoden kunnen plaatsen, zodat efficiënte en zeer geavanceerde databases kunnen worden ontworpen op basis van de gebruikersvereisten.