Output nodes
Output nodes end a pipeline: they write files, folders in cloud storage and SFTP, database and warehouse tables, Apache Iceberg tables, records in SaaS applications, Google Sheets, and email.
A test run reads a sample of 50 rows and never writes to a system outside Trinium.
Write rows to an Apache Iceberg table through AWS Glue, S3 Tables or a REST catalog, appending or fully refreshing, with auto-create and partitioning. No crawler needed.
Write the pipeline's output to an Azure Storage container with a templated blob path (dates, run id) and a write mode.
Load rows into a BigQuery table with a load job, appending or replacing. Loading is free, and the table is created if needed.
Load rows into a ClickHouse table (append or replace; auto-creates a MergeTree).
Write the incoming rows to a CSV file.
Load rows into a Databricks table (append or replace) through a Unity Catalog volume.
Write a styled Excel report with a table, number formats and an optional chart.
Copy, move or delete the files an input, List Files or File from URL hands it through its Files anchor, before the data is processed or after the run succeeds or fails.
Write the pipeline's output to a Google Cloud Storage bucket with a templated key (dates, run id) and a write mode.
Write rows to a tab in a Google spreadsheet, overwriting or appending, and optionally creating the tab.
Write rows as an array or newline-delimited JSON.
Write rows into a MongoDB collection as documents. Turn on All or nothing and a replace that fails leaves the old collection in place.
Load rows into a MySQL table. Turn on All or nothing and a load that fails leaves the table as it was.
Write the pipeline's output to a Windows network share or a NAS over SMB with a templated path (dates, run id) and a write mode.
Write the incoming rows to a columnar Parquet file.
Load rows into a PostgreSQL table (append, truncate, or upsert). The load is one transaction by default, so a load that fails leaves the table as it was.
Load rows into an Amazon Redshift table (append, replace, or upsert). Best for small and medium loads. The load is one transaction by default, so a load that fails leaves the table as it was.
Push rows to an HTTP API, one record per request or many batched into one.
Write the pipeline's output to an S3 bucket with a templated key (dates, run id) and a write mode.
Write rows back to Salesforce: insert, update, upsert or delete, 200 records a request, with every rejected record reported.
Email the rows to people: one message per row, per group, or one for the whole run, with the data attached as CSV or Excel.
Write the pipeline's output to an SFTP server with a templated path (dates, run id) and a write mode.
Load rows into a Snowflake table, creating it if it doesn't exist.
Load rows into a SQL Server table. Turn on All or nothing and a load that fails leaves the table as it was.
Write the incoming rows into a table in a new SQLite database file.
Load rows into a Trino / Starburst table (append or truncate; auto-creates). Turn on All or nothing and an append that fails leaves the table as it was.