CDB Profile Report

August 5, 2003

Igor Gaponenko


This document presents the results of study to measure the size of CDB (Condition Database of BaBar). The report consists of a number of sections illustrating various aspects of the database (its profile). To distinguish database contents created before and after new CDB deployment (October 1, 2002) the following terms are used throughout the rest of the document:

The current CDB includes objects created during all (“Run 1”, “Run 2” and “Run 3”) periods. Physically persistent objects created during the first two periods are stored in separate sets of Objectivity/DB databases. New CDB has persistent links onto these objects from its (new) metadata.

Total number of conditions

This table shows the number of conditions for two major classes of conditions “owned” by MASTER and IR2 CDB federations. These numbers do not include duplicate names of conditions whose detector names begin with capital letters. For example, there is just one entry for the pair of conditions:


These two entries refer to the same “physical” condition in CDB. We have them both in the database just because BaBar has some legacy (pre-CDB) client code does not respect case sensitive names of detectors.

Condition Type

# of conditions

“Rolling Calibration” at MASTER


“Regular” at MASTER


“Regular” at IR2




These conditions are grouped into 12 so called “sub-system” groups:


In addition it may worth to mention that at the time of new CDB deployment there were 504 conditions in the old database.

Database images

Since the current implementation of CDB is based on Objectivity/DB then all its (CDB) data are stored in so called “database images” (or just “databases”). These images are files in special format created and maintained by Objectivity/DB servers and tools. The following table illustrates how CDB maps onto the “databases”. There are at least two reasons why this information may be important:

Database Type

# of databases


New CDB (“Run 3”)


10 609 049 600

Old “Link”


266 190 848

Old “Index”


4 084 809 728

Old “Object”


28 309 471 232



43 269 521 408

Total amount of user-defined ('payload') data

The following table presents the amount of the user-defined data for two major classes of conditions produced in MASTER and IR2 CDB federations. The numbers in the table do not include the metadata or any other overhead imposed by the current design/implementation of CDB or the persistent technology itself. Just pure data visible through CDB API are shown.

Condition Type

Run 1 + 2

Run 3

Run 1 + 2 + 3

“Rolling Calibration” at MASTER

12 584 124 784

6 609 945 891

19 194 070 675

“Regular” at MASTER

91 614 538

22 554 170

114 168 708

“Regular” at IR2

2 607 074 344

521 795 630

3 128 869 974


15 282 813 666

7 154 295 691

22 437 109 357

Total number of user-defined objects

This table shows the number of so called “top-level” objects visible through CDB API. The “top-level” is a term referring to those objects which have been directly registered in CDB metadata. Some of these objects may represent more complex structures forming so called “composite” objects. The table has the same format as the one showing the total amount of data. So one can easy calculate that an average object in CDB is nearly 22 KB in size.

Condition Type

Run 1 + 2

Run 3

Run 1 + 2 + 3

“Rolling Calibration” at MASTER

147 778

340 103

487 881

“Regular” at MASTER



1 739

“Regular” at IR2

436 334

82 907

519 241


585 590

423 271

1 008 861

Detailed information on conditions

The detailed information on conditions can be found at separate documents below. To facilitate browsing the conditions are sorted according to various criteria.

All known conditions

A subset of "rolling calibration" conditions from MASTER

A subset of “regular” conditions from all “origins”

A subset of conditions owned by MASTER only

A subset of conditions owned by IR2 only

Subsets of conditions for each subsystem are also available here: dch dct drc emc fcf ifr mat orc pep svt tcl trk