Sincroniza desde Cloud SQL

Para transferir datos desde Cloud SQL, sigue estos pasos para configurar el acceso a Cloud SQL, crear un almacén de datos y transferir datos.

Configura el acceso al bucket de etapa de pruebas para las instancias de Cloud SQL

Cuando se transfieren datos desde Cloud SQL, primero se almacenan en un bucket de Cloud Storage. Sigue estos pasos para otorgar acceso a una instancia de Cloud SQL a buckets de Cloud Storage.

  1. En la consola de Google Cloud , ve a la página SQL.

    SQL

  2. Haz clic en la instancia de Cloud SQL desde la que planeas importar.

  3. Copia el identificador de la cuenta de servicio de la instancia, que se parece a una dirección de correo electrónico, por ejemplo, p9876-abcd33f@gcp-sa-cloud-sql.iam.gserviceaccount.com.

  4. Ir a la página IAM y administración

    IAM y administración

  5. Haz clic en Otorgar acceso.

  6. En Nuevos principales, ingresa el identificador de la cuenta de servicio de la instancia y selecciona el rol Cloud Storage > Administrador de almacenamiento.

  7. Haz clic en Guardar.

Siguiente:

Configura el acceso a Cloud SQL desde otro proyecto

Para otorgar acceso a Gemini Enterprise a los datos de Cloud SQL que se encuentran en otro proyecto, sigue estos pasos:

  1. Reemplaza la siguiente variable PROJECT_NUMBER por el número de tu proyecto de Gemini Enterprise y, luego, copia el contenido del bloque de código. Este es el identificador de tu cuenta de servicio de Gemini Enterprise:

    service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
    
  2. Ir a la página IAM y administración

    IAM y administración

  3. Cambia a tu proyecto de Cloud SQL en la página IAM y administración y haz clic en Otorgar acceso.

  4. En Principales nuevas, ingresa el identificador de la cuenta de servicio y selecciona el rol Cloud SQL > Visualizador de Cloud SQL.

  5. Haz clic en Guardar.

A continuación, ve a Importar datos desde Cloud SQL.

Importa datos desde Cloud SQL

Console

Para usar la consola y transferir datos de Cloud SQL, sigue estos pasos:

  1. En la consola de Google Cloud , ve a la página Gemini Enterprise.

    Gemini Enterprise

  2. Ve a la página Almacenes de datos.

  3. Haz clic en Crear almacén de datos.

  4. En la página Selecciona una fuente de datos, elige Cloud SQL.

  5. Especifica el ID del proyecto, el ID de la instancia, el ID de la base de datos y el ID de la tabla de los datos que planeas importar.

  6. Haz clic en Explorar y elige una ubicación intermedia de Cloud Storage para exportar los datos. Luego, haz clic en Seleccionar. También puedes ingresar la ubicación directamente en el campo gs://.

  7. Selecciona si quieres activar la exportación sin servidores. La exportación sin servidores genera un costo adicional. Para obtener información sobre la exportación sin servidores, consulta Cómo minimizar el impacto de las exportaciones en el rendimiento en la documentación de Cloud SQL.

  8. Haz clic en Continuar.

  9. Elige una región para tu almacén de datos.

  10. Ingresa un nombre para tu almacén de datos.

  11. Haz clic en Crear.

  12. Para verificar el estado de la transferencia, ve a la página Almacenes de datos y haz clic en el nombre del conector para ver los detalles en la página Datos. Cuando la columna de estado de la pestaña Actividad cambie de En curso a Se completó la importación, se habrá completado la transferencia.

    Según el tamaño de tus datos, la transferencia puede tardar varios minutos o varias horas.

REST

Para usar la línea de comandos y crear un almacén de datos, y transferir datos desde Cloud SQL, sigue estos pasos:

  1. Crea un almacén de datos.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \
    -d '{
      "displayName": "DISPLAY_NAME",
      "industryVertical": "GENERIC",
      "solutionTypes": ["SOLUTION_TYPE_SEARCH"],
    }'
    

    Reemplaza lo siguiente:

    • PROJECT_ID: el ID de tu proyecto.
    • DATA_STORE_ID: Es el ID del almacén de datos. El ID solo puede contener letras en minúscula, dígitos, guiones bajos y guiones.
    • DISPLAY_NAME: Es el nombre visible del almacén de datos. Esto podría mostrarse en la consola de Google Cloud .
  2. Importa datos desde Cloud SQL.

      curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents:import" \
      -d '{
        "cloudSqlSource": {
          "projectId": "SQL_PROJECT_ID",
          "instanceId": "INSTANCE_ID",
          "databaseId": "DATABASE_ID",
          "tableId": "TABLE_ID",
          "gcsStagingDir": "STAGING_DIRECTORY"
        },
        "reconciliationMode": "RECONCILIATION_MODE",
        "autoGenerateIds": "AUTO_GENERATE_IDS",
        "idField": "ID_FIELD",
      }'
    

    Reemplaza lo siguiente:

    • PROJECT_ID: Es el ID de tu proyecto de Gemini Enterprise.
    • DATA_STORE_ID: Es el ID del almacén de datos. El ID solo puede contener letras en minúscula, dígitos, guiones bajos y guiones.
    • SQL_PROJECT_ID: Es el ID de tu proyecto de Cloud SQL.
    • INSTANCE_ID: Es el ID de tu instancia de Cloud SQL.
    • DATABASE_ID: Es el ID de tu base de datos de Cloud SQL.
    • TABLE_ID: Es el ID de tu tabla de Cloud SQL.
    • STAGING_DIRECTORY: es opcional. Un directorio de Cloud Storage, por ejemplo, gs://<your-gcs-bucket>/directory/import_errors.
    • RECONCILIATION_MODE: es opcional. Los valores son FULL y INCREMENTAL. El valor predeterminado es INCREMENTAL. Si especificas INCREMENTAL, se produce una actualización incremental de los datos de Cloud SQL en tu almacén de datos. Esta acción realiza una operación de upsert, que agrega documentos nuevos y reemplaza los existentes por documentos actualizados con el mismo ID. Si especificas FULL, se realizará una nueva base completa de los documentos en tu almacén de datos. En otras palabras, se agregan documentos nuevos y actualizados a tu almacén de datos, y se quitan los documentos que no están en Cloud SQL. El modo FULL es útil si quieres borrar automáticamente los documentos que ya no necesitas.

Próximos pasos