Mi az a gráfadatbázis?

A gráfadatbázis olyan adatbázistípus, amely táblák és sorok helyett csomópontokként (entitások) és élekként (kapcsolatokként) jeleníti meg az információkat. Ez a struktúra megkönnyíti az adatok összetett kapcsolatainak és mintáinak felderítését.

A gráfadatbázis leggyakrabban használt típusa implementálja a címkézett tulajdonsággráf (LPG) modellt: az entitások (csomópontok) és a kapcsolatok (élek) címkékkel és tulajdonságokkal (kulcs-érték párokkal) rendelkezhetnek. Ez a rugalmas modell séma- és sémaalapú kialakításokat is lehetővé tesz, és lehetővé teszi összetett kapcsolatok kifejezését. Mivel a kapcsolatok explicit módon élekként vannak tárolva, a lekérdezések az élek mentén haladva járják be a kapcsolatokat, ezzel elkerülve a drága illesztések számítását.

Megjegyzés:

A cikkben szereplő példák a közösségi hálózat gráfadatkészletét használják.

A Graph-adatbázis alapfogalmai

A gráfadatbázis három alapvető építőelembe rendezi az adatokat:

  • A csomópontok entitásokat , például személyeket, termékeket vagy helyeket jelölnek. A csomópontok olyan címkéket és tulajdonságokat tartalmazhatnak, amelyek az attribútumaikat írják le. Előfordulhat például, hogy egy Person csomópont olyan tulajdonságokkal rendelkezik, mint a firstName, lastNameés age.
  • Az élek az entitások csatlakoztatásának módját jelölik, például FRIENDS_WITH, PURCHASEDvagy LOCATED_IN. Az élek tulajdonságokat és címkéket is tartalmazhatnak a kapcsolat metaadatainak rögzítéséhez.
  • A tulajdonságok a csomópontokhoz és élekhez csatolják a részleteket (például egy személy nevét vagy egy él dátumát).

Hogyan működik a kapcsolatok lekérdezése

A gráfos lekérdezések úgy kérnek le összekapcsolt adatokat, hogy elindulnak egy kezdő csomópontból, áthaladnak annak szomszédain, majd továbbhaladnak azok szomszédaihoz, és így tovább. A bejárás költsége az érintett élek számától (a helyi környéktől) függ, nem pedig az adathalmaz teljes méretétől. Ez a jellemző természetessé és hatékonnyá teszi az útvonalakkal, kapcsolatokat és mintákat illető kérdések kifejezését, mint például a barátok barátai, a legrövidebb útvonalak vagy a több ugrásos függőségek.

A gráfadatbázisok mintaalapú lekérdezési nyelveket, például a Graph Query Language (GQL) nyelvet használnak ezeknek a bejárásoknak a tömör leírására. Ugyanaz a nemzetközi munkacsoport, amely felügyeli az SQL-t (ISO/IEC 39075) szabványosítja a GQL-t, amely a gráflekérdezést a meglévő adatbázisszabványokhoz igazítja.

Példa (minta egyezés a GQL-vel):

MATCH (p:Person {firstName: "Annemarie"})-[:knows]->(friend)-[:likes]->(c:Comment)
RETURN c
ORDER BY c.creationDate
LIMIT 100

A minta a következőképpen olvasható: az Annemarie személycsomópontjából kiindulva kövesse a :knows éleket minden barátcsomópont felé, majd kövesse a :likes éleket a kapcsolódó :Comment csomópontokig. Adja vissza a létrehozási dátumuk szerint rendezett megjegyzések közül a 100 legújabbat.

Mesterséges intelligenciával támogatott gráfok érvelése (előzetes verzió)

A gráfadatbázisok természetes módon illeszkednek az AI-érveléshez, mivel a nyelvi modelleknek pontosan kell megválaszolniuk a több ugrásos kérdéseket. A Microsoft Fabric Fabric Data Agent támogatja a gráfot adatforrásként, így a felhasználók természetes nyelvi kérdéseket tehetnek fel, amelyekre az ügynök válaszol a gráf lekérdezésével. Az NL2GQL a természetes nyelv GQL-vé való lefordításával kapcsolatos részletekért tekintse meg a gráfalapú AI-érvelési közleményt.

Gráfadatmodell és sémarugalmasság

A gráfadatmodellek sémaalapúak: rugalmas modellel kezdheti, és idővel formálissá teheti. A Microsoft Fabric gráfban a szerkezeti változásoknak – például új tulajdonságok hozzáadásának, címkék módosításának vagy kapcsolattípusok módosításának – jelenleg az adatok új modellbe való betöltésére van szükség. Ez a megközelítés csökkenti az adatok duplikálásának szükségességét, és lehetővé teszi, hogy a csapatok több forrásból származó adatokat egyesítsenek anélkül, hogy komoly előzetes újratervezést kellene elvégezniük. A Microsoft Fabric gráfban használt adatmodellről további információt a Címkés tulajdonságdiagramok című témakörben talál.

A gráfadatbázisok gyakori felhasználási módjai

A gráfadatbázisok szorosan igazodnak azokhoz a tartományokhoz, ahol a kapcsolatok meghajtják az értéket, például:

  • Közösségi hálózatok – modellkapcsolatok az emberek és interakcióik között
  • Tudásgráfok – fogalmak, entitások és tények összekapcsolása szemantikai kereséshez és érveléshez
  • Javaslati rendszerek – felhasználói elemek közötti interakciók átjárása személyre szabott javaslatok felszínre hozásához
  • Csalási és kockázati hálózatok – gyanús minták észlelése fiókok, tranzakciók és eszközök között
  • Hálózati és informatikai topológia – kiszolgálók, szolgáltatások és infrastruktúra-összetevők közötti függőségek leképezése
  • Ellátási lánc függőségelemzése – az összetevők forrásának és a szállítók közötti kapcsolatoknak a nyomon követése
  • Gráfalapú lekéréses kiterjesztett generáció (RAG) – gráfstruktúra használata tudásbázisként olyan AI-ügynökök számára, amelyek több ugrásos érvelést igényelnek magyarázható, megalapozott válaszokkal

Ezekben a forgatókönyvekben kevesebb a kérdés az egyes rekordokról, és arról, hogy hány entitás kapcsolódik egymáshoz, és hogyan kommunikálnak több ugráson keresztül.

Mikor érdemes gráfadatbázist figyelembe venni?

A gráfadatbázis jól illeszkedik, ha a kapcsolatok vezetik a megválaszolandó alapvető kérdéseket. Gráfadatbázis kiválasztása a következő esetekben:

  • Az elsődleges kérdések a csatlakoztatott adatok elérési útjait, környékeit és mintáit érintik.
  • A ugrások száma változó vagy előre nem ismert.
  • Egyesítenie kell és el kell navigálnia a különböző adathalmazok közötti kapcsolatokat.

Ha rendszeresen tesz fel ilyen jellegű kérdéseket, a gráfmodellek természetes illeszkedésnek számítanak.

Hogyan hasonlítja össze a Microsoft Fabric grafikonja az önálló gráfadatbázisokkal?

Az adatok gráfként való ábrázolása és egy különálló, különálló gráfadatbázisban való tárolása gyakran ETL-t (kinyerést, átalakítást, terhelést) és szabályozási többletterhelést jelent. Ezzel szemben a Microsoft Fabric grafikonja közvetlenül a OneLake-en működik, ami csökkenti vagy kiküszöböli a különálló ETL-folyamatok és adatkettőződések szükségességét. Fontolja meg ezeket a kompromisszumokat:

  • Adatáthelyezés és duplikáció: Az önálló gráfadatbázisok általában adatok kinyerését, átalakítását és betöltését igénylik egy külön tárolóba, ami növeli a bonyolultságot, és duplikált adathalmazokhoz vezethet. A Graph a OneLake-en működik, így áthelyezés nélkül is modellezheti és lekérdezheti a csatlakoztatott adatokat.
  • Üzemeltetési költségek: Az önálló gráfrétegek különálló klaszterekként vagy szolgáltatásokként futnak, és gyakran magukban foglalják a kihasználatlan kapacitás költségeit. A gráfban a számítási feladatok készletezett kapacitásegységeket (CU-kat) használnak fel automatikus leskálázási és központosított metrikákkal, ami leegyszerűsíti a műveleteket, és csökkentheti a költségeket.
  • Méretezhetőség: Egyes különálló gráfadatbázisok a vertikális felskálázástól vagy a gyártófüggő klaszterezéstől függenek. A Graph nagy méretű gráfokhoz készült, és horizontális skálázást használ több feldolgozóra a nagy adatos számítási feladatok hatékony kezeléséhez.
  • Eszközök és készségek: A szállítóspecifikus gráfrendszerek speciális nyelveket és különálló elemzési keretrendszereket igényelhetnek. A Graph egységes modellezést, szabványalapú lekérdezést (GQL), beépített gráfelemzési algoritmusokat, BI- és AI-integrációt biztosít, beleértve a Fabric adatügynököt támogatást a natural nyelvi gráflekérdezéshez (előzetes verzió) és az alacsony/kód nélküli felderítő eszközökhöz. Ezek a képességek lehetővé teszik, hogy a felhasználók szélesebb köre működjön együtt a csatlakoztatott adatokkal.
  • Irányítás és biztonság: A különálló gráftelepítések független szabályozási és biztonsági beállításokat igényelnek. A Graph a OneLake-szabályozást, a vonalvezetést és a munkaterület szerepköralapú hozzáférés-vezérlését (RBAC) használja, így a megfelelőség, a naplózás és az engedélyek továbbra is összhangban maradnak a Fabric környezet többi részével.