Volumes let you persist data that virtual machines cannot keep between creations and deletions. It also gives you additional storage since VMs have limited storage capacity. The number of volumes you can have on your account is the same as the number of VMs you can have on your account so that you can attach a volume to each VM.
You can set the volume size according to your needs.
You will not be able to change the size after creating the volume. Changing the size requires you to delete the volume and create a new one.