With SESAM/SQL, you can save multimedia data contents in a database in a permanent and fail-safe way.
Basically, multimedia data contents are subdivided into four main categories:
Text
Graphics
Audio (Sound)
Video
These large sets of data are known as BLOBs (Binary Large Objects). More precisely,
BLOBs can be variable length sequences of bytes up to a length of 2 31-1 bytes. SESAM/SQL stores these BLOBs as BLOB objects. The safety mechanisms established in SESAM/SQL apply to BLOB objects.
When handling BLOB objects it is necessary to distinguish between:
the administration of BLOB objects which is performed using SESAM/SQL
the processing of the contents of BLOB objects which is performed outside of SESAM/SQL using programs which are suited to the data content in question (example: editing of images with any image processing program).
The following elements are used in SESAM/SQL to work with BLOB objects. The interaction between these elements is depicted in figure 8:
BLOB objects | In SESAM/SQL, BLOBs are known as BLOB objects because they |
BLOB tables | These are special base tables that serve as storage locations for BLOB |
BLOB values Attribute | The value of a BLOB object is known as a BLOB value. A BLOB object possesses a number of different attributes. These |
REF values | Each BLOB object and each class possesses a unique REF value |
Figure 8: Structure of the BLOB constructs
When you create a BLOB object, SESAM/SQL stores its BLOB value and the assigned attributes in a BLOB table. When this is done, the BLOB value is written slice-by-slice to multiple lines of the BLOB table. This storage method allows for efficient sequential access to BLOB values.
To make it possible to integrate BLOB objects in any required base table, SESAM/SQL generates a unique REF value for each BLOB object. This designates the BLOB object as long as it exists. You can save this REF value in the REF columns of any base tables of your choice (see section “Column”).
The BLOB objects in a BLOB table form the objects of a class. Correspondingly there is also a class REF value which designates all the BLOB objects in a BLOB table. To address BLOB objects, classes and the attributes of BLOB objects as well as BLOB values you must use the SESAM-CLI interface (Call Level Interface).