# Persistent Disk

### Creating a pd-standard disk

```yaml
defaults:
  zone: us-central1-a

resources:
  # pd-standard - Standard persistent disk (HDD-backed)
  - type: compute.v1.disk
    name: std-disk
    props:
      size_gb: 100
      type: diskTypes/pd-standard
```

#### Example price for above configuration

```
std-disk (action: create, monthly: $4.00, change: +100%)
  => Storage (price: $0.04/GiB/Mo, quantity: 100, monthly: $4.00)
```

### Creating a pd-ssd disk

```yaml
defaults:
  zone: us-central1-a

resources:
  # pd-ssd - SSD persistent disk (high performance)
  - type: compute.v1.disk
    name: ssd-disk
    props:
      size_gb: 100
      type: diskTypes/pd-ssd
```

#### Example price for above configuration

```
ssd-disk (action: create, monthly: $17.00, change: +100%)
  => Storage (price: $0.17/GiB/Mo, quantity: 100, monthly: $17.00)
```

### Creating a pd-balanced disk

```yaml
defaults:
  zone: us-central1-a

resources:
  # pd-balanced - Balanced persistent disk (cost-effective SSD)
  - type: compute.v1.disk
    name: balanced-disk
    props:
      size_gb: 200
      type: diskTypes/pd-balanced
```

#### Example price for above configuration

```
balanced-disk (action: create, monthly: $20.00, change: +100%)
  => Storage (price: $0.10/GiB/Mo, quantity: 200, monthly: $20.00)
```

### Creating a pd-extreme disk

```yaml
defaults:
  zone: us-central1-a

resources:
  # pd-extreme - Extreme persistent disk with provisioned IOPS (no free tier for IOPS)
  - type: compute.v1.disk
    name: extreme-disk
    props:
      size_gb: 500
      type: diskTypes/pd-extreme
      provisioned_iops: 10000
```

#### Example price for above configuration

```
extreme-disk (action: create, monthly: $138.00, change: +100%)
  => Storage (price: $0.13/GiB/Mo, quantity: 500, monthly: $65.00)
  => IOPS (monthly: $73.00)
    => IOPS (price: $0.00001/Hr, quantity: 10000, monthly: $73.00)
```

### Creating a hyperdisk-balanced disk

```yaml
defaults:
  zone: us-central1-a

resources:
  # hyperdisk-balanced - Within free tier for both IOPS and throughput
  - type: compute.v1.disk
    name: hdb-free-tier
    props:
      size_gb: 100
      type: diskTypes/hyperdisk-balanced
      provisioned_iops: 3000     # within 3,000 IOPS free tier
      provisioned_throughput: 140 # within 140 MiB/s free tier

  # hyperdisk-balanced - Exceeding free tier for both IOPS and throughput
  - type: compute.v1.disk
    name: hdb-paid-tier
    props:
      size_gb: 500
      type: diskTypes/hyperdisk-balanced
      provisioned_iops: 6000     # 3,000 above free tier
      provisioned_throughput: 280 # 140 MiB/s above free tier
```

#### Example price for above configuration

```
hdb-free-tier (action: create, monthly: $9.00, change: +100%)
  => Storage (price: $0.09/GiB/Mo, quantity: 100, monthly: $9.00)
  => IOPS (monthly: $0.00)
    => Tier 1 (First 3000 IOPS included - quantity: 3000, monthly: $0.00)
  => Throughput (monthly: $0.00)
    => Tier 1 (First 140 MiB/s included - quantity: 140, monthly: $0.00)
hdb-paid-tier (action: create, monthly: $65.08, change: +100%)
  => Storage (price: $0.09/GiB/Mo, quantity: 500, monthly: $45.00)
  => IOPS (monthly: $9.86)
    => Tier 1 (First 3000 IOPS included - quantity: 3000, monthly: $0.00)
    => Tier 2 (Over 3000 IOPS - price: $0.0000045/Hr, quantity: 3000, monthly: $9.86)
  => Throughput (monthly: $10.22)
    => Tier 1 (First 140 MiB/s included - quantity: 140, monthly: $0.00)
    => Tier 2 (Over 140 MiB/s - price: $0.00010/Hr, quantity: 140, monthly: $10.22)
```

### Creating a hyperdisk-extreme disk

```yaml
defaults:
  zone: us-central1-a

resources:
  # hyperdisk-extreme - High-performance disk with provisioned IOPS (no free tier for IOPS)
  - type: compute.v1.disk
    name: hde-disk
    props:
      size_gb: 1000
      type: diskTypes/hyperdisk-extreme
      provisioned_iops: 50000
```

#### Example price for above configuration

```
hde-disk (action: create, monthly: $495.00, change: +100%)
  => Storage (price: $0.13/GiB/Mo, quantity: 1000, monthly: $130.00)
  => IOPS (monthly: $365.00)
    => IOPS (price: $0.00001/Hr, quantity: 50000, monthly: $365.00)
```

### Creating a hyperdisk-throughput disk

```yaml
defaults:
  zone: us-central1-a

resources:
  # hyperdisk-throughput - Throughput-optimized disk (no free tier for throughput)
  - type: compute.v1.disk
    name: hdt-disk
    props:
      size_gb: 2048
      type: diskTypes/hyperdisk-throughput
      provisioned_throughput: 500
```

#### Example price for above configuration

```
hdt-disk (action: create, monthly: $118.42, change: +100%)
  => Storage (price: $0.04/GiB/Mo, quantity: 2048, monthly: $81.92)
  => Throughput (monthly: $36.50)
    => Throughput (price: $0.00010/Hr, quantity: 500, monthly: $36.50)
```
