---
id: "database-proxy"
type: "kind"
category: "data"
url: "https://localhost:3000/catalogue/kinds/database-proxy"
---

# Database proxy

Routing, pooling and shedding layer in front of a datastore.

| | |
|---|---|
| Category | Data |
| Properties | 8 |
| Components | 14 |
| Rules | 0 |

## Properties

| property | type | values | required | default |
|---|---|---|---|---|
| `hedging` (advanced) | boolean | — | no | false |
| `loadShedding` (advanced) | boolean | — | no | false |
| `managed` | boolean | — | no | false |
| `poolSharded` (advanced) | boolean | — | no | false |
| `pooling` | boolean | — | no | true |
| `requestCoalescing` (advanced) | boolean | — | no | false |
| `routing` | enum | `none`, `shard-key`, `lookup` | no | "none" |
| `scatterGather` (advanced) | boolean | — | no | false |

## Rules for this kind · 0

No rule selects this kind or its category.

## Components · 14

### vendor-neutral

- [Generic database proxy](https://localhost:3000/catalogue/components/database-proxy.md) `database-proxy` — the kind itself

### aws

- [Amazon RDS Proxy](https://localhost:3000/catalogue/components/rds-proxy.md) `rds-proxy` — 3 defaults

### cloudflare

- [Cloudflare Hyperdrive](https://localhost:3000/catalogue/components/cloudflare-hyperdrive.md) `cloudflare-hyperdrive` — 5 defaults

### default

- [MariaDB MaxScale](https://localhost:3000/catalogue/components/maxscale.md) `maxscale` — 2 defaults
- [mongos](https://localhost:3000/catalogue/components/mongos.md) `mongos` — 4 defaults
- [Odyssey](https://localhost:3000/catalogue/components/odyssey.md) `odyssey` — 2 defaults
- [PgBouncer](https://localhost:3000/catalogue/components/pgbouncer.md) `pgbouncer` — 2 defaults
- [PgCat](https://localhost:3000/catalogue/components/pgcat.md) `pgcat` — 2 defaults
- [Pgpool-II](https://localhost:3000/catalogue/components/pgpool.md) `pgpool` — 2 defaults
- [ProxySQL](https://localhost:3000/catalogue/components/proxysql.md) `proxysql` — 2 defaults
- [Supavisor](https://localhost:3000/catalogue/components/supavisor.md) `supavisor` — 2 defaults
- [Vitess](https://localhost:3000/catalogue/components/vitess.md) `vitess` — 4 defaults

### gcp

- [Cloud SQL Auth Proxy](https://localhost:3000/catalogue/components/google-cloud-sql-auth-proxy.md) `google-cloud-sql-auth-proxy` — 3 defaults

### ibm

- [IBM Data Virtualization](https://localhost:3000/catalogue/components/ibm-data-virtualization.md) `ibm-data-virtualization` — 3 defaults

## Source (`kind` YAML, verbatim)

```yaml
# yaml-language-server: $schema=../schema/kind.schema.json
# Abstract kind: Sits between services and a sharded or pooled datastore: routing, pooling, coalescing, shedding (Vitess, PgBouncer, ProxySQL).
schemaVersion: "1"
type: "kind"
id: "database-proxy"
category: "data"
properties:
  pooling:
    type: "boolean"
    default: true
  poolSharded:
    type: "boolean"
    default: false
    advanced: true
  routing:
    type: "enum"
    values: ["none", "shard-key", "lookup"]
    default: "none"
  scatterGather:
    type: "boolean"
    default: false
    advanced: true
  hedging:
    type: "boolean"
    default: false
    advanced: true
  loadShedding:
    type: "boolean"
    default: false
    advanced: true
  requestCoalescing:
    type: "boolean"
    default: false
    advanced: true
  managed:
    type: "boolean"
    default: false
```

Human page: https://localhost:3000/catalogue/kinds/database-proxy
