StartBulkVolumeRead

You can use the StartBulkVolumeRead method to start a bulk volume read session on a specified volume.

Only two bulk volume processes can run simultaneously on a volume. When you initialize the session, data is read from a SolidFire storage volume to be stored on an external backup source. The external data is accessed by a web server running on an Element storage node. Server interaction information for external data access is passed by a script running on the storage system.

At the start of a bulk volume read operation, a snapshot of the volume is made and the snapshot is deleted when the read has completed. You can also read a snapshot of the volume by entering the ID of the snapshot as a parameter. When you read a previous snapshot, the system does not create a new snapshot of the volume, nor does it delete the previous snapshot when the read completes.
Note: This process creates a new snapshot if the ID of an existing snapshot is not provided. Snapshots can be created if cluster fullness is at stage 2 or 3. Snapshots are not created when cluster fullness is at stage 4 or 5.

Parameters

This method has the following input parameters:

Name Description Type Default value Required
format The format of the volume data. Can be either:
  • uncompressed: Every byte of the volume is returned without any compression.
  • native: Opaque data is returned that is smaller and more efficiently stored and written on a subsequent bulk volume write.
string None Yes
volumeID The ID of the volume to be read. integer None Yes
snapshotID The ID of a previously created snapshot used for bulk volume reads. If no ID is entered, a snapshot of the current active volume image is made. integer None No
script The name of an executable script. If no script name is given, the key and URL are necessary to access Element storage nodes. The script is run on the primary node, and the key and URL are returned to the script so the local web server can be contacted. string None No
scriptParameters JSON parameters to pass to the script. JSON object None No
attributes JSON attributes for the bulk volume job. JSON object None No

Return values

This method has the following return values:

Name Description Type
asyncHandle The ID of the asynchronous process to be checked for completion. integer
key Opaque key uniquely identifying the session. string
url URL to access the node's web server. string

Request example

Requests for this method are similar to the following example:

{
   "method": "StartBulkVolumeRead",
   "params": {
      "volumeID" : 5,
      "format"  : "native",
      "snapshotID" : 2
   },
   "id": 1
}

Response example

This method returns a response similar to the following example:

{
      "id" : 1,
   "result" : {
      "asyncHandle" : 1,
      "key" : "11eed8f086539205beeaadd981aad130",
      "url" : "https://127.0.0.1:44000/"
   }
}