Hubert:
I have attached a first draft of some online system
database requirements and considerations. I have
followed your form with regards to topics and
numbering although I have added some topics.
I have not been able to collect information on all
areas but at least this is a start for online.
If you have any problems reading the attached file
please let me know and I will try again.
Ed Desmond
phone (516) 344-4768
email: desmond2@bnl.gov
Online Database Requirements
Database Taskforce
Created: September 24, 1996
Last Modified: Oct 28, 1996
Authors: E. Desmond, M. Purschke
Compiled by Ed Desmond
============================================================
1. Online Database Requirements Overview
----------------------------------------
The PHENIX Online Control system (ONCS) requires a database
to store and retrieve all the information which will be
required to configure, initialize, control, and maintain
the PHENIX detector, and all ancillary equipment which will
be required for operation of the PHENIX detector. The
information from the database will be used to supply
information for queries about the current and past
configuration of the detector. This information supplied
will include the identities , parameters and relationships
of detector components. The database will be required to
respond to varying criteria for identifying detector
components. These criteria will include memberships in
varying identifiable detector component groups. These
groups will include granules, sectors walls, sub-detectors,
crates and other configurable component groups.
The Online system will used the database as the source of
initialization data which will be downloaded to PHENIX
detector components at the start of, and during running
operations. The information for the components will be
retrieved for individual components and for identifiable
groups of detector components.
1.1 Data Types
---------------
The Online system will require that the information is
stored in the PHENIX database in such a format so that it
can be retrieved and placed into objects in the Online
system which are representative of the system components.
The objects in the Online system are software entities which
encapsulate all the information about a detector system
component which is required for its identification,
configuration, and operation. This information will consist
of data types which will include bounded and unbounded
character strings, octal, signed and unsigned integers, and
float and double data formats. In addition, user defined
complex data types which can themselves contain the above
data types will be required. Vectors of the above data
types will also be contained in the above objects. The
Online system will also store relational information between
components. This relational data may be stored as dynamic
pointers which would be preserved and recoverable from the
database.
--------------------------------
Data formats
--------------------------------
data type size (bytes)
---------- ------------
octal 1
int 2
long 4
float 4
double 8
string variable
vector variable
structure variable
1.1 ONE-TIME DATA
------------------
For the successful configuration and partitioning of the
detector systems, the Online system will be required to
identify all the components and the relationship between the
components which are required for the operation of the
detector systems. The identification of the detector
components will consist of an agreed upon name for the
component, its location , type and description. The
description will include all the information which is
required to determine the operational parameters which are
required for the successful initialization and operation of
the system component. In addition, the Online system will
require information which specifies the connections and
relationships between components in the detector
The Online database will store and make available to PHENIX
personnel information which identifies the interconnections
between components in the PHENIX detector. The
interconnections will include data flow connections. This
will identify how event data flows through the DAQ system.
This identification will consist of all the components in
the data flow path
Configuration information
Online will store all detector system configuration
information in the online database. Configuration
information includes:
o the hardware components of a physical granules
o the hardware components of a partition definition
o partition identifiers
o granule identifiers
Partition Description
The online database will contain all hardware components which have
been defined to exist in a partition. A partition is
defined to be a configurable set of components of the
PHENIX detector which can be run as an independent unit.
Each partition will be identified by a unique character
string of up to 32 characters. There can exist a maximum
of 32 partitions which may run simultaneously. The Online
database can store any number of predefined partitions.
Theses defined partitions will be retrievable and submitted
to the ONCS system for allocation of the contained
components, prior to the execution of a run. The partition
information will also contain access to a set of
configuration and initialization information which is
required for the execution of a run.
1.1 RUN-TIME DATA
------------------
The runtime storage information from the Online system will
include all operational data which is collected during the
course of an experiment which will confirm the validity of
experimental data and which is required for its successful
analysis. This data includes status information as well as
monitored data values which is collected by the Online
system from various detector components. The runtime
storage must be sufficiently robust as to support data rates
and quantities which are sufficient for the successful
evaluation of the experimental results.
ONCS will require the run-time storage of monitored data
which is taken from the PHENIX detector during operations.
This data will be used to determine the validity of run-time
physics data. This data will be retrieved by ONCS as well
as other interested groups during run-time as well as at a
later time.
-----------------------------------------------------------
Data formats and quantities of stored partition information
-----------------------------------------------------------
item quantity format
------------------ -------- -----------
partition name 64 32 char
subsystem components N 32 character string
identifier identifier
configuration files N 32 character string
initialization files N 32 character srting
components N component structure
-----------------------------------------------------------
NOTE: quantity N denotes an unknown or undetermined value at
this time
--------------------------------------------------------
Component structure
--------------------------------------------------------
element type description
----------- ------------ ----------------------
identifier string the component name
device id unsigned long the unique id
granule string where located
type unsigned long hardware part type (adc,amp)
subsystem id string subsystem id
parameters structure associated data
--------------------------------------------------------
-----------------------------------------------------------
Parameter Structure
-----------------------------------------------------------
element type description
-------------- --------------- ------------------
length unsigned long number of parameters
in the component
name string parameter name
value data type data value
type identifier id float, int, etc data type identifier
parameter number long parameter index
-----------------------------------------------------------
1.2.1 RUN-TIME DATA FORMATS
-------------------------------
Run-Time Data
The Online run-time data includes all that data which is
collected from the PHENIX detector in the course of the
operation of the detector. The operations will consist of
calibration, test or real data run. All run-time data will
be stored along with sufficient information which will allow
the identification of the type, time, owner and the detector
configuration at the time of the run. The run-time data
storage will allow for the reconstruction of a change
history of detector configurations and run-time parameters.
The data which is collected from a run will include the
following information:
--------------------------------------------------------------------
ancillary data quantity data format storage frequency
-------------- -------- --------------- -----------------
low voltage 1000 float 1 per hour
high voltage 4900 double 2 per hour
temperature 1000 float 1 per hour
change commands command structure all occurrences
error log entry string and value all occurrences
DCM/FEM config. data 10Kb various formats at start of run
trigger configuration 15Kb various formats at start of run
--------------------------------------------------------------------
The trigger configuration information will consist of all
the CFD/Delay/logic matrix and other settings that define
the different trigger behavior. The trigger information
should be sufficiently complete to allow for the setting of
the trigger system from the stored data.
-----------------------------------------------------------
Command Structure
-----------------------------------------------------------
element data format data size (bytes)
--------------------- ---------------- -----------------
command character string 16
value type identifier type identifier varies (1-16)
value data type
int,
float,
double
time stamp POSIX format 4
of time_t
source name character string 64
----------------------------------------------------------
----------------------------------------------------------
Calibration Information Structures
----------------------------------------------------------
Calibration data quantity data format
------------------ ---------------- --------------
4 per detector float,
element double
----------------------------------------------------------
1.3 DOCUMENTATION
------------------
Descriptions which will be in text microsoft word and HTML
formats.
2 Access
---------
The Online database must be accessible by non database experts.
They will be the people who will be running an experiment,
but they will also be the people who will set up and enter
the parameters which are required for an experiment. The
database will also be accessed by the people who are
analyzing the data taken as well as by the people who are
responsible for building and maintaining the PHENIX
detector.
2.1 Access Methods
------------------
Access to the database will be made both programmatically
and through forms. Offline has identified a requirement for
SQL select, update and insert statements or their
equivalent to be implemented to access the online database.
The Online system can expect to issue similar access
functions.
2.2 Accessibility
-----------------
The Online database will be accessible from multiple,
distributed UNIX based workstations and X terminals. The
UNIX platforms will include SUN SPARC stations running
Solaris and SGI platforms running IRIX.
It seems likely that the Solaris operating system will also
be run from an Intel Architecture which at the present time
would be a Pentium Pro processor.
It also anticipated that access will be required NT
platforms. NT based access will be required for both
programmatically and form based queries and input.
2.3 Access Correlation between Online and other systems
access to database data.
---------------------------------------------------------
Access methods must be provided which can translate
information from Online data structures to corresponding
data structures of other PHENIX systems for the same
components. In particular, object representations of
components must be transferable to record and C structure
representations of those components.
2.4 Data Entry
---------------
The data base data will be entered from forms, embedded SQL and
perhaps SQL scripts. There may also be other
programmatically data entry mechanisms which will store
information which originates from a number of differently
formatted file formats. Any required data conversion
operation (endiness, etc) should be performed transparently
by the DB system rather than by the DB programmer or the end
user. The language will be C++ with interfaces to make the
data accessible from C code.
2.5 Data Retrieval
------------------
Data from the Online database will be retrieved from a variety of
UNIX platforms. The retrieval mechanism will include form
based access via a GUI interface and through
programmatically queries. In the form based retrieval, an
operator will enter the names of the desired components in
keyword form or in a user identifiable format which is
expected to be an ascii string which will identify a desired
component with an agreed upon PHENIX naming convention.
The programmatically retrieval mechanism will include SQL
statements. The data retrieved
2.6 Data Display
----------------
The retrieved information will be displayable in a number of
formats which will be determined by the desire of the
operator and the content of the data. For visual display in
a form or GUI based application, the data may be displayed
in a container which is appropriate to the data which is
requested. This may be a table or list or other container.
Data may also be retrieved and sent directly to a
programmatically output container which will depend on the
desired function. This container may be a file whose format
may vary dependent on the function. For example, if the
data retrieved is the set of mode bits which are to be
downloaded to the FEMs during a run, and the desired
operation is to retrieve the stored mode bits for a run for
further editing, then they may be retrieved and placed into
a format filter which will place the data in a specified
file in the appropriate format. The output filter may be
form selectable or identified by the data.
3 Performance Requirements
---------------------------
The Online system database must be sufficiently robust to provide
real-time response to operator queries for information about
the detector system
The Online system requires access to configuration and
initialization information sufficiently fast to allow a
total time to initialize the PHENIX detector to be less than
10 minutes. The following table includes some relevant time
and data access requirements:
---------------------------------------------------------
time to read all configuration data: 5 minutes
quantity of data : 10 Mb estimate
---------------------------------------------------------
Ancillary Information Structure
Each ancillary data entry will typically contain an character string
which identifies the name of the channel or component which
is being stored, the value which is being recorded, and a
time stamp of when the value is being recorded. The rate
and period over which these values are to be recorded in the
Online database will vary on experimental conditions and
requirements. Some expected data monitoring rates for
ancillary data are:
----------------------------------------------------------------
ancillary data type data collection rate data storage required
------------------- -------------------- ---------------------
temperature 1 per hour 1000 records / hour
low voltage 1 per hour 1000 records / hour
high voltage 2 per hour 9600 records/hour
----------------------------------------------------------------