[Yandex Cloud documentation](../../index.md) > [Yandex Managed Service for ClickHouse®](../index.md) > FAQ > Questions about ClickHouse®

# Questions about ClickHouse®

* [Why should I use ClickHouse® in Managed Service for ClickHouse® rather than my own VM-based installation?](#clickhouse-advantages-vm)

* [When should I use ClickHouse® rather than PostgreSQL?](#clickhouse-advantages-pg)

* [How do I load data into ClickHouse®?](#load-data)

* [How do I load a large data volume into ClickHouse®?](#loadalot)

* [What will happen to my cluster if one of its nodes fails?](#node-out)

* [Can I deploy a ClickHouse® database cluster in multiple availability zones?](#multiple-az)

* [How does replication work for ClickHouse®?](#zookeeper-access)

* [Why does my ClickHouse® cluster use three extra hosts?](#why-does-a-cluster-take-up-3-hosts-more-than-it-should)

* [How does ClickHouse® handles data deletion based on TTL?](#how-ttl-data-processing-works)

* [Can I use JSON data for tables in ClickHouse®?](#how-to-use-json)

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

#### Why should I use ClickHouse® in Managed Service for ClickHouse® rather than my own VM-based installation? {#clickhouse-advantages-vm}

Managed Service for ClickHouse® automates routine database maintenance:

* Quick DB deployment with the required available resources.

* Data backup.

* Regular software updates.

* Ensuring [high availability](../concepts/high-availability.md) of database clusters.

* Database usage monitoring and statistics.

#### When should I use ClickHouse® rather than PostgreSQL? {#clickhouse-advantages-pg}

ClickHouse® only supports adding and reading data since it is primarily designed for analytics (OLAP). For other purposes, you might want to use PostgreSQL.

#### How do I load data into ClickHouse®? {#load-data}

Use the `INSERT` statement described in [this ClickHouse® guide](https://clickhouse.com/docs/enen/sql-reference/statements/insert-into).

#### How do I load a large data volume into ClickHouse®? {#loadalot}

Use the [CLI](https://clickhouse.com/docs/enen/interfaces/cli) to efficiently compress data when transferring it (we recommend issuing no more than one `INSERT` command per second).

Currently, data transfer from physical media is not supported.

#### What will happen to my cluster if one of its nodes fails? {#node-out}

DB clusters consist of at least two replicas, so if one node is down, the cluster will keep running.

You may lose data only if a node with a [non-replicated table](https://clickhouse.com/docs/enen/engines/table-engines/mergetree-family/replication) fails.

#### Can I deploy a ClickHouse® database cluster in multiple availability zones? {#multiple-az}

Yes. A database cluster may consist of hosts residing in different availability [zones](../../overview/concepts/geo-scope.md) or even regions.

#### How does replication work for ClickHouse®? {#zookeeper-access}

Managed Service for ClickHouse® clusters use ClickHouse® Keeper or ZooKeeper for replication. In both cases, to ensure replication and [high availability](../concepts/high-availability.md), a minimum of three ClickHouse® Keeper or ZooKeeper hosts are created in the cluster.

#### Why does my ClickHouse® cluster use three extra hosts? {#why-does-a-cluster-take-up-3-hosts-more-than-it-should}

When you create a ClickHouse® cluster of two or more hosts, Managed Service for ClickHouse® automatically creates three hosts for the selected coordination service,ClickHouse® Keeper or ZooKeeper, to manage replication and high availability. These hosts are counted towards both the cloud [resource quota](https://console.yandex.cloud/cloud?section=quotas) and the cluster cost. By default, ClickHouse® Keeper or ZooKeeper hosts come with the minimum [host class](../concepts/instance-types.md).

For more information on using ZooKeeper, see [this ClickHouse® guide](https://clickhouse.com/docs/enen/engines/table-engines/mergetree-family/replication).

#### How does ClickHouse® handles data deletion based on TTL? {#how-ttl-data-processing-works}

With [TTL](https://clickhouse.com/docs/enen/engines/table-engines/mergetree-family/mergetree#mergetree-table-ttl), data is deleted in [parts](https://clickhouse.com/docs/enen/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-multiple-volumes) or during merges rather than in rows.

Deleting entire data parts is more efficient and uses less server resources, but requires the TTL expression and [partitioning key](https://clickhouse.com/docs/enen/engines/table-engines/mergetree-family/custom-partitioning-key) to match or be of the same granularity for all rows in a data part.

Deleting data during merges uses more resources and takes place either along with regular background merges or during unscheduled merges. Merge frequency is defined by the `merge_with_ttl_timeout` parameter, which indicates the minimum time in seconds before a repeat merge to process data with expired TTL. You set this parameter when [creating](https://clickhouse.com/docs/enen/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-creating-a-table) the table. The default value is 14,400 seconds (4 hours).

We recommend managing data with TTL so that old data is always deleted in data parts. To do this, set [ttl_only_drop_parts](https://clickhouse.com/docs/enen/operations/settings/settings#ttl_only_drop_parts) to `true` when creating tables.

#### Can I use JSON data for tables in ClickHouse®? {#how-to-use-json}

Yes, you can. However, JSON is currently an experimental data type in ClickHouse®. To allow creating tables of this type, run this query:

```sql
SET allow_experimental_object_type=1;
```

{% note info %}

The `SET` queries are [not supported](../operations/web-sql-query.md#query-restrictions-in-the-management-console) when connecting to a cluster via the management console. To run such a query, use a different cluster connection method, e.g., [via clickhouse-client](../operations/connect/clients.md#clickhouse-client).

Make sure you have the latest client version installed.

{% endnote %}

For more information, see [this ClickHouse® guide](https://clickhouse.com/docs/enen/sql-reference/data-types/newjson).

#### 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 values and make throttling less likely, expand the storage when [updating your cluster](../operations/update.md#change-disk-size).

If you are using the `network-hdd` storage, consider switching to `network-ssd` or `network-ssd-nonreplicated` by [restoring the cluster](../operations/cluster-backups.md#restore) from a backup.

_ClickHouse® is a registered trademark of [ClickHouse, Inc](https://clickhouse.com)._