> ## Documentation Index
> Fetch the complete documentation index at: https://docs.maia.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# PostgreSQL Unload



\<table><tbody><tr><td>Project Availability</td>
            \<td /></tr>
          \<tr><td>Component Type</td>
            \<td>Connector, Orchestration</td></tr>
          \<tr><td>Connection Inputs</td>
            \<td>One</td></tr>
          \<tr><td>Connection Outputs</td>
            \<td>Unlimited</td></tr></tbody></table>

The PostgreSQL Unload orchestration component lets you write data from your data warehouse to a target PostgreSQL database.If the component requires access to a cloud provider (AWS, Azure, or Google Cloud), it will use credentials as follows:- If using [Full SaaS](https://docs.maia.ai/docs/guides/runner-overview.md#matillion-full-saas): The component will use the [cloud credentials](https://docs.maia.ai/docs/guides/cloud-credentials.md) associated with your environment to access resources.
- If using [Hybrid SaaS](https://docs.maia.ai/docs/guides/runner-overview.md#hybrid-saas): By default the component will inherit the agent's execution role (service account role). However, if there are [cloud credentials](https://docs.maia.ai/docs/guides/cloud-credentials.md) associated with your environment, these will overwrite the role.***## PropertiesReference material is provided below for the Source and Destination properties.**Name** `string` *required*A human-readable name for the component.### Source**Snowflake****Database** `drop-down` *required*The Snowflake database. The special value `[Environment Default]` uses the database defined in the environment. Read [Databases, Tables and Views - Overview](https://docs.snowflake.com/en/guides-overview-db) to learn more.**Schema** `drop-down` *required*The Snowflake schema. The special value `[Environment Default]` uses the schema defined in the environment. Read [Database, Schema, and Share DDL](https://docs.snowflake.com/en/sql-reference/ddl-database.html) to learn more.**Table** `drop-down` *required*Select the table to unload to the target PostgreSQL database. The tables available for selection depend on the chosen schema.**Databricks****Catalog** `drop-down` *required*Select a [Databricks Unity Catalog](https://docs.databricks.com/en/data-governance/unity-catalog/index.html). The special value `[Environment Default]` uses the catalog defined in the environment. Selecting a catalog will determine which databases are available in the next parameter.**Schema (Database)** `drop-down` *required*The Databricks schema. The special value `[Environment Default]` uses the schema defined in the environment. Read [Create and manage schemas](https://docs.databricks.com/en/data-governance/unity-catalog/create-schemas.html) to learn more.**Table** `drop-down` *required*Select the table to unload to the target PostgreSQL database. The tables available for selection depend on the chosen schema.**Amazon Redshift****Schema** `drop-down` *required*Select the table schema. The special value `[Environment Default]` uses the schema defined in the environment. For more information on using multiple schemas, read [Schemas](https://docs.aws.amazon.com/redshift/latest/dg/r_Schemas_and_tables.html).**Table** `drop-down` *required*Select the table to unload to the target PostgreSQL database. The tables available for selection depend on the chosen schema.**Google BigQuery****GCP Project ID** `drop-down` *required*The Google Cloud project that owns the BigQuery dataset. The special value `[Environment Default]` uses the Google Cloud project defined in the environment. For more information, read [Creating projects](https://docs.cloud.google.com/resource-manager/docs/creating-managing-projects).**Dataset** `drop-down` *required*The Google BigQuery dataset containing the table to query. The special value `[Environment Default]` uses the dataset defined in the environment.**Table** `drop-down` *required*Select the table to unload to the target PostgreSQL database. The tables available for selection depend on the chosen dataset.**Columns** `object selector`Select columns to return from the table.Leave this blank to unload all columns.**Primary Keys** `object selector`Select one or more columns to use as the table's primary key. The component uses the primary key to identify matching rows in the target table when determining the update strategy.If you select multiple columns, the component creates a composite primary key using the combination of the selected columns.Leave this blank to load all rows without duplicate checking.**Limit** `integer`Set a numeric value to limit the number of rows that are unloaded. The default is an empty field, which unloads all rows.**Filter Conditions** `column editor`Define one or more filter conditions that each row of data must meet to be unloaded.- **Input Column:** Select an input column. The available input columns vary depending upon the selected table.
- **Qualifier:**
  * **Is:** Compares the column to the value using the comparator.
  * **Not:** Reverses the effect of the comparison, so "Equals" becomes "Not equals", "Less than" becomes "Greater than or equal to", etc.
- **Comparator:** Choose a method of comparing the column to the value. Possible comparators include: "Equal to", "Greater than", "Less than", "Greater than or equal to", "Less than or equal to", "Like", "Null". Not all column types support all comparators.
- **Value:** The value to be compared.Click the **Text Mode** toggle at the bottom of the **Filter Conditions** dialog to open a multi-line editor that lets you add items in a single block. For more information, read [Text mode](https://docs.maia.ai/docs/guides/components-overview.md#component-properties).**Combine Condition** `drop-down`The filter conditions you have defined can be combined using either **And** or **Or** logic. If **And**, then all filter conditions must be satisfied to unload the data row. If **Or**, then only a single filter condition must be satisfied. The default is **And**.If you have only one filter condition, or no filter conditions, this parameter is essentially ignored.### Destination**Connection** `drop-down` *required*Select a [Connection](https://docs.maia.ai/docs/guides/connections.md). This connection defines all credentials needed to connect to the service.If the required connection doesn't yet exist, you can create it here by selecting **Add Connection** in the drop-down. Read [Add a connection](https://docs.maia.ai/docs/guides/connections.md#add-a-connection) for further details, following that process from step 4 onwards. A connection created here is visible in the **Connections** tab and available for other connectors to use.**Schema** `string` *required*The name of the PostgreSQL schema to write the target table into.**Table** `string` *required*The name of the table to create or write to in the target PostgreSQL database.**Write Mode** `drop-down` *required*Define what happens when the component writes to the target table.- **Replace:** If the specified table already exists, it will be dropped and recreated with the new data. If the table doesn't exist, a new table is created.
- **Truncate and insert:** If the specified table already exists, all existing rows are removed before new rows are inserted. If the table doesn't exist, a new table is created.
- **Append:** New rows are added to the existing table. If the table doesn't exist, a new table is created. When **Primary Keys** are specified, the **Update Strategy** property determines how duplicate rows are handled.**Update Strategy** `drop-down` *required*When **Write Mode** is set to **Append** and **Primary Keys** have been specified, this property determines how existing rows with matching primary key values are handled.- **Ignore:** Rows in the destination with the same primary key values as incoming rows are kept unchanged. This is the default behavior.
- **Replace:** Rows in the destination with the same primary key values as incoming rows are replaced with the incoming data.**Connection Options** `column editor`- **Parameter:** A JDBC parameter supported by the database driver. The available parameters are explained in the data model. Manual setup is not usually required, since sensible defaults are assumed.
- **Value:** A value for the given parameter.Toggle **Text mode** on at the bottom of the dialog to open a multi-line editor that lets you add items in a single block. For more information, read [Text mode](https://docs.maia.ai/docs/guides/components-overview.md#text-mode).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.