Skip to main content

cas-manifest allows developers to store artifacts in a _content-addressable_ store using a self-describing _manifest_

Project description

CAS-Manifest

This package facilitates storing artifacts in Content Addressable Storage via the hashfs library. In a CAS regime, the hash of the artifact's contents is used as the key.

It further requires that artifacts are pydantic models - this allows for stable serialization of the artifacts, and for data to be self-describing.

Consider an example usage profile: let's say that your application works with datasets, some of which are serialized as csv files, others of which are serialized as tsv files. Some have header rows, and some do not. Rather than write data-loading code that tries to infer the correct way to deserialize a dataset file, cas-manifest serializes all relevant attributes of the dataset along with the data file itself. Your code might look like this:

from hashfs import HashFS
from cas_manifest.registry import Registry
from my_classes import CSVDataset, TSVDataset

fs = HashFS('/path/to/data')
dataset_hash = '5fef4a'
registry = Registry(fs, [CSVDataset, TSVDataset])
obj = registry.load(dataset_hash)
# obj is an instance of either CSVDataset or TSVDataset

Project details


Download files

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

Source Distribution

cas-manifest-0.1.1.tar.gz (3.3 kB view details)

Uploaded Source

Built Distribution

cas_manifest-0.1.1-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file cas-manifest-0.1.1.tar.gz.

File metadata

  • Download URL: cas-manifest-0.1.1.tar.gz
  • Upload date:
  • Size: 3.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.2 CPython/3.7.7 Darwin/19.6.0

File hashes

Hashes for cas-manifest-0.1.1.tar.gz
Algorithm Hash digest
SHA256 f667dc3dc9cccb5357768d8d03698074dd238847bfd65cdf2cfe2eccdf8063b9
MD5 cf05be189194192f2f05bfffd2b1a827
BLAKE2b-256 d05ec27ae0b74930e127df5495dc28fc5583fc5d91a2e23335d2918785b02dba

See more details on using hashes here.

File details

Details for the file cas_manifest-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: cas_manifest-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.2 CPython/3.7.7 Darwin/19.6.0

File hashes

Hashes for cas_manifest-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6a082318ad1bd8b36d151be822c465d30af25a2067a3b04b62afa3a3db73946c
MD5 154c79f16760fc2005b0ff905def5d7a
BLAKE2b-256 f26bd9e0febb3916f80dd973a0f96fe12a8b2b4491e6b817cf058c08aca39e57

See more details on using hashes here.

Supported by

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