Vad är en relationsdatabas?
Om du har arbetat med databaser ett tag, är chansen stor att du började din karriär med en relationsdatabas. Exempel på relationsdatabaser är Microsoft Access, MySql, Oracle, etc.
En relationsdatabas är en konventionell databas som använder tabeller för att lagra data. I en relationsdatabas definieras varje fältdatatyp. Det vill säga om du definierar ett visst fält för att bara acceptera siffror, till exempel ålder på en person, kommer det fältet inte att acceptera något tecken från a-z.
Vad är en icke-relationell databas?
Innan vi diskuterar helt vad en icke-relationell databas är, är det nödvändigt att definiera några nyckelterminologier som kan hjälpa oss att bättre förstå en icke-relationell databas och hur den fungerar. Dessa är:
- Nyckel-värde-par.
- Dokument.
- Samlingar.
Nyckel-värdepar
Nyckel-värdepar är identifierare och motsvarande värden. Ett enkelt sätt att veta hur detta fungerar är förutsatt att man går in i en bar och frågar efter en servitör. "Servitören" i detta scenario är identifieraren medan namnet på servitören, till exempel "Bhagya", är värdet. Så i JSON-format kan detta representeras som visas nedan.
{
"waiter": "Bhagya Indimagedara"
}
Vad är ett dokument?
Dokument är en uppsättning JSON-data. Det är i grunden en uppsättning nyckel-värdepar som ger dig detaljerad information om en enhet. Nedan är ett exempel på ett dokument för vårt servitörsexempel. Den innehåller personlig information om servitören.
{
"id": 1,
"name": "Bhagya Indimagedara",
"username": "bhagya",
"email": "[email protected]",
"phone": "+947623496905",
"website": "bhagya.org"
}
Vad är en samling?
Samlingar är en uppsättning dokument. Det är information om mer än en enhet. I en relationsdatabas är samlingar så kallade tabeller.
[
{
"id": 1,
"name": "Bhagya Indimagedara",
"username": "bhagya",
"email": "[email protected]",
"phone": "+947623496905",
"website": "bhagya.org",
},
{
"id": 2,
"name": "Nimesh Indimagedara",
"username": "Nimezzz",
"email": "[email protected]",
"phone": "+94710876322",
"website": "nimesh.net",
},
{
"id": 3,
"name": "Nethmini",
"username": "nethmini",
"email": "[email protected]",
"phone": "+9476245555533",
"website": "nethmini.info",
}
]
Så med de ovan nämnda definierade termerna kan vi definiera en icke-relationell databas som en databas som lagrar data i JSON-liknande format vilket uppnås genom nyckel-värdepar. Exempel på icke-relationella databaser är MongoDB, Redis, Couchbase, etc.
Komma igång med MongoDB?
MongoDB är en icke-relationell databas. Det vill säga, den lagrar inte data i kolumner och rader utan i BSON-format. Det är en databas med öppen källkod grundad 2007. Applikationer med öppen källkod är programvara vars kodbas är öppen för bidrag från andra utvecklare.
Att arbeta med MongoDB kan vara i två varianter. Vi kan antingen komma åt den online med MongoDB-atlas eller ladda ner den lokalt på vår dator. För lokala nedladdningar har vi två utgåvor som är företags- och communityutgåvor. Enterprise-utgåvan är den betalda versionen medan communityversionen kan användas gratis, uppenbarligen med begränsade möjligheter jämfört med den förra.
Vi kan komma åt det online via
• MongoDB-skal
• MongoDB-kompass
Registrering för MongoDB Atlas
Innan du använder något av verktygen för att börja utföra databasoperationer måste du registrera ett konto hos MongoDB Atlas. Det är en molndatabas, det vill säga allt istället för att vara värd för din egen server, du behöver bara registrera dig och den tar hand om vad du behöver göra i backend. För att skapa ett atlas-konto, följ stegen nedan
- Gå till mongodb.com
- För övning, klicka på alternativet Prova gratis. Detta gör att du kan arbeta med Atlas i utvecklingssyfte.
- Ett biodataformulär kommer upp, fyll i de nödvändiga uppgifterna. Du kan också använda ditt Gmail-konto för att registrera dig.
- Närnäst loggar du in med de inloggningsuppgifter du just skapade
- Du kan nu fortsätta med att distribuera ett gratis kluster genom att klicka på Bygg ett kluster.
- Tre olika alternativ är tillgängliga för dig, det dedikerade och det serverlösa alternativet är båda betalversioner, för utvecklingsändamål, klicka på den delade versionen.
- Du kan nu fortsätta att välja en molnleverantör och region.
- Klicka på knappen Skapa kluster.
- Efter registreringen måste du skapa ett användarnamn och lösenord vid sidan av att möjliggöra databasåtkomst.
- Klicka på databasåtkomst. Det kommer att uppmana dig att lägga till en databasanvändare.
- Ange önskat användarnamn och lösenord.
- Klicka på nätverksåtkomst i den vänstra rutan.
- Klicka på Lägg till IP-adress.
- Du kan välja att tillåta specifika IP-adresser, eller för utvecklingsändamål kan du bara tillåta åtkomst var som helst.
- Klicka på bekräfta. Nu kan du fortsätta att använda MongoDB Shell eller Compass.
Använda MongoDB-skal
MongoDB-skalet är en kommandoradsmiljö som kan användas för att komma åt din databas.
Använda MongoDB-kompass
MongoDB Compass är ett verktyg som MongoDB-skal som kan användas för att interagera med vår databas. Men till skillnad från MongoDB-skalet som i första hand är ett kommandotolksgränssnitt, har kompass ett grafiskt användargränssnitt som gör det lätt att arbeta med.
För att ladda ner och arbeta med kompass, följ instruktionerna nedan.
- Ladda ned och installera.
- Gå tillbaka till din Atlas-hemsida och klicka på anslut.
- Klicka på anslut med MongoDB Compass.
- Kopiera anslutningssträngen från Atlas och klistra in den i filsökvägen som visas nedan.
- Klicka på Anslut.
Om din anslutning lyckas bör du se att alla skapade databaser kommer att listas. Du kan se dem genom att klicka på var och en. Och du kan också skapa en ny databas genom att klicka på knappen Skapa databas.
MongoDB-kompass låter dig skapa din databas, samling och dokument på ett mycket sömlöst sätt. Om du vill utforska mer kan du hänvisa till den officiella dokumentationen. För den här handledningen kommer vi att fokusera på MongoDB-skalet som är lite komplext. Så låt oss titta på hur vi kan utföra CRUD-operationer med MongoDB-skalet.
Utföra CRUD-operationer på vår databas
CRUD är en akronym för att skapa, läsa, uppdatera och ta bort i programmering. För att en person ska kunna utföra läs-, uppdaterings- eller raderingsoperationen måste en post skapas initialt i databasen. Att skapa en post är att lägga till data om en enhet. Läsoperation innebär att hämta eller visa poster i databasen. Uppdateringsoperationen är att göra ändringar i posten som visas. Ta bort operation innebär att ta bort en specifik post.