Beim Aufbau einer SESAM/SQL-Datenbank muss sich der Anwender nicht darum kümmern, auf welchen Datenträgern Anwenderdaten und Metadaten einer Datenbank angelegt werden. Es kann jedoch sinnvoll sein, dass der Anwender die Verteilung der Spaces auf verschiedene Datenträger selbst beeinflusst, indem er z.B. Daten, die häufig gemeinsam angesprochen werden, benachbart ablegt, oder Daten, auf die häufig zugegriffen wird, auf Platten mit kurzen Zugriffszeiten verlagert. Diese Möglichkeit hat der SESAM/SQL-Anwender, indem er festlegen kann, auf welchen Platten die Spaces einer Datenbank abgelegt werden.
Dazu kann der Anwender mit der SQL-Anweisung CREATE STOGROUP eine sogenannte Storage Group erzeugen.
Eine Storage Group fasst Speichermedien einer BS2000-Katalogkennung unter einem Namen zusammen. Alle Speichermedien einer Storage Group müssen denselben Gerätetyp haben. Die Spaces einer Datenbank können auf verschiedene Storage Groups verteilt werden.
Wurde mit einer CREATE STOGROUP-Anweisung eine Storage Group erzeugt, dann können mit nachfolgenden CREATE SPACE-Anweisungen dieser Storage Group AnwenderSpaces zugeordnet werden. In den Anweisungen CREATE TABLE und CREATE INDEX legt der Anwender dann fest, auf welchem Space eine bestimmte Tabelle bzw. ein bestimmter Index angelegt wird.
Die Storage Group des Catalog-Space einer Datenbank legt der Anwender in der Utility-Anweisung CREATE CATALOG fest. Aus dem Datenbank-Namen wird der Name des Catalog-Space erzeugt: :catid:system-benutzerkennung.catalog.CATALOG
Wird bei CREATE STOGROUP keine Katalogkennung festgelegt, dann wird die Katalogkennung des Standard-Pubset der DBH-Session verwendet.
Mit ALTER STOGROUP kann die Definition einer Storage Group geändert werden. So können neue Speichermedien hinzugefügt oder einzelne Speichermedien aus der Storage Group entfernt werden.
DROP STOGROUP löscht eine Storage Group, wenn sie nicht mehr von einem Space benutzt wird.