Skip to content

ekulno/dldi

Repository files navigation

Dynamic Linked-Data Index

Source code repository of the Dynamic Linked-Data Index (DLDI), a storage backend for Linked Data. Developed as part of my master's project.

Purpose

There is a need for a persistable and queryable linked-data format which supports performant updates. HDT satisfies this, except it does not support performant data removals. This software should satisfy this niche.

Discontinued since Trident solves the problem in a better way (simultaneous queries over different static structures with on-the-fly mergeable results, combined with merges of the structures in background processes).

Features

  • Generating a DLDI from plain-text linked-data files.
  • Composing a DLDI by combining multiple existing DLDIs, as removals or additions.
  • Term prefix queries in a given triple-term position.
  • Term prefix queries for any combination of triple-term positions.
  • Triple pattern queries.

Development status

  • Needs code quality improvements / cleanups.
  • Needs extensive testing, through unit tests or otherwise.
  • Needs benchmarking and comparison against other linked data indexes/storage formats.

Building

./bin/build

Usage

./Release/dldi --help

Testing

./bin/test
./tests/merge-test-1/run.sh

Emulating the CI locally

TODO set up actual CI.

DOCKER_BUILDKIT=1 docker build --target ci .

Pushing to local docker registry

This is needed for running the benchmark.

DOCKER_BUILDKIT=1 docker build --target ci -t dldi:latest . 

About

Dynamic Linked-Data Index

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published