AWS Neptune -opdatering: Machine learning, datavidenskab og fremtiden for grafdatabaser

0
164

 George Anadiotis

Af George Anadiotis for Big on Data | 30. juli 2021 – 12:00 GMT (13:00 BST) | Emne: Big Data Analytics

Datamodeller og forespørgselssprog er ganske vist noget tørre emner for folk, der ikke er i den indre kreds af kendere. Selvom grafdatamodeller og forespørgselssprog ikke er nogen undtagelse fra denne regel, har vi forsøgt at holde styr på udviklingen i dette område af en hovedårsag.

Graf er det hurtigst voksende område i det største segment inden for virksomhedssoftware – databaser. Case in point: En række af de seneste finansieringsrunder, der kulminerede med Neo4js $ 325 mio. Series F -finansieringsrunde, bragte sin værdiansættelse til over $ 2 mia.

Neo4j er blandt de grafiske databaseleverandører, der har været længst, og det er nu også det bedst finansierede. Men det betyder ikke, at det er den eneste, der er værd at holde øje med. AWS kom ind på grafdatabasemarkedet i 2018 med Neptune, og det har gjort store fremskridt siden.

I dag afslører AWS understøttelse af openCypher, open source-forespørgselssproget baseret på Neo4js Cypher. Vi benytter lejligheden til at pakke ud, hvad dette betyder, og hvordan det er relateret til fremtiden for grafdatabaser, samt besøge interessant udvikling i Neptuns støtte til maskinlæring og datavidenskab.

Bygge broer med openCypher

Udviklere kan nu bruge openCypher, et populært grafforespørgselssprog, med Amazon Neptune, der giver flere valgmuligheder til at bygge eller migrere grafapplikationer. Neptune har nu understøttelse af de tre mest populære grafiske forespørgselssprog: Cypher, Gremlin og SPARQL.

Derudover tilføjer Neptune understøttelse af Bolt, Neo4js binære protokol. Hvad dette antyder er evnen til at give kunderne mulighed for at udnytte velkendt og eksisterende værktøj – Neo4's værktøj, for at være mere specifik. Men der er flere grunde til, at dette er vigtigt.

Der er to hoveddatamodeller, der bruges til at modellere grafer: RDF og Labeled Property Graph (LPG). Neptun understøtter begge dele, idet SPARQL fungerer som forespørgselssproget for RDF, og Gremlin fungerer som forespørgselssproget for LPG. Gremlin har meget at gøre for det, da det har næsten allestedsnærværende støtte og tilbyder en masse kontrol over grafgennemgange. Men det kan også være et problem.

Gremlin, en del af Apache Tinkerpop -projektet, er et bydende forespørgselssprog. Dette betyder, at i modsætning til deklarative forespørgselssprog som SQL, Cypher og SPARQL, udtrykker Gremlin -forespørgsler ikke bare, hvad de skal hente, men de skal også angive, hvordan. I den henseende ligner Gremlin mere et programmeringssprog.

 awsneptunearchitect =

Amazon Neptune -arkitektur. Neptuns muligheder forstærkes nu af støtten til openCypher, hvilket bringer mere fleksibilitet til sit arsenal.

AWS

Ikke alle brugere er trygge ved at bruge Gremlin i alle scenarier. Hvis de ville bruge LPG -modellen, var det dog alt, hvad de skulle gå efter. Amazon, trods ansættelse af nogle centrale bidragydere til Apache Tinkerpop, synes at anerkende dette. Tilføjelse af support til openCypher gør arbejdet med LPG -motoren i Neptune mere tilgængeligt.

Neptuns understøttelse af LPG og RDF er mulig, fordi den er vært for to forskellige motorer under emhætten, en for hver datamodel. Tilføjelse af support til openCypher ændrer ikke på det – i hvert fald ikke endnu. Men RDF*kan. RDF*, også kendt som RDF Star, er en opdatering af RDF -standarden, der også gør det muligt at modellere LPG -grafer.

Der er løbende arbejde på dette område i både RDF og LPG arbejdsgrupper. Udover Amazon med Neptun tilføjer andre RDF -leverandører også eksperimentel support til openCypher. Det større billede her er det igangværende arbejde, der er godkendt af ISO, om GQL.

GQL er en ny standard for grafiske forespørgselssprog, der sigter mod at forene det, der i dag er et fragmenteret landskab. Forventningen er, at GQL vil gøre for grafdatabaser, hvad SQL gjorde for relationelle databaser. Amazon er aktiv i både RDF* og GQL indsatsen.

Til sidst skulle det gøre det muligt for Neptun at forene sine to i øjeblikket forskellige motorer. Men historien her er større end bare Amazon. Løftet er, at hvad Amazon vil kunne gøre under emhætten, bør alle grafdatabasebrugere kunne gøre på tværs af deres systemer: brug en enkelt datamodel og et enkelt forespørgselssprog.

Data videnskabs- og maskinlæringsfunktioner: Notebooks og grafneurale netværk

GQL har stadig et stykke vej at gå. Standardiseringsbestræbelser er altid komplicerede, og vedtagelse er heller ikke garanteret overalt. Men Neptun er også et eksempel på en anden vigtig udvikling inden for grafdatabaser: integration af datavidenskab og maskinlæringsfunktioner.

Udvikling af grafapplikationer og navigation i grafresultater lettes i høj grad af IDE'er og værktøjer til visuel udforskning, der er skræddersyet til dette formål. Mens mange grafdatabaseleverandører har indarbejdet indbyggede værktøjer til disse formål i deres tilbud, var Neptune udelukkende afhængig af tredjepartsintegrationer indtil for nylig.

Den måde Neptuns team valgte at løse dette hul var ved at udvikle AWS Graph Notebook. Notesbøger er meget populære blandt datavidenskabsfolk og maskinlæringsudøvere, så de kan mikse og matche kode, data, visualisering og dokumentation og arbejde sammen.

AWS Graph Notebook er en open source Python -pakke til Jupyter notebooks til understøttelse af grafvisualisering. Det understøtter både Gremlin og SPARQL, og vi forventer, at det i sidste ende også vil understøtte openCypher. Selvom Amazon oprindeligt blev vedtaget af datavidenskab og maskinlæringsmængder, ser det ud til, at Amazon tror på, at notebooks også vil følge med blandt udviklere.

 amazonneptuneml.jpg

Neptune ML er det kodenavn, Amazon har givet til integrationen mellem sin Neptun -grafdatabase og grafiske maskinlæringsfunktioner i SageMaker og DGL.

AWS

Vi må vente på at se, om det væddemål kan betale sig. Det, der er sikkert, er imidlertid, at det at tilbyde notebook -understøttelse styrker Neptuns appel til data science og machine learning use cases. Men det er ikke alt, Neptune har at tilbyde der – indtast Neptune ML.

Amazon fremhæver Neptune ML som en måde at lave lette, hurtige og præcise forudsigelser på grafer med grafneurale netværk (GNN'er). Neptune ML drives af Amazon SageMaker og open source Deep Graph Library (DGL), som Amazon bidrager til.

GNN'er er en relativt ny gren af ​​Deep Learning, med den interessante funktion, at de udnytter den ekstra kontekstuelle oplysninger, som modellering af data som en graf kan modellere til at træne Deep Learning -algoritmer. GNN'er betragtes som topmoderne inden for maskinlæring, og de kan have bedre nøjagtighed ved at lave forudsigelser sammenlignet med konventionelle neurale netværk.

Integrering af GNN'er med grafdatabaser er et naturligt match. GNN'er kan bruges til forudsigelser på node-niveau og kant-niveau, dvs. de kan udlede yderligere data og forbindelser i grafer. De kan bruges til at uddanne modeller til at udlede egenskaber til brugssager som f.eks. Bedrageri, forudsigelse af annoncer, kunde 360, anbefalinger, identitetsopløsning og videndiagramgrafik.

Igen er Neptun ikke den eneste, der har indarbejdet notesbøger og maskinlæring i sit tilbud. Udover at henvende sig til datavidenskaben og maskinlæringsmængden kan disse funktioner også opgradere udvikleren og slutbrugeroplevelsen. Bedre værktøjer, bedre data, bedre analyser-de resulterer alle i bedre slutbrugerapplikationer. Det er det, alle leverandører stræber efter.

læs dette

 Alt hvad du behøver at vide om AI

Alt hvad du behøver at vide om AI

En executive guide til kunstig intelligens, fra maskinlæring og generel AI til neurale netværk.

Læs mere

Relaterede emner:

Digital Transformation Robotics Internet of Things Innovation Enterprise Software CXO  George Anadiotis

Af George Anadiotis for Big on Data | 30. juli 2021 – 12:00 GMT (13:00 BST) | Emne: Big Data Analytics