Overview of entities and relations

../_images/erd.png ../_images/eyra_container_exec.jpg ../_images/eyra_services.jpg ../_images/permissions_erd.png

The platform contains DataFile, which represent both data (the bits themselves) and metadata. Each DataFile is of a specific DataType. A DataSet is a collection of DataFiles.

An Interface represents the interface of one or many Implementation’s, e.g. it defines the names and DataType’s as Input and defines a single output DataType.

Each Implementation is linked to a Docker image and belongs to (represents different versions of) an Algorithm.

Whenever an Implementation is applied to a Benchmark as a Submission, it will be evaluated. This is done in two stages:

  • The Benchmark is linked to a DataSet. The DataSet contains a test_data_file field, Implementation is ran with this test_data_file as input, and it should produce an output according to the Benchmark’s interface.

  • The output of the first step, together with the Benchmark’s DataSet.ground_truth_data_file are input to an Implementation defined by the Benchmark’s evaluator. This Implementation should product as output a DataFile of type ‘OutputMetrics’.

Each time an Implementation is run, this creates a Job, which contains status, logs etc.