Skip to content

Introduction

Welcome to the documentation for the NMDC Runtime.

The documentation uses the Diátaxis framework. Content here is partitioned into:

  • Practical steps:
    • Learning-oriented tutorials
    • Task-oriented how-to guides
  • Theoretical knowledge:
    • Information-oriented reference
    • Understanding-oriented explanation

Explore these using the site navigation.

API Resource Diagram

erDiagram
    user }|--o{ site : administers
    site ||--o{ job-execution : claims
    job ||--o{ job-execution : done-via
    workflow ||--o{ job : configured-as
    site ||--o{ data-object : stewards
    nmdc-runtime-site ||--o{ job : creates
    job-execution ||--o{ data-object : has-output
    job-execution ||--o{ metadata : has-output
    nmdc-runtime-site ||--o{ metadata : ingests

The above entity-relationship diagram shows various resources of the NMDC Runtime API.

A site is a resource, administered by one or more users, that may (1) steward data objects, and (2) claim job executions.

The NMDC Runtime site is a special site that creates the jobs that sites can execute. Workflows serve as the templates for these jobs -- specifically, the Runtime creates a job by associating a workflow with a particular data object as its input.

Thus, each job execution is an application of a workflow to a particular input. The outputs of job executions are data objects and metadata.

In the NMDC Schema, the term data object refers to a metadata record that includes a URL to access a payload, the raw sequence of bytes that the data object identifies. Thus, "sites steward data objects" means that sites ensure that data object metadata is accurate and actionable -- this includes either directly hosting URLs for payloads, or else obtaining URLs from delegated services.

The NMDC Runtime site ingests metadata output by job executions. This ingestion may trigger the creation of new workflow jobs for sites to claim and execute.

Site Federation

Below is a figure that illustrates the federated nature of site interaction with the runtime.

NMDC Runtime Site Federation

NMDC Runtime Site Federation