Grafiekdatabases: updates over hun groeiende populariteit

Graph-databases werden erkend als een database-ontwerp in 2006, toen Tim Bernes-Lee ontwikkelde het concept van een enorme database met de naam ‘linked data’. Dit concept werd de basis voor het opslaan van grafieken en zou kunnen laten zien hoe organisaties, mensen en items of entiteiten met elkaar zijn verbonden, of ‘onderling verbonden’ zijn, en de aard van de relaties. Grafiek databases sla die gegevens en de bijbehorende verbindingen op, zodat netwerkgegevens eenvoudig worden omgezet in bruikbare inzichten. Bovendien zijn grafische databases meestal gebaseerd op NoSQL en kunnen ze vrij gemakkelijk worden uitgebreid of geschaald. Vanwege hun ontwerp bieden grafische databases een uitstekende analyse van onderlinge verbindingen, wat hun recente toename in gebruik voor het delven van gegevens verklaart.

Relationele (of SQL) databases, die verschillende rechthoekige rasters met informatie weergeven, lijken vaak erg op standaard spreadsheets. Elk raster toont een verschillend aantal rijen en kolommen, met verschillende soorten informatie. (Relationele databases kunnen een pijlsysteem gebruiken, maar dit wordt vrij snel overweldigend en verwarrend.) Niet-relationeel grafische databases, aan de andere kant, zal doorgaans bellen met de naam weergeven (die een organisatie, persoon of object vertegenwoordigen) met eenvoudige pijlen die de verbinding symboliseren (in veel gevallen staat er een woord boven de pijl die de relatie beschrijft). Relationele databases zijn in de loop der jaren populair gebleven omdat ze goedkoop, nauwkeurig en consistent zijn. Het proces van het tot stand brengen van relaties (of joins) in een relationele database kan echter tijdrovend en duur zijn.

Een algemeen overzicht van grafische databases is te vinden hier. Vóór 2014 werden grafische databases over het algemeen gezien als trager, moeilijker om mee te werken en veel beperkter dan relationele databases. Bovendien werden ze beschouwd als “academische” databases, ontworpen om logische analysesystemen te bouwen, en niet noodzakelijkerwijs nuttig voor zakelijke doeleinden. Hoewel graph-databases bruikbare resultaten konden opleveren, waren ze over het algemeen ingewikkeld, tijdrovend en niet erg gebruiksvriendelijk.

In 2014 ondersteunden een aantal technologische innovaties de evolutie van grafische databases. Neo4j (een vroege open-source grafiekdatabase, en nog steeds behoorlijk populair) begon aan populariteit te winnen voor bepaalde soorten wiskundige grafische verwerking. Tegelijkertijd had hardware (door middel van cloud computing) voldoende snelheid gewonnen om veel van de vroege prestatie-uitdagingen op te lossen. In 2013 werd een grafische querytaal (genaamd SPARQL) kwam met een editie die veel eerdere problemen van graph-databases oploste. Bovendien heeft de ontwikkeling van JSON-datastores (CouchDB en MongoDB) geleid tot een aanzienlijke verbetering van de afhandeling van joins (een kernvereiste voor databases, maar vooral belangrijk voor grafische databases).

Rond 2014 begonnen ook een aantal bedrijven te experimenteren met grafische databases als een manier om problemen op te lossen die op bedrijfsniveau irriteerden (Metadata Management, Master Data Management, kennisnavigatie, etc.). Meer recentelijk zijn algoritmen voor machine learning opgenomen in het bouwen van grafische databases.

Gebruikers vriendelijkheid

Ondanks hun vreemde uiterlijk zijn grafische databases momenteel flexibeler dan meer traditionele relatiedatabases, omdat de relaties tussen items dat wel zijn weergegeven met eenvoudige pijlenof ‘randen’. De pijlen kunnen vriendschappen, zakelijke relaties en meer weergeven. De bubbels kunnen laten zien wie wat leuk vindt, of de doelen van het bedrijf.

Om hetzelfde te bereiken met een relationeel model zou het creëren van tijdrovende en dure joins nodig zijn. Bovendien zou het schema van een SQL-database moeten worden uitgebreid met de extra velden. Hoewel dit gemakkelijk kan worden gedaan met de meeste schaalbare grafische databases, missen SQL-indelingen hun schaalbaarheid.

Algoritmen voor Graph-databases

Een grafische database gebruikt algoritmen om het sorteren van alle gegevens gemakkelijker te maken. Een uitstekend voorbeeld hiervan kan worden getoond met de beruchte “Panama Papers-schandaal, ”Met onderzoek en ontdekking die duizenden lege vennootschappen omvatte. Deze ‘schelpen”Stond filmsterren, criminelen en zelfs de voormalige premier van IJsland, Sigmundur David Gunnlaugsson, toe om geld te verbergen op offshore bankrekeningen. Het gebruik van grafische databases en hun algoritmen maakte onderzoek naar deze shell-maatschappijen mogelijk.

Twee erg populair traversal algoritmen zijn de diepte eerst zoeken (DFS) en de breedte eerst zoeken (BFS). Het diepte-eerst-algoritme zal van een startknooppunt naar een eindknooppunt reizen en vervolgens de zoekopdracht herhalen, beginnend bij hetzelfde knooppunt, maar via een ander pad, totdat de vraag is beantwoord. Breedte-eerst zoekalgoritmen zoeken door grafieken laag voor laag te verkennen. Ze beginnen knooppunten te zoeken die een niveau dieper zijn dan het startknooppunt, gaan dan verder om knooppunten in de tweede laag te verkennen, en vervolgens naar diepte drie, enz., Totdat de hele grafiek is onderzocht. BFS vindt het kortste pad, terwijl DFS naar de basis van een substructuur reist en vervolgens terugloopt.

Over het algemeen zijn diepte-eerst-zoekopdrachten een goed idee bij het zoeken naar discrete stukjes informatie. Een ongeïnformeerde zoekopdracht is het meest basale niveau van diepte eerst. Dit type algoritmisch proces zoekt een pad naar het einde en keert dan terug naar het startknooppunt, waar het een ander pad probeert. Geïnformeerde zoekopdrachten, aan de andere kant, proberen de hoeveelheid zoeken te minimaliseren door algoritmen te gebruiken die niet teruggaan, of gebruiken een screeningproces om de paden en knooppunten voor de zoekopdracht te selecteren. Als gevolg hiervan zal een geïnformeerde zoekopdracht sneller plaatsvinden dan een ongeïnformeerde zoekopdracht. (Grafiekdoorlopen voeren doorgaans weloverwogen zoekopdrachten uit.)

Kunstmatige intelligentie, machine learning en grafische databases

Op het gebied van training kunnen grafieken context bieden machine learning (ML) en kunstmatige intelligentie (AI). Grafiektechnologie kan gegevens verbinden en relaties definiëren. Het proces van het verbeteren van AI met behulp van grafiektechnologie biedt een effectieve methode voor het trainen van geavanceerde AI- en ML-toepassingen.

Bovendien ondersteunen grafieken meer transparantie in de manier waarop AI beslissingen neemt. Dit proces wordt AI-verklaarbaarheid genoemd. Deze voordelen hebben geleid tot een groeiende voorkeur voor het gebruik van grafische databases voor training AI- en ML-toepassingen.

Jim Webber, de hoofdwetenschapper van Neo4j, had het volgende te zeggen over het onderwerp: “Machine learning-algoritmen helpen datawetenschappers de betekenis van datasets te ontdekken, en deze inzichten kunnen worden uitgedrukt als relaties tussen knooppunten in een grafiek. Graph-databases maken efficiënte opslag en doorstroming van informatie over relaties mogelijk. Daarom kunnen grafische gegevens de input of de output zijn van machine learning-verwerking. “

Populaire gebruiksscenario’s

Om concurrerend te blijven, moeten bedrijven stoppen met het louter verzamelen van datapunten. Ze moeten beginnen met het “verbinden” van de relaties die tussen de datapunten bestaan. Helaas behandelen de populaire relationele databasebeheersystemen (RDBMS) relaties tussen datapunten slecht. De tabelvormige SQL datamodellen gebruik starre schema’s, waardoor het moeilijk wordt om nieuwe verbindingen toe te voegen. Om deze gegevensrelaties te benutten, is een grafische database nodig.

Graph-databases slaan effectief de relaties op die tussen datapunten bestaan, en ze zijn flexibel genoeg om nieuwe soorten relaties toe te voegen en een datamodel aan te passen aan nieuwe zakelijke vereisten. Veel bekeerlingen zien grafische databases als de toekomst van online bedrijven. Dit zijn de belangrijkste use-cases voor moderne grafische databasetechnologieën:

  • Klant 360: Deze term is algemeen geassocieerd met SalesForce, maar het kan ook voor andere doeleinden als grafiekdatabase worden gebruikt. Het geeft een brede kijk op klanten, gebaseerd op de mensen (knooppunten) en hun relaties (randen).
  • Vermogensbeheer: Dit type systeem is erg handig omdat grafische databases zo gemakkelijk kunnen worden geschaald. In tegenstelling tot een relationeel databasebeheersysteem heeft het geen starre structuur, waardoor knooppunten, randen en andere eigenschappen naar believen kunnen worden toegevoegd.
  • Realtime aanbevelingsengines: Bij interactie met Amazon of Netflix wordt de kijk- en aankoopgeschiedenis van een persoon doorzocht en worden mensen die als “vergelijkbaar met jou” zijn aangeduid, gescand. Op basis van hun aankopen en interesses worden films en andere items aanbevolen die u vervolgens kunt bekijken of kopen. Als er bijvoorbeeld een iPhone is gekocht, kan een iPhone-hoes worden voorgesteld.
  • Master Data Management en Identity Management: Dit wordt vaak omschreven als een manier om ‘gegevenssilo’s. ” Het houdt gegevens bij, communiceert met behulp van metadata wie deze heeft en welke database deze heeft opgeslagen. In deze situatie worden de feitelijke gegevens opgeslagen in een SQL-database of een LDAP-database – niet in de grafische database.
  • Fraude detectie: Fraude detectielijkt over het algemeen redelijk goed te werken. Er wordt een melding van verdachte activiteit over een account verzonden en de eigenaar van het account (bijvoorbeeld met een creditcard) kan de afschrijving of activiteit weigeren. Dit wordt bereikt door verschillende algoritmen te gebruiken die zijn ontworpen om langs de knooppunten en randen van een grafiekmodel te kruipen op zoek naar verdachte activiteiten.

Fraudeanalyse kan ook worden toegepast op inbreuken op de cyberbeveiliging. Dit heeft als bijkomend voordeel dat analisten alleen gewaarschuwd worden voor gebeurtenissen die echt een belangrijke zorg zijn, zonder tijd en middelen te verspillen aan statistische toevallen. (Het gebruikt intelligentie in plaats van hardgecodeerde drempels.)

De toekomst van Graph-databases

Grafiek databases zijn opmerkelijk efficiënt in het communiceren van relaties tussen mensen of objecten. Nu ze zo zijn geëvolueerd dat ze gebruiksvriendelijk zijn, wordt de volledige kracht van hun vermogen om patronen te voorspellen onderzocht. Totdat deze technologie is vervangen door iets beters, zullen de sterke punten van grafische databases worden onderzocht en geavanceerd.

Afbeelding gebruikt onder licentie van Shutterstock.com