Skip to content

TopQuadrant-DevOps/rdf-delta

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Changes

This fork of RDF Delta differs from the main RDF Delta repo primarily in that the ZooKeeper integration has been rewritten to avoid using Apache Curator. The problem that prompted this rewrite is that Apache Curator was not properly following changes to the membership of a ZooKeeper Ensemble. It would even interfere with the vanilla ZooKeeper client's own logic to reconnect to an ensemble when disconnected. These problems presented during experimentation while working out how to deploy RDF Delta in a dynamic environment. The desire was for ZooKeeper and RDF Delta nodes to be lightweight and disposable so they could easily be replaced if they started misbehaving. This behavior is critical for being able to leverage Amazon ECS for cluster management and zero-downtime upgrades.

Some other changes include the addition of a Gradle version of the Maven environment running in parallel, a beefed up CI configuration for GitHub actions, and configurations for SonarCloud and CodeClimate for static analysis.

RDF Delta

RDF Delta provides a system for recording and publishing changes to RDF Datasets. It is built around idea of change logs:

  • RDF Patch - a format for recording changes to an RDF Dataset
  • RDF Patch Log - organise patches in to a log of changes to an RDF Dataset with HTTP access.

RDF Patch Logs can be used for:

  • Replicated datasets - 2 or more copies of a single dataset for high availability of the data.
  • Incremental backup of a dataset.
  • Recording changes
  • Generate alerts based on changes, either to the dataset as a whole or specific resources within the dataset.

RDF Delta provides a system for keeping copies of an RDF Dataset up-to-date using the RDF Patch Log as a journal of changes to be applied.

Documentation

Website: https://afs.github.io/rdf-delta

High Availablity Apache Jena Fuseki

https://afs.github.io/rdf-delta/ha-fuseki.html

Software

Artifacts: https://repo1.maven.org/maven2/org/seaborne/rdf-delta

RDF Delta distribution (patch log server and Apache Jena Fuseki with replicated dataset support)

https://repo1.maven.org/maven2/org/seaborne/rdf-delta/rdf-delta-dist

RDF Patch:

    <dependency>
      <groupId>org.seaborne.rdf-delta</groupId>
      <artifactId>rdf-patch</artifactId>
      <version>X.Y.Z</version>
    </dependency>

RDF Delta client library:

    <dependency>
      <groupId>org.seaborne.rdf-delta</groupId>
      <artifactId>rdf-delta-client</artifactId>
      <version>X.Y.Z</version>
    </dependency>

Status

Build Maintainability Test Coverage CodeQL

Contributing

See CONTRIBUTING.

About

A system to propagate changes between RDF Datasets

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 98.4%
  • Other 1.6%