Expand description

In-memory implementations of RDF datasets.

This module provides building blocks for defining implementations of Dataset and MutableDataset, with fine-tuned trade-offs between memory footprint and performance.

It also provides two pre-defined trade-offs: FastDataset and LightDataset, provided in different flavours (default, small, sync).

This module is the twin of the graph module. See its documentation for more details.

Modules

Flavours of Dataset implementations with a smaller memory-footprint.

Flavours of Dataset implementations which are safe to share across threads.

Structs

A DatasetWrapper indexing quads by graph name, then by subject, then by predicate, then by object.

A generic implementation of Dataset and MutableDataset, storing its terms in a TermIndexMap, and its triples in a HashSet.

A DatasetWrapper indexing quads by object, then by graph name, then by predicate, then by subject.

Traits

A dataset wrapper wraps a Dataset and overrides some of its methods.

An indexed dataset wrapper wraps an IndexedDataset and augments some of its methods, through hooks of the forme before_x and after_x.

Type Definitions

Type alias for fallible quad iterators produced by a dataset.

Type alias for results iterators produced by a dataset.

Type alias for fallible hashsets of terms produced by a dataset.

Type alias for the terms returned by a dataset.

A heavily indexed dataset. Fast to query but slow to load, with a relatively high memory footprint.

A generic in-memory dataset.

A dataset with no triple index. Fast to load but slow to query, with a relatively low memory footprint.