Difference between revisions of "EventStore Table Definitions"

From GlueXWiki
Jump to: navigation, search
(Tables)
(Grades)
Line 139: Line 139:
 
== Grades ==
 
== Grades ==
  
 +
There are two different types of grades used by EventStore:
 +
* ''write'' grades specify data versions that have been added to the database and can be managed but are not yet ready for general use.
 +
* ''read'' grades specify data versions approved to be accessed by end users.
 +
Data versions can be moved from one grade to another
 +
 +
The current list of grades used are:
 +
 +
{| class=wikitable
 +
! write
 +
! read
 +
|-
 +
| rawdata-unchecked
 +
| rawdata
 +
|-
 +
| recon-unchecked
 +
| recon
 +
|}
  
 
== Injection ==
 
== Injection ==
  
 
A more detailed discussion of what happens during injection can be found [https://wiki.classe.cornell.edu/HEP/SWIG/EventStore here]
 
A more detailed discussion of what happens during injection can be found [https://wiki.classe.cornell.edu/HEP/SWIG/EventStore here]

Revision as of 18:35, 3 February 2015

Tables

Here we describe the tables defined by EventStore. Note that the bold names are primary keys in those tables and italic names represents the group index (for faster lookup).

Important Tables

  • FileID gives the list of files
  • Version gives the list of data versions
  • GraphPath gives the dependencies between different data versions

FileID

fileId fileName typeID

One entry per data and key file.

  • fileId is a unique identifier associated with every stored file
  • typeID is an index into the FileType table

KeyFile

graphId view run uid keyFileId

One entry per key file. Associates key files with particular skims.

  • graphId is an index into the GraphPath table (which defines the graphs)
  • view is a the name of a skim (e.g. "2track")
  • keyFileId is an index into the FileID table

RunUID

run uid

A list of the run/uid pairs stored in the DB.

FileType

id type description
  • type is the internal description of the type of data (e.g. "evio", "rest", "mc", etc.)
  • description is a long description of the data type

OrphanFile

id dateTime user

When files are deleted dateTime and user register who deleted the files and when.

Version

id grade timeStamp minRunNumber maxRunNumber graphId state

Information about different data versions

  • grade is the name of the skim, as in KeyFile table
  • timeStamp is the date associated with this version, i.e. the first time this data is considered available. This is conventionally when the data was generated or submitted.
  • graphId is an index into the GraphPath
  • state is "active" or "disabled"


SpecificVersion

svName svid
  • svName is the string that describes this data version
  • svid is the id associated with this specific version

SpecificVersionComment

id svid commentDate comment

Can save a long text comment associated with a particular specific version. [NOTE: need to decide what the use case is for this in GlueX.]

GraphPath

graphId svid

Classify SV's into paths

PathDepend

parentId childId

Describe dependencies between graph nodes.

[NOTE: need to clarify how the prev. two tables interact.]


MaxMasterID

masterMaxId comment

MySQL only. Used for merging? Still investigating...

Grades

There are two different types of grades used by EventStore:

  • write grades specify data versions that have been added to the database and can be managed but are not yet ready for general use.
  • read grades specify data versions approved to be accessed by end users.

Data versions can be moved from one grade to another

The current list of grades used are:

write read
rawdata-unchecked rawdata
recon-unchecked recon

Injection

A more detailed discussion of what happens during injection can be found here