ocdbt: Optionally-Cooperative Distributed B+tree

The OCDBT key-value store adapter provides access to an OCDBT database.

URL syntax

  • base-kvstore-url/|ocdbt:path/to/entry

  • base-kvstore-url/|ocdbt:@TIMESTAMP/path/to/entry

  • base-kvstore-url/|ocdbt:@vN/path/to/entry

The base-kvstore-url/ must refer to a directory.

  • The ocdbt:path/to/entry syntax indicates the latest version.

  • The ocdbt:@TIMESTAMP/path/to/entry syntax specifies a version by commit timestamp. The timestamp must be in ISO 8601 syntax YYYY-MM-DDThh:mm:ssZ or YYYY-MM-DDThh:mm:ss.sssssssssZ.

  • The ocdbt:@vN/path/to/entry syntax specifies a version by generation number.

For example:

  • gs://bucket/path/to/repo.zarr.ocdbt/|ocdbt:path/to/array/

  • gs://bucket/path/to/repo.zarr.ocdbt/|ocdbt:@2024-12-31T10:23:45.123456789Z/path/to/array/

  • gs://bucket/path/to/repo.zarr.ocdbt/|ocdbt:@v10/path/to/array/

Note

Consistent with normal URL syntax, any special characters in the path/to/entry, including @ which is used to specify a version, must be percent-encoded.

Capabilities

Supported capabilities

Byte range reads

Supported.

Key listing

Supported.

Required capabilities of base key-value store

Byte range reads

Required.

Key listing

Not needed.

Auto detection

Directories containing OCDBT databases are detected automatically based on the presence of the manifest.ocdbt file.

Limitations

  • Entries without a valid Unicode path are ignored.