[Yandex Cloud documentation](../../index.md) > [Yandex MPP Analytics for PostgreSQL](../index.md) > FAQ > Cluster and hosts

# Yandex MPP Analytics for PostgreSQL clusters and hosts

* [What is a database host and database cluster?](#what-is-cluster)

* [How many database hosts can a cluster contain?](#how-many-hosts)

* [How many clusters can you create in a single cloud?](#db-limit)

* [How are database clusters maintained?](#service-window)

* [How do you calculate the usage cost for a database host?](#db-cost)

* [Why is my cluster slow even though the computing resources are not fully utilized?](#throttling)

* [Why do I get a minimum memory error for Yandex MPP Analytics for PostgreSQL processes?](#memory-limit)

* [What time does it take for deleted objects to get irreversibly removed from a hybrid storage?](#hybrid-storage-vacuum)

#### What is a database host and database cluster? {#what-is-cluster}

A _database host_ is a cloud-based isolated database environment with dedicated computing resources and reserved storage capacity.

A _database cluster_ consists of one or more database hosts with configurable replication across them.

#### How many database hosts can a cluster contain? {#how-many-hosts}

A Yandex MPP Analytics for PostgreSQL cluster includes a minimum of four hosts:

* two master hosts
* two segment hosts

You can increase the number of segment hosts up to 32.

For more information, see [Quotas and limits](../concepts/limits.md).

#### How many clusters can you create in a single cloud? {#db-limit}

To learn more about MDB technical and organizational limitations, see [Quotas and limits](../concepts/limits.md).

#### How are database clusters maintained? {#service-window}

Maintenance in Yandex MPP Analytics for PostgreSQL includes:

* Automatic installation of DBMS updates and fixes for your database hosts.
* Changes in the host class and storage size.
* Other Yandex MPP Analytics for PostgreSQL maintenance tasks.

For more information, see [Maintenance](../concepts/maintenance.md).


#### How do you calculate the usage cost for a database host? {#db-cost}

In Yandex MPP Analytics for PostgreSQL, the usage cost is calculated based on the following variables:

* Selected host class.
* Reserved storage capacity for the database host.
* Size of database cluster backups. You do not pay for backups as long as their size does not exceed the storage capacity. Additional backup storage is charged according to our [pricing policy](../pricing/index.md).
* Database host uptime in hours. Partial hours are rounded to the nearest whole hour. For the hourly rates of each host class, see our [pricing policy](../pricing/index.md).


#### Why is my cluster slow even though the computing resources are not fully utilized? {#throttling}

Your storage may have insufficient maximum [IOPS and bandwidth](../../compute/concepts/storage-read-write.md) to process the current number of requests. In this case, [throttling](../../compute/concepts/storage-read-write.md#throttling) occurs, which degrades the entire cluster performance.

The maximum IOPS and bandwidth values increase by a fixed value when the storage size increases by a certain step. The step and increment values depend on the disk type:

| Disk type                  | Step, GB | Max IOPS increase (read/write) | Max bandwidth increase (read/write), MB/s |
|-----------------------------|---------|------------------------------------|-----------------------------------------------|
| `network-hdd`               | 256     | 300/300                            | 30/30                                         |
| `network-ssd`               | 32      | 1,000/1,000                          | 15/15                                         |
| `network-ssd-nonreplicated`, `network-ssd-io-m3` | 93      | 28,000/5,600                         | 110/82                                        |

To increase the maximum IOPS and bandwidth and reduce the risk of throttling, expand the storage size when [updating your cluster](../operations/update.md#change-disk-size).

For storage using the `network-hdd` disk type, we recommend switching to `network-ssd` or `network-ssd-nonreplicated` via a [cluster restore](../operations/cluster-backups.md#restore) from backup.

#### Why do I get a minimum memory error for Yandex MPP Analytics for PostgreSQL processes? {#memory-limit}

When creating, modifying, or restoring a cluster, you may get this error:

```text
Per process memory must be more then '20971520' bytes on segment host, got '<calculated_memory_size>'
```

This error occurs if the memory size for each Yandex MPP Analytics for PostgreSQL process is less than 20 MB and the number of connections equals the [max_connections](../concepts/settings-list.md#setting-max-connections) value. The minimum memory per cluster process is calculated using the following formula:

```text
<host_segment_RAM> ÷ (<max_connections> x <number_of_segments_per_host>)
```

To fix the error, do one of the following:

* Reduce the `max_connections` value.
* Increase the memory size by changing the [segment host class](../concepts/instance-types.md).

#### What time does it take for deleted objects to get irreversibly removed from hybrid storage? {#hybrid-storage-vacuum}

Deleted files are stored in the service bucket for one week, then moved to the _recycle bin_ and permanently deleted after another week.

For more information, see [Hybrid storage cleanup](../concepts/hybrid-storage.md#storage-vacuum).