> For the complete documentation index, see [llms.txt](https://v2.dataos.info/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://v2.dataos.info/concepts/resources/nilus/destinations.md).

# Destinations

Nilus can write into any of the destinations below. The **Pipeline Modes** column lists the pipeline `spec.type` values supported by the destination, and **Incremental Strategies** lists the values you can pass to `sink.options.incremental_strategy` for that destination.

## How to choose a destination

* Use a DataOS Lakehouse destination when you want the default analytical landing zone for batch or CDC data.
* Use a warehouse destination such as BigQuery, Databricks, Redshift, Snowflake, PostgreSQL, MS SQL Server, or MongoDB when downstream consumers already operate there.
* Stream pipelines use the same destination connectors; `append` is typically the safest starting strategy for event-style records.

| Connector                                                                                                | Pipeline Modes     | Incremental Strategies       |
| -------------------------------------------------------------------------------------------------------- | ------------------ | ---------------------------- |
| [AWS-backed DataOS Lakehouse](/concepts/resources/nilus/destinations/dataos-lakehouse/aws-backed.md)     | Batch, CDC, Stream | `replace`, `append`, `merge` |
| [Azure-backed DataOS Lakehouse](/concepts/resources/nilus/destinations/dataos-lakehouse/azure-backed.md) | Batch, CDC, Stream | `replace`, `append`, `merge` |
| [BigQuery](/concepts/resources/nilus/destinations/cloud-warehouses/bigquery.md)                          | Batch, CDC, Stream | `replace`, `append`, `merge` |
| [Databricks](/concepts/resources/nilus/destinations/cloud-warehouses/databricks.md)                      | Batch, CDC, Stream | `append`, `replace`, `merge` |
| [GCP-backed DataOS Lakehouse](/concepts/resources/nilus/destinations/dataos-lakehouse/gcp-backed.md)     | Batch, CDC, Stream | `replace`, `append`, `merge` |
| [MongoDB](/concepts/resources/nilus/destinations/databases/mongodb.md)                                   | Batch, CDC, Stream | `replace`, `merge`           |
| [MS SQL Server](/concepts/resources/nilus/destinations/databases/ms-sql-server.md)                       | Batch, CDC, Stream | `replace`, `append`, `merge` |
| [PostgreSQL](/concepts/resources/nilus/destinations/databases/postgresql.md)                             | Batch, CDC, Stream | `replace`, `append`, `merge` |
| [Redshift](/concepts/resources/nilus/destinations/cloud-warehouses/redshift.md)                          | Batch, CDC, Stream | `replace`, `append`, `merge` |
| [Snowflake](/concepts/resources/nilus/destinations/cloud-warehouses/snowflake.md)                        | Batch, CDC, Stream | `replace`, `append`, `merge` |

> The three DataOS Lakehouse rows above all use the same underlying Nilus destination connector, the storage backend is selected by the Lakehouse Depot at runtime, not by a separate connector type. Each row links to a per-cloud page that documents the Depot shape, secrets, and any cloud-specific sink options.

## Incremental strategies at a glance

* **`append`**: every run writes new rows on top of the existing target. Use for immutable / event-style data where rows never change after they are written.
* **`replace`**: every run rewrites the full target dataset. Use for snapshot-style sources (small dimension tables, reference data, periodic full extracts).
* **`merge`**: every run reconciles by `primary_key`: matching rows are updated, new rows are inserted. Use for keyed mutable data and as the default for CDC pipelines whose downstream consumers expect a current-state table.

For end-to-end guidance on choosing a strategy and tuning related dataset-shape settings (`partition_by`, `cluster_by`, `page_size`, `loader_file_size`, etc.), see [Optimize Sink Datasets](/concepts/resources/nilus/pipeline-optimization/optimize-sink-datasets.md).

## Related Docs

* [Batch Pipeline Config](/concepts/resources/nilus/batch/pipeline-config.md)
* [CDC Pipeline Config](/concepts/resources/nilus/cdc/service-config.md)
* [Optimize Sink Datasets](/concepts/resources/nilus/pipeline-optimization/optimize-sink-datasets.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://v2.dataos.info/concepts/resources/nilus/destinations.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
