Create Data Volume

This article explains how to create a new data volume in an Exasol database.

Database data in Exasol is stored on data volumes, which are assigned to storage disks. For more information about the different volume types in Exasol, see Volumes Overview. For more information about storage disks, see Storage Requirements.

This procedure is carried out using ConfD.

Prerequisites

There are no prerequisites for this procedure.

Procedure

The following examples use ConfD through the command-line tool confd_client, which is available on all database nodes. For more information, see ConfD.

Connect to COS

Connect to EXAClusterOS (COS) on the cluster using c4 connect -t <DEPLOYMENT>[.<NODE>]/cos. For example:

./c4 connect -t 1.11/cos

If you do not specify a node, c4 will connect to the first active node in the deployment.

For more information about how to use c4 connect, see How to use c4.

Create a data volume

To create a data volume, use the ConfD job st_volume_create with the following parameters:

Parameter name Data type Description
name string Name of the new volume.
disk string Name of the disk to be used for the volume.
type string data
size string Volume size with unit in string format. For example: 1 TiB.
num_master_nodes integer Number of master nodes in the new volume.
nodes list List of node IDs (integers)
redundancy integer The redundancy level.
owner tuple, list The database owner as an integer tuple (user id, group id) or list (user name, user group name).

Master Nodes

The parameter num_master_nodes defines the number of master nodes that the volume will use. The number of master nodes must match the number of active nodes in the cluster. For example: in a cluster that will have 4 active nodes and 1 reserve node (4+1), the number of master nodes is 4.

In the following example, we create a 1 TiB data volume with the name DataVolume1 on the storage disk disk1 with 4 master nodes and redundancy 2. The command returns the volume ID for the new volume (vid: 2).

confd_client st_volume_create name: DataVolume1 disk: disk1 type: data size: '1 TiB' num_master_nodes: 4 nodes: '[11, 12, 13, 14]' redundancy: 2 owner: '[500,500]'
vid: 2

The ConfD job st_volume_create does not necessarily use the specified size but does internal rounding. To check the actual size of the volume after creation to see if it is acceptable, use the ConfD job st_volume_info. If the rounding takes up too much space, contact Support.

Enable optimizations

To enable optimizations for the volume, use the ConfD job st_volume_add_label

confd_client st_volume_add_label vname: DataVolume1 label: useinitopt
confd_client st_volume_add_label vname: DataVolume1 label: usesearchopt

Verification

To verify the properties of the new data volume, use the ConfD job st_volume_info with the volume ID. For example:

confd_client st_volume_info vid: 2