SQIREL-Graafdatabasesystemen
RSS Feed
Dit artikel is geplaatst op: c2d
In dit project bestuderen we het ontwerp van graaf-database systemen. De term ‘graaf’ betreft de wiskundige betekenis: het gaat om data die de vorm van een netwerk heeft. In sociale netwerken en telecommunicatienetwerken is dit duidelijk het geval, maar graaf-analyse is ook relevant voor data in de vorm van tabellen (omdat er via tabellen ook verbindingen tussen data elementen gevormd worden). Het SQIREL project richt zich op een aantal specifieke zaken: efficiënte data-structuren voor netwerken die snel en continue veranderen, het ontwerp van een query-taal voor graaf-databases, en het integreren van zoekwoordqueries daarin, waarbij de zoekfunctie gebaseerd is op de netwerkstructuur.
Graafdatabasesystemen zijn steeds meer in opkomst. Er zijn veel belangrijke toepassingen op het gebied van veiligheid, logistiek en medische fraude-detectie, waarin het belangrijk is om 'real-time' patronen in zulke grafen te detecteren zo snel als de berichten geplaatst worden en daar direct beslissingen op te nemen.
Begin 2023 spraken we met de projectleider van SQIREL prof. dr. Peter Boncz, senior onderzoeker bij de onderzoeksgroep Database Architectures van het CWI en verantwoordelijk voor de onderzoeksgroep Machine Learning, Database Architectures en Human-centered Data Analytics. Daarnaast is Peter hoogleraar aan de Vrije Universiteit Amsterdam in de bijzondere leerstoel Large-Scale Analytical Data Management. Peter is architect van de databasesystemen MonetDB en VectorWise (nu: Actian Vector) en is betrokken geweest bij vijf spin-off bedrijven op het gebied van datamanagement. Trots is Peter op Marcin Żukowski, één van de promovendi uit de CWI's Data Architectures groep als medeoprichter van Snowflake (dit bedrijf realiseerde in 2021 grootste IPO ooit op Nasdaq) en het naar Nederland halen van concurrent Databricks, dat in de afgelopen jaar meer dan 100 miljoen euro in de Amsterdamse R&D vestiging investeerde.
Partners
Het consortium bestaat uit academische toponderzoekers op het gebied van queryverwerking en Information Retrieval (IR), samen met twee use-case partners en twee technologiepartners: Neo Technology - het bedrijf achter graph database neo4j - en het eerdergenoemde Databricks, dat het populaire open source systeem Apache Spark ontwikkelde en nu als cloud-dienst aanbiedt.
Neo4J is marktleider op het gebied van graafdatabasesystemen. Radboud Universiteit is de tweede academische partner, onder leiding van prof. dr. ir. Arjen de Vries. Arjen houdt zich bezig met het ordenen van nodes in de graaf op basis van de daaraan gelinkte content, bijvoorbeeld op basis van keywords. Ook is het maken van een verrijkte graaf door bijvoorbeeld entiteiten te herkennen in de bijbehorende tekst, een onderwerp.
De use-cases partners zijn WizeNoze en Spinque. Wizenoze gebruikt de nieuwste AI-technologie om de grootste wereldwijde bibliotheek met samengestelde educatieve inhoud te bouwen en matcht die met elk curriculum. Spinque-technologie beantwoordt dagelijks miljoenen vragen in domeinen zoals e-commerce, overheid, enterprise search en cultureel erfgoed.
De Linked Data Benchmark Council (LDBC)
Een van de onderdelen van SQIREL is het leiden van Linked Data Benchmark Council (LDBC, ldbcouncil.org). LDBC is een non-profit samenwerking van onderzoeksinstellingen en industrie rond graafwerkingstechnologieën. LDBC bestaat uit leden uit zowel de industrie als de academische wereld, inclusief organisaties en individuen. “Vrijwel alle graaf database bedrijven zijn lid van LDBC, waaronder Neo4j, maar ook Amazon en Intel. De groep werkt samen om te bepalen wat benchmarks voor graaf database systemen zouden moeten inhouden. Hierdoor kunnen we elkaars technologie vergelijken om tot betere prestaties te komen en de technologie volwassener te maken.”
Er is binnen SQIREL aan een zowel een ‘business intelligence benchmark’ (test voor analytische graafqueries) als aan een tweede versie van ‘interactive benchmark’ gewerkt.
Twee talen
“Al die graafdatabases speken nu nog een andere taal wat natuurlijk erg lastig is bij benchmarks. Ieder systeem heeft zijn eigen querytaal en daardoor is het appels met peren vergelijken. Het is in ieders belang om tot een standaardtaal te komen. Na ons voorstel ‘G-CORE’ hebben we een samenwerking opgezet met ISO om twee nieuwe talen te ontwikkelen als uitbreiding op SQL.”
De werkgroepen van LDBC hebben in het project gewerkt aan twee graafquerytalen: de aankomende ISO GQL- en SQL/PGQ-talen, die respectievelijk in juni 2023 en maart 2024 zullen worden uitgebracht. “We zijn er natuurlijk trots op dat we in het SQIREL project een wereldwijde ISO standaard, namelijk de overal gebruikte SQL query taal, verbeteren.”
DuckDB
In SQIREL is gewerkt aan een eerste praktische implementatie van SQL/PGQ.
CWI heeft afgelopen jaren databasesysteem DuckDB ontwikkeld, dat enorm populair aan het worden is, met inmiddels meer dan 2 miljoen downloads per maand. CWI spin-off bedrijf DuckDB Labs werd in 2021 opgericht en stond vervolgens in 2022 aan de wieg van startup MotherDuck, die DuckDB wil verbinden met de cloud. “De bedoeling is dat DuckDB-gebruikers graafdata kunnen gebruiken en opslaan in DuckDB, in het lab ziet het er al goed uit maar het wordt nog spannend of we de zomer echt gaan halen. De software moet nog bruikbaar gemaakt worden om SQL/PGQ echt makkelijk in DuckDB te krijgen, daar zijn we nog wel een jaar mee bezig. We proberen ook nog een diepe integratie te maken met GNN-pakketten (Graph Neural Network).”
Een Graph Neural Network (GNN) is een klasse van kunstmatige neurale netwerken voor het verwerken van gegevens die kunnen worden weergegeven als grafen.
SQL/PGQ toekomst
SQIREL is inmiddels afgelopen, de postdoc en promovendus zijn klaar. Maar het onderzoek loopt gewoon door.
“Er is nog het nodige werk te verzetten, ik ben heel benieuwd naar de ontvangst in de databasemarkt. Er zit potentie in, veel organisaties hebben er baat bij, een spin-off zou zomaar kunnen.”
De lange termijn missie van Peter is een bloeiend ecosysteem rond R&D databasystemen in Nederland. “Dat er niet alleen onderwijs wordt gegeven over datasystemen maar dat er ook onderzoek wordt gedaan én industrie is die deze systemen ontwerpt.”