In this article
Overview
You can use this Snap to execute arbitrary SQL.
This Snap works only with single queries.
Snap Type
The AlloyDB Execute Snap is a Write-type Snap that executes the specific query.
Prerequisites
A valid account with the required permissions.
Support for Ultra Pipelines
Works in Ultra Task Pipelines.
Limitations
Does not support $$
as an escape character for enclosing string input, as $
is a reserved character for variable substitution in SnapLogic..
Known Issues
None.
Snap Views
Type | Format | Number of Views | Examples of Upstream and Downstream Snaps | Description |
---|---|---|---|---|
Input | Document |
|
| If the input view is defined, then the WHERE clause can substitute incoming values for a given expression. Valid JSON paths that are defined in the WHERE clause for queries or statements are substituted with values from an incoming document. If the document is missing a value to be substituted into the query or statement documents, it is written to the error view. |
Output | Document |
|
| The executed query result. If a SELECT query is executed, the query's results are merged into the incoming document and any existing keys will have their values overwritten. On the other hand, the original document is written if there are no results from the query. |
Error | Error handling is a generic way to handle errors without losing data or failing the Snap execution. You can handle the errors that the Snap might encounter while running the Pipeline by choosing one of the following options from the When errors occur list under the Views tab:
Learn more about Error handling in Pipelines. |
Snap Settings
Asterisk ( * ): Indicates a mandatory field.
Suggestion icon (): Indicates a list that is dynamically populated based on the configuration.
Expression icon ( ): Indicates the value is an expression (if enabled) or a static value (if disabled). Learn more about Using Expressions in SnapLogic.
Add icon ( ): Indicates that you can add fields in the fieldset.
Remove icon ( ): Indicates that you can remove fields from the fieldset.
Upload icon ( ): Indicates that you can upload files.
Field Name | Field Type | Description |
---|---|---|
Label* Default Value: AlloyDB Execute | String | Specify a unique name for the Snap. |
SQL Statement Default Value:
| String/Expression | Specify the SQL statement to execute on the server. Scenarios to successfully execute your SQL statements You must understand the following scenarios to successfully execute your SQL statements: Scenario 1: Executing SQL statements without expressions
Scenario 2: Executing SQL queries with expressions
Note: Table name and column names must not be provided as bind parameters. Only values can be provided as bind parameters. We recommend you to add a single query in the SQL Statement field. |
Query type Default Value: Auto | Dropdown list/Expression | Select the type of query for your SQL statement (Read or Write). When Auto is selected, the Snap tries to determine the query type automatically. |
Pass through
| Checkbox | Select this checkbox to pass the input document to the output view under the key This field applies only to queries with the SELECT statement. |
Ignore empty result
| Checkbox | Select this checkbox to not write any document to the output view when a SELECT operation does not produce any result. |
Number of Retries
| Integer/Expression | Specify the maximum number of attempts to be made to receive a response. The request is terminated if the attempts do not result in a response. |
Retry Interval (Seconds)
| Integer/Expression | Specify the time interval between two successive retry requests. A retry happens only when the previous attempt results in an exception. |
Auto Commit
| Dropdown list | Choose one of the following options to override the state of the Auto commit on the account.
Auto commit may be enabled for certain use cases if the AlloyDB JDBC driver is used in either the Redshift, AlloyDB, or generic JDBC Snap. However, the JDBC driver may cause out of memory issues when SELECT statements are executed. In such cases, Auto Commit in the Snap should be set to False and the Fetch size in the Account settings can be increased for optimal performance. Behavior of DML Queries in Database Execute Snap when auto-commit is false
|
Snap Execution Default Value: Execute only | Dropdown list | Select one of the following three modes in which the Snap executes:
|
Snap Pack History
Release | Snap Pack Version | Date | Type | Updates |
---|---|---|---|---|
November 2024 | main29029 |
| Stable | Updated and certified against the current SnapLogic Platform release. |
August 2024 | main27765 |
| Stable | Updated and certified against the current Snaplogic Platform release. |
May 2024 | 437patches27416 |
| Latest | Fixed an issue with the AlloyDB Bulk Load Snap that caused incorrect or invalid binary data to be inserted when the column was of |
May 2024 | 437patches27172 |
| Latest |
|
May 2024 | 4postgresupgrade26570 |
| - | Upgraded the JDBC driver from v42.4.2 to v42.7.2 (Java 8). This upgrade will be part of the latest release on July 10, 2024, and the Stable release (GA) on August 14, 2024. |
May 2024 | main26341 |
| Stable | Updated the Delete Condition (Truncates a Table if empty) field in the AlloyDB Delete Snap to Delete condition (deletes all records from a table if left blank) to indicate that all entries will be deleted from the table when this field is blank, but no truncate operation is performed. |
February 2024 | main25112 |
| Stable | Updated and certified against the current SnapLogic Platform release. |
November 2023 | main23721 |
| Stable | Updated and certified against the current SnapLogic Platform release. |
August 2023 | main22460 |
| Stable | The AlloyDB Execute Snap now includes a new Query type field. When Auto is selected, the Snap tries to determine the query type automatically. |
May 2023 | main21015 |
| Stable | Upgraded with the latest SnapLogic Platform release. |
February 2023 | main19844 |
| Stable | Upgraded with the latest SnapLogic Platform release. |
November 2022 | main18944 |
| Stable | The AlloyDB Insert Snap now creates the target table only from the table metadata of the second input view when the following conditions are met:
|
September 2022 | 430patches18149 |
| Latest | The AlloyDB Select and AlloyDB Execute Snaps now read NaN values in Numeric columns. |
4.30Patches | 430patches17841 |
| Latest | Introduced the Google AlloyDB Snap Pack— a fully managed PostgresSQL-compatible database service that you can use for all your database workloads. This Snap Pack offers the following Snaps: |