The BOINC database
BOINC uses a relational database to keep track of
participants, work and result.
The reference implementation uses MySQL,
but any SQL database can be used.
The database tables are as follows:
- platform
-
Compilation targets of the core client and/or applications.
- app
-
Applications.
The core client is treated as an application;
its name is "core_client".
- app_version
-
Versions of applications.
Each record includes a URL for downloading the executable,
and the MD5 checksum of the executable.
- user
-
Describes users, including their email address,
name, web password, and authenticator.
- preferences
-
Describes preferences.
The actual preference information is stored in
an XML document in a "blob" field of this table.
- host
-
Describes hosts.
- workunit
-
Describes workunits.
The input file descriptions are stored in an XML document in a blob field.
Includes counts of the number of results linked to this workunit,
and the numbers that have been sent, that have succeeded, and that have failed.
- result
-
Describes results.
Includes a "state" (whether the result has been dispatched).
Stores a number of items relevant only after the
result has been returned:
CPU time, exit status, and validation status.