Grunderna i Neo4j-grafdatabaser · Lektion

Noder, relationer och egenskaper

Förstå grafens byggstenar: noder (entiteter), relationer (kopplingar) och egenskaper (attribut) som beskriver dem.

Lektion 1 av 411 steg

Noder, relationer och egenskaper är en gratis lektion i Grunderna i Neo4j-grafdatabaser på CoddyKit. Detta är lektion 1 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Grunderna i Neo4j-grafdatabaser, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Grunderna i Neo4j-grafdatabaser innehåller totalt 4 lektioner.

Grafens byggstenar

Välkommen till Cypher-grunderna! För att fråga en grafdatabas som Neo4j behöver ni först förstå dess centrala komponenter.

Tänk på grafer som kraftfulla sätt att modellera kopplingar i verkligheten. De byggs av tre huvuddelar:

  • Noder: era entiteter eller ”saker”
  • Relationer: hur dessa ”saker” är kopplade
  • Egenskaper: beskrivningar av noder och relationer

Noder: grafens substantiv

Noder är de grundläggande entiteterna i er graf. De representerar verkliga objekt, personer, platser eller begrepp.

I ett socialt nätverk skulle till exempel ’Alice’ eller ’New York’ vara noder. I en e-handelsgraf skulle ’Product A’ eller ’Customer B’ vara noder.

Noder kan ha etiketter för kategorisering, till exempel ’Person’ eller ’City’.

Nodetiketter: kategorisera era data

Etiketter delar in noder i grupper. En nod kan ha en eller flera etiketter. Det hjälper er att organisera och fråga grafen effektivt.

En nod som representerar ’Alice’ kan till exempel ha etiketten :Person. En nod för ’Neo4j’ kan ha etiketten :Database.

Låt oss skapa en enkel nod med en etikett:

CREATE (:Person {name: 'Alice'})

Egenskaper: beskrivande attribut

Egenskaper är nyckel-värde-par som beskriver noder eller relationer. De lagrar specifika detaljer om en entitet eller koppling.

För en :Person-nod kan egenskaperna vara name: 'Alice', age: 30 eller city: 'London'. För en :Product-nod kan egenskaperna vara price: 19.99 eller category: 'Electronics'.

Så här skapar ni en nod med flera egenskaper:

CREATE (:Movie {
  title: 'Inception',
  releaseYear: 2010,
  genre: 'Sci-Fi'
})

Relationer: koppla ihop punkterna

Relationer definierar hur noder är kopplade till varandra. De är grafens ”verb” och visar interaktioner eller samband.

Till skillnad från relationella tabeller, där kopplingar är implicita via främmande nycklar, är grafrelationer explicita förstaklassobjekt.

Relationer har alltid en typ och en riktning.

Relationstyper: vilken koppling gäller?

Varje relation har en typ som beskriver kopplingens innebörd. Exempel är ’FRIENDS_WITH’, ’ACTED_IN’ och ’OWNS’.

Relationstyper är avgörande för att förstå och fråga grafen. De hjälper er att ange exakt vilken typ av koppling ni söker.

Låt oss skapa två noder och koppla ihop dem med en relation:

CREATE (p1:Person {name: 'Bob'})
CREATE (p2:Person {name: 'Charlie'})
CREATE (p1)-[:FRIENDS_WITH]->(p2)

Relationens riktning spelar roll

Relationer har en riktning, vilket betyder att de går från en nod till en annan. Riktningen är viktig för att förstå kopplingens sammanhang.

  • (Alice)-[:LIKES]->(Bob): Alice tycker om Bob
  • (Bob)-[:LIKES]->(Alice): Bob tycker om Alice

Övergångarna --> och <-- anger riktningen. Om ingen riktning anges (--) betraktas relationen som oriktad i frågan, men den lagras alltid med en riktning.

Egenskaper även för relationer!

Precis som noder kan relationer också ha egenskaper. Dessa egenskaper beskriver själva relationen, inte de kopplade noderna.

En [:WORKS_FOR]-relation kan till exempel ha egenskapen startDate: '2020-01-15'. En [:RATED]-relation kan ha egenskapen score: 5.

Här är ett exempel på hur ni lägger till egenskaper i en relation:

CREATE (u:User {name: 'Eve'})
CREATE (p:Product {id: 'P123'})
CREATE (u)-[:PURCHASED {
  date: '2023-10-26',
  quantity: 2
}]->(p)

Visualisera ett grafmönster

Låt oss se hur dessa komponenter ser ut tillsammans i en enkel grafstruktur. Föreställ er en person som recenserar en film:

(Person)-[:REVIEWED {rating: 4}]->(Movie)

Här är:

  • (Person) och (Movie) noder med sina respektive etiketter.
  • [:REVIEWED] är relationstypen och visar riktningen.
  • {rating: 4} är en egenskap hos relationen REVIEWED.

Denna struktur är otroligt flexibel när ni modellerar komplexa domäner!

Kontrollera era kunskaper

Vilka är de tre grundläggande byggstenarna i en grafdatabas som Neo4j?

Sammanfattning: grafens grunder

Bra jobbat! I den här lektionen har ni lärt er om de grundläggande delarna i en grafdatabas:

  • Noder är era entiteter och kategoriseras med etiketter.
  • Relationer kopplar ihop noder och definieras av en typ och en riktning.
  • Egenskaper är nyckel-värde-par som lägger till beskrivande detaljer för både noder och relationer.

Det är viktigt att förstå dessa begrepp för att bygga och fråga kraftfulla grafmodeller. Nästa steg är att gå djupare in på hur ni skapar faktiska data med Cyphers CREATE-sats!

Gratis att börja

Lär dig Grunderna i Neo4j-grafdatabaser med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
12
Lektioner
48

Vanliga frågor

Är lektionen ”Noder, relationer och egenskaper” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Grunderna i Neo4j-grafdatabaser, inklusive ”Noder, relationer och egenskaper”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Grunderna i Neo4j-grafdatabaser innehåller totalt 4 lektioner.

Vad lär jag mig i ”Noder, relationer och egenskaper”?

Förstå grafens byggstenar: noder (entiteter), relationer (kopplingar) och egenskaper (attribut) som beskriver dem. Ni övar på Grunderna i Neo4j-grafdatabaser med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Grunderna i Neo4j-grafdatabaser?

Du behöver inga förkunskaper. Utbildningen i Grunderna i Neo4j-grafdatabaser på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”Noder, relationer och egenskaper”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Grunderna i Neo4j-grafdatabaser-lektionen?

Ja. Varje Grunderna i Neo4j-grafdatabaser-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Noder, relationer och egenskaper
  2. Skapa data med Cypher CREATE
  3. Matcha mönster med Cypher MATCH
  4. Returnera och forma resultat med RETURN
← Tillbaka till Grunderna i Neo4j-grafdatabaser