Open Table Iceberg - Select

Overview

The Open Table Iceberg - Select Snap executes a SQL SELECT statement on an Iceberg catalog and outputs each result row as a document. You can filter rows using a WHERE clause, limit and offset the result set, specify which columns to return, and query historical data using time travel.

An optional second output view emits schema metadata — one document per column — which can be connected to the second input view of the Open Table Iceberg - Insert Snap to replicate the source table schema in the target.



  • This is a Read-type Snap.
  • Does not support Ultra Tasks

Prerequisites

  • A configured Open Table Iceberg Account with access to the target catalog and schema.
  • The target schema (namespace) and table must exist in the Iceberg catalog.

Supported Accounts

Snap views

Type Description Examples of upstream and downstream Snaps
Input

This Snap has at most one document input view. When connected, the input document can supply expression values for Snap settings fields.

Output

The primary output view emits one document per result row. Each document contains the column names and values returned by the SELECT statement.

An optional second output view emits one document per column with the following fields: columnName (string), dataType (string), and nullable (boolean). Connect this view to the second input view of the Open Table Iceberg - Insert Snap to propagate the schema.

Learn more about Error handling.

Snap settings

Note: Learn about the common controls in the Snap settings dialog.
Field/Field set Description

Label

String

Required. Specify a unique name for the Snap. Modify this to be more appropriate, especially if more than one of the same Snaps is in the pipeline.

Default value: Open Table Iceberg - Select

Example: Iceberg Read Orders

Schema Name*

String/Expression/ Suggestion

Specify the schema (namespace) that contains the table to query. Click the Suggest icon to select from available namespaces in the catalog.

Default value: None

Example: db

Table Name*

String/Expression/ Suggestion

Specify the name of the Iceberg table to query. Click the Suggest icon to select from available tables in the selected schema.

Default value: None

Example: orders

Where Clause

String/Expression/ Suggestion

Specify a SQL WHERE predicate to filter the rows returned. Do not include the WHERE keyword. Click the Suggest icon to select column names from the target table.

Default value: None

Example: status = 'active' AND region = 'US'

Output Fields — Use this field set to specify which columns to include in the output. Click Plus Icon to add a row and specify one column name per row. If empty, all columns are returned.
Output Field

String/Expression/ Suggestion

Specify the name of a column to include in the output. Click the Suggest icon to select from available columns in the selected table.

Default value: None

Example: order_id

Order By — Use this field set to define the sort order of the result set. Click Plus Icon to add a row and specify one entry per sort column.
Column Names

String/Expression/ Suggestion

Specify a comma-separated list of column names to sort by. Click the Suggest icon to select column names.

Default value: None

Example: order_date,customer_id

Time Travel Properties — Use this single-row field set to query a historical version of the Iceberg table. When populated, the Snap adds an AS OF clause to the query.
Key Column

Dropdown list

Select the type of time travel reference to use:

  • Snapshot ID — query the table as of a specific Iceberg snapshot (integer).
  • Timestamp — query the table as of a specific point in time.

Default value: Snapshot ID

Example: Timestamp

Value Column

String/Expression

Specify the snapshot ID (integer) or timestamp for time travel. Timestamps must be in YYYY-MM-DD HH:MM:SS.mmm or ISO-8601 format.

Default value: None

Example: 1234567890123456789 (Snapshot ID) or 2025-01-15 10:30:00.000 (Timestamp)

Limit Rows

Integer/Expression

Specify the maximum number of rows to return. Set to 0 or leave empty to return all rows.

Default value: None

Example: 1000

Limit Offset

Integer/Expression

Specify the number of rows to skip before returning results. Requires Limit Rows to be set.

Default value: None

Example: 100

Snap execution

Dropdown list
Choose one of the three modes in which the Snap executes. Available options are:
  • Validate & Execute: Performs limited execution of the Snap and generates a data preview during pipeline validation. Subsequently, performs full execution of the Snap (unlimited records) during pipeline runtime.
  • Execute only: Performs full execution of the Snap during pipeline execution without generating preview data.
  • Disabled: Disables the Snap and all Snaps that are downstream from it.

Default value: Execute only

Example: Validate & Execute

Troubleshooting

Error Reason Resolution
Invalid identifier The schema name or table name contains characters not allowed in SQL identifiers. Use only letters, digits, and underscores, and ensure the name begins with a letter or underscore.
Invalid snapshot ID The value provided in the Value Column for Snapshot ID time travel is not a valid integer. Provide a valid long integer as the Snapshot ID.
Invalid time travel timestamp The timestamp provided does not match the expected format. Use YYYY-MM-DD HH:MM:SS.mmm or ISO-8601 format for the timestamp value.
Offset specified without a limit Limit Offset is set but Limit Rows is not. Set a value for Limit Rows when using Limit Offset.