123456789101112131415161718192021222324252627282930 |
- In Materialize, a [cluster](/concepts/clusters/) is an isolated environment,
- similar to a virtual warehouse in Snowflake. When you create a cluster, you
- choose the size of its compute resource allocation based on the work you need
- the cluster to do, whether ingesting data from a source, computing
- always-up-to-date query results, serving results to external clients, or a
- combination.
- In this step, you'll create a dedicated cluster for ingesting source data from
- your PostgreSQL database.
- 1. In the [SQL Shell](https://console.materialize.com/), or your preferred SQL
- client connected to Materialize, use the [`CREATE CLUSTER`](/sql/create-cluster/)
- command to create the new cluster:
- ```mzsql
- CREATE CLUSTER ingest_postgres (SIZE = '50cc');
- SET CLUSTER = ingest_postgres;
- ```
- A cluster of [size](/sql/create-cluster/#size) `50cc` should be enough to
- accommodate multiple PostgreSQL sources, depending on the source
- characteristics (e.g., sources with [`ENVELOPE UPSERT`](/sql/create-source/#upsert-envelope)
- or [`ENVELOPE DEBEZIUM`](/sql/create-source/#debezium-envelope) will be more
- memory-intensive) and the upstream traffic patterns. You can readjust the
- size of the cluster at any time using the [`ALTER CLUSTER`](/sql/alter-cluster) command:
- ```mzsql
- ALTER CLUSTER <cluster_name> SET ( SIZE = <new_size> );
- ```
|