Mesterséges intelligencia, magyarul.
Az eredeti közleményekből.

Gyorsabb párhuzamos adatbetöltést javasol a Neo4j új módszere

2026. szeptember 23.Forrás: Neo4j
Gyorsabb párhuzamos adatbetöltést javasol a Neo4j új módszere
Kép: Neo4j

A Neo4j olyan adatbetöltési eljárást ismertetett, amely a szerver rendelkezésére álló munkások számához igazítja a partíciókat. A módszer külön kezeli az egymástól független, illetve az azonos csomópontkészletből származó kapcsolatok importját.

A lényeg röviden
  • A partíciók számát a betöltéshez rendelt munkások száma határozza meg.
  • A csomópontok partícióit hashfüggvénnyel számítják ki.
  • Diszjunkt csomópontkészleteknél ciklikus átlók szervezik kötegekbe a kapcsolatokat.
  • Azonos csomópontkészletnél körkörös párosítás és k-1 színezés kezeli a kötegeket.
  • A Neo4j későbbi cikkben ígéri a gyakorlati példát és a forráskódot.

A korábbi megközelítés korlátai

A Neo4j szeptember 23-án közzétett cikke egy korábbi, Eric MONK által bemutatott technikát általánosít. Az eredeti megoldás a forrás- és célcsomópont-azonosítók utolsó számjegyeiből hozott létre egymást nem átfedő partíciókat, majd a partíciópárokat ciklikus átlók mentén kötegekbe rendezte.

Így több köteg párhuzamosan tölthető be anélkül, hogy ugyanazokat a csomópontkészleteket egy időben érnék el a folyamatok. A Neo4j szerint azonban ennek két fontos korlátja van. A partíciók száma nem igazodik a rendelkezésre álló munkásokhoz, és az átlós kötegezés nem biztonságos akkor, ha a forrás- és célcsomópontok ugyanahhoz a készlethez tartoznak, például Person csomópontok közötti kapcsolatok létrehozásakor.

A partíciók számát a munkásokhoz igazítják

Az új javaslatban a partíciók meghatározása hashfüggvénnyel történik. Optimális import esetén a partition_count értéke megegyezik az adatbetöltéshez rendelt szerver munkásainak számával. Ez elegendő, egymástól független feladatot biztosít a munkakészlet számára, miközben a partícióhatárokat nem kell előre rögzíteni a forrásadatokban.

A csomóponttáblákban az export_part értéke a csomópont azonosítójának hash-értéke, modulo a partíciók számával. Ha a partíciók száma 5, akkor legfeljebb öt érték jöhet létre, 0-tól 4-ig. A kapcsolattáblákban külön számítják ki a forrás- és célpartíciót, majd ezekből áll össze az exportpartíció. Öt partíció esetén így legfeljebb 5², vagyis 25 partíciópár keletkezik, 0 - 0 és 4 - 4 között.

A Neo4j szerint az eljárás determinisztikus, és garantálja az egymástól független partíciókat. A partíciók mérete azonban nem feltétlenül lesz azonos, mert ez az adatok szerkezetétől függ.

Eltérő algoritmus kell az azonos csomópontkészlethez

A csomópontok importja egyszerűbb: minden munkás egy partíciót tölt be, így az összes partíció egy időben importálható. A kapcsolatoknál viszont a forrás- és célcsomópontok viszonya határozza meg, milyen kötegek dolgozhatók fel párhuzamosan.

Ha a két csomópontkészlet diszjunkt, a négyzetes partíciómátrix ciklikus átlói használhatók. Minden átló olyan partíciópárokat tartalmaz, amelyekben egy forrás- és egy célpartíció csak egyszer szerepel, így a köteg párhuzamosan feldolgozható holtpont és zárolási ütközés nélkül.

Azonos csomópontkészlet esetén a Neo4j a k-1 színezési algoritmust és körkörös, round-robin párosítást javasol. Az egyes kötegekben szereplő párok nem osztoznak partíción. Az önmagukra hivatkozó párok együtt feldolgozhatók, a forward és reverse párokat viszont külön kötegbe kell helyezni, mivel ugyanazokat a fizikai partíciókat használják. A Neo4j szerint ez az eljárás kevesebb partíciót tartalmaz kötegenként, ezért kevesebb feldolgozási lépést igényel az átlós módszernél.

A mostani írás az elméleti alapokat és az ötleteket ismerteti. A vállalat közlése szerint egy következő cikkben mutatják be a gyakorlati alkalmazást és a forráskódot tartalmazó tárolót.

Kapcsolódó hírek

Így osztja meg az AI21 a közel 10 ezer GPU-t a csapatai között
Chipek és infrastruktúra2026. október 4.

Így osztja meg az AI21 a közel 10 ezer GPU-t a csapatai között

Az AI21 egy mintegy 10 ezer GPU-t kezelő, több csapat által használt GKE-fürtön váltott kézi erőforrás-egyeztetésről automatizált feladatütemezésre. A rendszer központi…

A CoreWeave új SUNK képességekkel gyorsítaná az AI-klaszterek építését
Termékek és eszközök2026. október 2.

A CoreWeave új SUNK képességekkel gyorsítaná az AI-klaszterek építését

A CoreWeave új képességekkel bővíti SUNK nevű AI-tréningrendszerét. A SUNK self-service és a SUNK Anywhere célja, hogy egyszerűbbé tegye a hosszú, nagy számításigényű…

A CoreWeave 42 adatközpontig bővítette AI-felhőjét
Chipek és infrastruktúra2026. október 2.

A CoreWeave 42 adatközpontig bővítette AI-felhőjét

A CoreWeave 2025-ben felgyorsította globális terjeszkedését, és az AI-rendszerek fejlesztését, futtatását és folyamatos üzemeltetését támogató felhőplatformmá bővítette…