https://github.com/clariah/virtuoso-quad-log

Generate a log of all added/deleted quads in the virtuoso triple store

https://github.com/clariah/virtuoso-quad-log

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (7.9%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Generate a log of all added/deleted quads in the virtuoso triple store

Basic Info
Statistics
  • Stars: 0
  • Watchers: 11
  • Forks: 4
  • Open Issues: 0
  • Releases: 4
Created over 10 years ago · Last pushed almost 10 years ago
Metadata Files
Readme License

README.md

Virtuoso Quad Logger

  • The components in this repository are intended to be used by developers and system administrators.
  • In case of questions contact the CLARIAH team.

The RDF data model can be used to share and distribute information from a wide variety of sources and has distinguished advantages over other data models. Keeping track of state and changes in dispersed data stores and propagating state and changes to other data stores or a central hub is out of scope of the data model it self. Reporting the initial state of a data store, keeping track of changes during the life of the store and publishing this state and these changes to the outside world in accordance with a well-described protocol is the subject of this repository.

This virtuoso-quad-log repository harbors a chain of tools for propagating and publishing changes in RDF-data that are kept in a Virtuoso triple store. Essential components in this chain are:

  1. quad-logger generates logs of all initial, added, mutated or deleted N-Quads in a Virtuoso quad store in the RDF-patch format, grouped in files per graph.
  2. graph-splitter will subdivide these rdf-patch files into directories per graph. If a subdivision along graph iri is not nescesary or not wanted, the graph-splitter can be left out of the chain.
  3. resourcesync-generator enables the synchronization of the produced resources over the internet by means of the Resource Sync Framework.

The example-virtuoso-server is there for reference and demonstration purposes. The tools can be deployed as services under Docker-compose.

Overview

Overview

The above image shows the quad-logger, the graph-splitter and the resourcesync-generator in their environment. The Virtuoso server is instructed to log its transactions in log files.
The quad-logger interacts with the Virtuoso server by means of the Interactive SQL interface. It reads the transaction logs and transforms them to rdf-patch formatted files.
The graph-splitter will subdivide the rdf-patch files and group them in folders per graph iri. Folder names are the base64 translation of the graph iri. If a subdivision along graph iri is not nescesary or not wanted, the graph-splitter can be left out of the chain.
The resourcesync-generator bundles the rdf-patch files in zip-files and publishes them in accordance with the Resource Sync Framework. In case N-Quads are subdivided along graph iri in separate folders, each folder will be represented as a distinct set of resources.
The quad-logger, the graph-splitter and the resourcesync-generator can be deployed as Docker containers. Here they are deployed as docker-compose services. The Http server and the Virtuoso server can also be included in the docker-compose services.

Documentation

Documentation of the software in this repository is split over several files. - README.md (this file) contains a general introduction. - MOTIVATION.md documents the background of this repository and motivates choices made. - DEPLOY.md contains detailed instructions on the usage of the tools in this repository. - VIRTUOSO_CONFIG.md communicates critical issues in your Virtuoso configuration.

Quickstart

To launch a self-contained sandbox you can use the docker-compose-example-setup.yml

docker-compose -f docker-compose-example-setup.yml build
docker-compose -f docker-compose-example-setup.yml up

To connect the logger to a production virtuoso server, you can edit the environment variables in the docker-compose.yml and launch using

docker-compose build
docker-compose up

This also launches a local nginx which you might, or might not, want to do.

To advertise the logs you should provide either a robots.txt or a Source Description at the location that you submit to Work Package 2. See http://www.openarchives.org/rs/1.0/resourcesync for more information, or contact us! (The playground advertises the logs using the hidden folder .well-known)

Owner

  • Name: CLARIAH
  • Login: CLARIAH
  • Kind: organization

CLARIAH offers humanities scholars a Common Lab providing access to large collections of digital resources and innovative tools for research

GitHub Events

Total
Last Year

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 134
  • Total Committers: 3
  • Avg Commits per committer: 44.667
  • Development Distribution Score (DDS): 0.299
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Henk van den Berg h****g@d****l 94
Jauco Noordzij j****j@h****l 28
renevanderark r****k@g****m 12
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: over 1 year ago

All Time
  • Total issues: 1
  • Total pull requests: 5
  • Average time to close issues: about 18 hours
  • Average time to close pull requests: 4 days
  • Total issue authors: 1
  • Total pull request authors: 1
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.2
  • Merged pull requests: 5
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • kathrinrin (1)
Pull Request Authors
  • dans-er (5)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

docker-compose-example-setup.yml docker
  • clariah/graph-splitter latest
  • clariah/quad-log-example-virtuoso latest
  • clariah/resourcesync-generator latest
  • clariah/virtuoso-quad-log latest
  • nginx latest
docker-compose.yml docker
  • clariah/graph-splitter latest
  • clariah/resourcesync-generator latest
  • clariah/virtuoso-quad-log latest
  • nginx latest
example-virtuoso-server/Dockerfile docker
  • encoflife/virtuoso 7.2.0 build
graph-splitter/Dockerfile docker
  • ubuntu latest build
quad-logger/Dockerfile docker
  • encoflife/virtuoso 7.2.0 build
resourcesync-generator/Dockerfile docker
  • python 2 build