Skip to main content
PyPi package Documentation Status

Make your data more resilient, portable and easy to work with by packaging files & metadata into self contained datasets.

Overview

Dtool is a suite of software for managing scientific data and making it accessible programatically. It consists of a command line interface dtool and a Python API: dtoolcore.

The dtool command line interface allows one to organise files into datasets and to move datasets between different storage solutions, for example from local disk to remote object storage. Importantly it also provides methods to verify that the transfer has been successful.

The Python API gives complete access to the data and metadata in a dataset. It makes it easy to create scripts for processing the items, or a subset of items, in a dataset. The Python API also allows datasets to be constructed programatically.

Dtool is extensible, meaning that it is possible to create plugins both for adding functionality to the command line interface and for creating interfaces to custom storage backends.

The dtool Python package is a meta package that installs the packages:

  • dtoolcore - core API

  • dtool-cli - CLI plugin scaffold

  • dtool-create - CLI commands for creating datasets

  • dtool-info - CLI commands for getting information about datasets

  • dtool-symlink - storage broker interface allowing symlinking to data

  • dtool-http - storage broker interface allowing read only access to datasets over HTTP

Installation:

$ pip install -U pip setuptools wheel
$ pip install dtool

There are support packages for several object storage solutions:

  • dtool-s3 - storage broker interface to S3 object storage

  • dtool-azure - storage broker interface to Azure Storage

  • dtool-ecs - storage broker interface to ECS S3 object storage

  • dtool-irods - storage broker interface to iRODS

If you have access to Amazon S3, Microsoft Azure, ECS S3 or iRODS storage you may also want to install support for these:

$ pip install dtool-s3 dtool-azure dtool-ecs dtool-irods

Usage:

$ dtool create my-awesome-dataset
Created proto dataset file:///Users/olssont/my-awesome-dataset
Next steps:
1. Add raw data, eg:
   dtool add item my_file.txt file:///Users/olssont/my-awesome-dataset
   Or use your system commands, e.g:
   mv my_data_directory /Users/olssont/my-awesome-dataset/data/
2. Add descriptive metadata, e.g:
   dtool readme interactive file:///Users/olssont/my-awesome-dataset
3. Convert the proto dataset into a dataset:
   dtool freeze file:///Users/olssont/my-awesome-dataset

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dtool-3.14.1.tar.gz (2.7 kB view details)

Uploaded Source

File details

Details for the file dtool-3.14.1.tar.gz.

File metadata

  • Download URL: dtool-3.14.1.tar.gz
  • Upload date:
  • Size: 2.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.6

File hashes

Hashes for dtool-3.14.1.tar.gz
Algorithm Hash digest
SHA256 8ccc7a8877a4952a84a8fdb470120b39b546144f32ee0f8297070f53275010a3
MD5 c0f615cffeaa44b6791b28fc88ba3a49
BLAKE2b-256 0e9751d36ca5673a0d2b7b0d7fa624c127dde908a484c34334c2cbcc31235119

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page