Misweb Pages to display Projects and Files and

In the SAM database there are tables for  -
  data_files, project_definitions, project_snapshots, analysis_projects, project_files, processes, process_families, consumers, consumed_files

This part of the database is representing two different things
 

1) Projects and their definitions and files making them up

a) A way of describing the data files you wish to analyse is stored in a project_definition
b) At a certain moment this project_definition is evaluated and resolved and the resulting list of files which match it are stored,  in order, in a project_snapshot
c) Eventually someone runs a project using this project_snapshot and then a record is entered in analysis_projects
d) The connections between the project_definition, the project_snapshot, the analysis_project and the project_files (i.e. list of files which it refers to) are all maintained in the database

One web page should start with analysis_projects as the query class - allowing for the user to enter
and match on its name (project_desc) , the badge number of the owner (badge_number) or project_status.

It should display the resulting list of analysis_projects (showing each of the fields in this table) and using drill-down techniques so that the user may drill down on the field proj_snap_id.

This drill down page should start with project_snapshots as the query class and allow the user to drill down to the project_definition using drill-down on the proj_def_id field, or to the list of files using drill-down on the proj_snap_id  field.  This latter drill-down should cause a query page to retrieve the list of project_files matching this proj_snap_id.  (to show the file names will involve a join in the query to display actual files, but using the project_files table in the join).
 

2) How the files were 'consumed'  (analyzed) by processes and consumers

a) Files get analyzed by a particular consumer (entry in consumers table) with a particular consumer_id.  This is recorded in the database in the consumed_files table
b) The actual process that was responsible for analyzing the file is also recorded in that table at the same time by recording in each record a global_process_id - the key to an  entry in analysis_processes.
c) Processes have a lot of information in them including the node they are running on, their process family, description, times, etc. etc.

The 2nd web page should start by  querying up consumed_files  (ie. files which have been 'consumed')  by matching on any one of their  file_id, file_name, xxxx and querying the data_files table using the  consumed_files  table.
Both of the tables data_files and consumed_files are involved in this. 

When the consumed_files are displayed we should be able to drill down to the process which actually did the analysis.
 

Reference


http://miscomp/misweb/interface-spec.html
 
 

For a database account - go to    http://d0db.fnal.gov/d0db