Skip to end of banner
Go to start of banner

AlloyDB - Vector Search

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Current »

In this article

Overview

You can use this Snap to perform advanced vector-based queries using the SELECT statement.

alloydb-vector-search-overview.png

Snap Type

The AlloyDB - Vector Search Snap is a Read-type Snap.

Prerequisites

A valid account with the required permissions.

Support for Ultra Pipelines

Works in Ultra Pipelines

Limitations and Known Issues

None.

Snap Views

Type

Format

Number of Views

Examples of Upstream and Downstream Snaps

Description

Input 

Document

 

 

  • Min: 1

  • Max: 1

  • Mapper

  • Copy

  • Requires an input vector with the same dimension as the selected vector column.

  • Requires a vector input with an array of float/int data types.

Output

Document

 

  • Min: 1

  • Max: 1

  • Mapper

  • Copy

For each input document, all results are grouped into a single output document.

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 when running the pipeline by choosing one of the following options from the When errors occur list under the Views tab:

  • Stop Pipeline Execution: Stops the current pipeline execution if the Snap encounters an error.

  • Discard Error Data and Continue: Ignores the error, discards that record, and continues with the remaining records.

  • Route Error Data to Error View: Routes the error data to an error view without stopping the Snap execution.

Learn more about Error handling in Pipelines.

Snap Settings

  • Asterisk ( * ): Indicates a mandatory field.

  • Suggestion icon ((blue star)): Indicates a list that is dynamically populated based on the configuration.

  • Expression icon ((blue star) ): Indicates the value is an expression (if enabled) or a static value (if disabled). Learn more about Using Expressions in SnapLogic.

  • Add icon ( (blue star) ): Indicates that you can add fields in the fieldset.

  • Remove icon ( (blue star)): Indicates that you can remove fields from the fieldset.

  • Upload icon ((blue star) ): Indicates that you can upload files.

Field Name

Field Type

Description

Label*

 

Default ValueAlloyDB Vector Search
Example: AlloyDB VS

String

Specify a name for the Snap. You can modify this to be more specific, especially if you have more than one of the same Snap in your pipeline.

 

Schema name

 

Default Value: N/A
Example: VECTOR_DEMO

String/Expression/Suggestion

Specify the schema name when searching for a vector.

Table Name*

 

Default Value: N/A 
Example: VECTOR_DEMO.BOOKS

String/Expression/Suggestion

Specify the table name when searching for a vector.

 

Vector Column*

 

Default Value: N/A
Example: INT_VEC

String/Expression/Suggestion

Specify the vector column name to search.

Where Clause

 

Default Value: N/A
Example: ID > '001i0000007FVjpAAG'

String/Expression/Suggestion

Specify the where clause to use in the vector search query statement.

Because of the limitation of SQL standard, you cannot use the _SL_DISTANCE column in the where clause.

Limit Rows

 

Default Value4
Example: 3
Min Value: 1

Integer/Expression/Suggestion

Specify the number of results to return for each query.

 

Distance Function*

 

Default ValueL2
Example: COSINE

Dropdown List

Choose the similarity function to compare vectors. The available options are:

  • L2: (Euclidean Distance) Measures the straight-line distance between two points. It’s useful when you want to calculate the "as-the-crow-flies" distance.

  • L1: (Manhattan Distance) Measures the distance between two points along the axes at right angles. It’s useful in grid-based systems, like city streets.

  • COSINE: Measures the cosine of the angle between two vectors. It is commonly used in high-dimensional positive spaces to assess similarity irrespective of magnitude.

  • Inner Product: (Dot Product) Measures the similarity between two vectors. It’s useful in various applications, such as calculating the angle between vectors or finding projections.

Learn more about the Vector Similarity Functions.

Include vector values

 

Default Value: Deselected

Checkbox/Expression

Select this checkbox to include vector values in the response.

This field does not support input schema from the upstream Snaps.

Include scores

 

Default ValueSelected

Checkbox/Expression

Select this checkbox to include similarity scores in the response.

  • This field does not support input schema from the upstream Snaps.

  • When you select this checkbox, the output preview displays _SL_DISTANCE, which is the distance between the input vector and vectors in the database.

Ignore empty result

Default Value: Deselected

Checkbox

Select this checkbox if you want the Snap to produce no output when no matching vector is found. Otherwise, the Snap outputs a blank document when there are no matching vectors.

Number of retries

 

Default Value0
Example: 3

Integer/Expression

Specify the maximum number of attempts to be made to receive a response.

Retry interval (seconds)

 

Default Value0
Example: 3

Integer/Expression

Specify the minimum number of seconds the Snap must wait before each retry attempt.

Snap execution

Default ValueValidate & Execute
Example: Execute only

Dropdown list

Select one of the following three modes in which the Snap executes:

  • 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.

 Snap Pack History

 Click here to expand...

Release

Snap Pack Version

Date

Type

Updates

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 Binary type.

May 2024

437patches27172

Latest

  • Added the AlloyDB - Vector Search Snap to enable advanced vector-based queries using the SELECT statement.

  • Upgraded the JDBC driver from v42.4.2 to v42.7.2 (Java 8). This upgrade will be part of the Stable release (GA) on August 14, 2024. The 42.7.2 JDBC driver (default driver) is now bundled with the Google AlloyDB Snap Pack. Learn more.

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.
The 42.7.2 JDBC driver (default driver) is now bundled with the AlloyDB Snap Pack. Learn more.

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:

  • The Create table if not present checkbox is selected.

  • The target table does not exist.

  • The table metadata is provided in the second input view.

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:


Related Content

  • No labels