La plantilla para Spanner a archivos de búsqueda vectorial de Vertex AI en Cloud Storage crea una canalización por lotes que
exporta datos de incorporaciones vectoriales de una tabla de Spanner a Cloud Storage en formato
JSON. Usa los parámetros de plantilla a fin de especificar la carpeta de Cloud Storage a la que se exportarán las incorporaciones de vectores.
La carpeta de Cloud Storage contiene la lista de archivos
.json
exportados, que representan las incorporaciones de vector en un formato compatible con el
índice de Vertex AI Vector Search.
Para obtener más información, consulta Formato y estructura de los datos de entrada.
Requisitos de la canalización
- La base de datos de Spanner debe existir.
- El bucket de Cloud Storage para los datos de salida debe existir.
- Además de las funciones de administración de identidades y accesos (IAM) necesarias para ejecutar trabajos de Dataflow, necesitas lo siguiente: roles de IAM obligatorios para leer tus datos de Spanner y escribir en tu bucket de Cloud Storage.
Parámetros de la plantilla
Parámetros obligatorios
- spannerProjectId: El ID del proyecto de la instancia de Cloud Spanner.
- spannerInstanceId : ID de la instancia de Spanner desde la que se exportarán las incorporaciones de vectores.
- spannerDatabaseId : ID de la base de datos de Spanner desde la que se exportarán las incorporaciones de vectores.
- spannerTable: la table de Spanner desde la que se leerá.
- spannerColumnsToExport : Una lista separada por comas de las columnas obligatorias para el índice de búsqueda de Vertex AI Vector. Las columnas de ID y de incorporación son necesarias para la búsqueda de vectores. Si los nombres de tus columnas no coinciden con la estructura de entrada del índice de la búsqueda de vectores de Vertex AI, crea asignaciones de columnas mediante alias. Si los nombres de las columnas no coinciden con el formato que espera Vertex AI, usa la notación from:to. Por ejemplo, si tienes columnas llamadas id y my_embedding, especifica id, my_embedding:embedding.
- gcsOutputFolder : Carpeta de Cloud Storage para escribir archivos de salida. La ruta de acceso debe terminar con una barra diagonal. (Por ejemplo: gs://your-bucket/folder1/).
- gcsOutputFilePrefix : Prefijo del nombre de archivo para escribir los archivos de salida. (Ejemplo: incorporaciones vectoriales).
Parámetros opcionales
- spannerHost: El extremo de Spanner al que se llamará en la plantilla. El valor predeterminado es https://batch-spanner.googleapis.com. (Por ejemplo: https://batch-spanner.googleapis.com).
- spannerVersionTime : Opcional: Si se configura, especifica la hora en la que se debe tomar la versión de la base de datos. El valor es una string en formato de fecha RFC-3339 en hora de época Unix. Por ejemplo, 1990-12-31T23:59:60Z. La marca de tiempo debe ser del pasado y se aplica la obsolescencia máxima de la marca de tiempo (https://cloud.google.com/spanner/docs/timestamp-bounds#maximum_timestamp_staleness). Si no se establece, se usa un límite fuerte (https://cloud.google.com/spanner/docs/timestamp-bounds#strong) para leer los datos más recientes. La configuración predeterminada es vacía. (Ejemplo: 1990-12-31T23:59:60Z).
- spannerDataBoostEnabled : Cuando se establece como verdadero, la plantilla usa el procesamiento a pedido de Spanner. El trabajo de exportación se ejecuta en recursos de procesamiento independientes que no afectan las cargas de trabajo actuales de Spanner. El uso de esta opción genera cargos adicionales en Spanner. Para obtener más información, consulta la descripción general de Data Boost (https://cloud.google.com/spanner/docs/databoost/databoost-overview). La configuración predeterminada es "false".
- spannerPriority: la prioridad de solicitud para llamadas de Spanner. Los valores permitidos son HIGH, MEDIUM y LOW. El valor predeterminado es MEDIUM.
Ejecuta la plantilla
Console
- Ve a la página Crear un trabajo a partir de una plantilla de Dataflow. Ir a Crear un trabajo a partir de una plantilla
- En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
- Opcional: Para Extremo regional, selecciona un valor del menú desplegable. La región predeterminada es
us-central1
.Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.
- En el menú desplegable Plantilla de Dataflow, selecciona the Spanner to Vertex AI Vector Search files on Cloud Storage template.
- En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
- Haga clic en Ejecutar trabajo.
gcloud
En tu shell o terminal, ejecuta la plantilla:
gcloud dataflow jobs run JOB_NAME \ --gcs-location=gs://dataflow-templates-REGION_NAME/VERSION/Cloud_Spanner_vectors_to_Cloud_Storage \ --project=PROJECT_ID \ --region=REGION_NAME \ --parameters \ spannerProjectId=SPANNER_PROJECT_ID,\ spannerInstanceId=SPANNER_INSTANCE_ID,\ spannerDatabaseId=SPANNER_DATABASE_ID,\ spannerTable=SPANNER_TABLE,\ spannerColumnsToExport=SPANNER_COLUMNS_TO_EXPORT,\ gcsOutputFolder=GCS_OUTPUT_FOLDER,\ gcsOutputFilePrefix=GCS_OUTPUT_FILE_PREFIX,\
Reemplaza lo siguiente:
JOB_NAME
: Es el nombre del trabajo que elijasVERSION
: Es la versión de la plantilla que deseas usar.Puedes usar los siguientes valores:
latest
para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket gs://dataflow-templates-REGION_NAME/latest/- el nombre de la versión, como
2023-09-12-00_RC00
, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket gs://dataflow-templates-REGION_NAME/
REGION_NAME
: La región en la que deseas implementar tu trabajo de Dataflow, por ejemplo,us-central1
SPANNER_PROJECT_ID
: Es el ID del proyecto de Spanner.SPANNER_INSTANCE_ID
: Es el ID de la instancia de Spanner.SPANNER_DATABASE_ID
: Es el ID de la base de datos de Spanner.SPANNER_TABLE
: Es la tabla de Spanner.SPANNER_COLUMNS_TO_EXPORT
: Son las columnas que se exportarán desde la tabla de SpannerGCS_OUTPUT_FOLDER
: Es la carpeta de Cloud Storage a la que se exportarán los archivosGCS_OUTPUT_FILE_PREFIX
: Es el prefijo de los archivos de salida en Cloud Storage
API
Para ejecutar la plantilla con la API de REST, envía una solicitud POST HTTP. Para obtener más información de la API y sus permisos de autorización, consulta projects.templates.launch
.
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates-LOCATION/VERSION/Cloud_Spanner_vectors_to_Cloud_Storage { "jobName": "JOB_NAME", "parameters": { "spannerProjectId": "SPANNER_PROJECT_ID", "spannerInstanceId": "SPANNER_INSTANCE_ID", "spannerDatabaseId": "SPANNER_DATABASE_ID", "spannerTable": "SPANNER_TABLE", "spannerColumnsToExport": "SPANNER_COLUMNS_TO_EXPORT", "gcsOutputFolder": "GCS_OUTPUT_FOLDER", "gcsOutputFilePrefix": "GCS_OUTPUT_FILE_PREFIX", }, "environment": { "maxWorkers": "10" } }
Reemplaza lo siguiente:
PROJECT_ID
: El ID del proyecto de Google Cloud en el que deseas ejecutar el trabajo de Dataflow.JOB_NAME
: Es el nombre del trabajo que elijasVERSION
: Es la versión de la plantilla que deseas usar.Puedes usar los siguientes valores:
latest
para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket gs://dataflow-templates-REGION_NAME/latest/- el nombre de la versión, como
2023-09-12-00_RC00
, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket gs://dataflow-templates-REGION_NAME/
LOCATION
: La región en la que deseas implementar tu trabajo de Dataflow, por ejemplo,us-central1
SPANNER_PROJECT_ID
: Es el ID del proyecto de Spanner.SPANNER_INSTANCE_ID
: Es el ID de la instancia de Spanner.SPANNER_DATABASE_ID
: Es el ID de la base de datos de Spanner.SPANNER_TABLE
: Es la tabla de Spanner.SPANNER_COLUMNS_TO_EXPORT
: Son las columnas que se exportarán desde la tabla de SpannerGCS_OUTPUT_FOLDER
: Es la carpeta de Cloud Storage a la que se exportarán los archivosGCS_OUTPUT_FILE_PREFIX
: Es el prefijo de los archivos de salida en Cloud Storage
¿Qué sigue?
- Obtén información sobre las plantillas de Dataflow.
- Consulta la lista de plantillas que proporciona Google.