Project

General

Profile

Actions

Idea #15960

open

Computing on external data

Added by Peter Amstutz over 4 years ago. Updated about 2 months ago.

Status:
New
Priority:
Normal
Assigned To:
-
Target version:
Story points:
-
Release:
Release relationship:
Auto

Description

Right now, the feature of automatic HTTP download in cwl-runner is effectively fulfilling this function for users (although it copies it into the local keepstore). Users would probably like it if it were expanded to also support copying s3:// URLs.

However, the big idea for this epic is on-demand retrieval from external storage -- we fetch the data from the external system on demand.

This involves:

  1. Going through each file of an external file system or bucket and hashing 64 MB byte ranges to get a block hash
  2. Keeping a database that maps the block hash to a URL and byte range
  3. Constructing a collection using these blocks with file/directory structure matching the external file system
  4. Creating a special keepstore volume type that uses the block hash database to fetch block contents from the external source on demand as if it were a normal keep service

Related issues

Related to Arvados - Feature #8570: [Crunch2] Impure access to object storeNewActions
Related to Arvados - Feature #8569: [Crunch2] Impure mount from host fsNewActions
Related to Arvados - Idea #17348: Example workflow template which streams data from S3 in first step, does some computation steps, and uploads results back to S3.NewActions
Actions

Also available in: Atom PDF