Importa desde Firestore

Para transferir datos de Firestore, sigue estos pasos para crear un almacén de datos y transferir datos con la Google Cloud consola o la API.

Si tus datos de Firestore están en el mismo proyecto que Gemini Enterprise, ve a Importa datos de Firestore.

Si tus datos de Firestore están en un proyecto diferente al de tu proyecto de Gemini Enterprise, ve a Configura el acceso a Firestore.

Configura el acceso a Firestore desde un proyecto diferente

Para otorgar acceso a Gemini Enterprise a los datos de Firestore que se encuentran en un proyecto diferente, 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 de este 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. Ve a la página IAM y administración.

    IAM y administración

  3. Cambia a tu proyecto de Firestore 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 de la instancia y selecciona el rol Datastore > Administrador de importación y exportación de Cloud Datastore.

  5. Haz clic en Guardar.

  6. Vuelve a tu proyecto de Gemini Enterprise.

Luego, ve a Importa datos de Firestore.

Importa datos de Firestore

Console

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

  1. En la Google Cloud consola de, 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 Firestore.

  5. Especifica el ID del proyecto, el ID de base de datos y el ID de la colección de los datos que planeas importar.

  6. Haz clic en Continuar.

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

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

  9. Haz clic en Crear.

  10. 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 para crear un almacén de datos y transferir datos de Firestore, 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: el ID del almacén de datos. El ID solo puede contener letras minúsculas, dígitos, guiones bajos y guiones.
    • DISPLAY_NAME: el nombre visible del almacén de datos. Es posible que se muestre en la Google Cloud consola.
  2. Importa datos de Firestore.

      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 '{
        "firestoreSource": {
          "projectId": "FIRESTORE_PROJECT_ID",
          "databaseId": "DATABASE_ID",
          "collectionId": "COLLECTION_ID",
        },
        "reconciliationMode": "RECONCILIATION_MODE",
        "autoGenerateIds": "AUTO_GENERATE_IDS",
        "idField": "ID_FIELD",
      }'
    

    Reemplaza lo siguiente:

    • PROJECT_ID: el ID de tu proyecto de Gemini Enterprise.
    • DATA_STORE_ID: el ID del almacén de datos. El ID solo puede contener letras minúsculas, dígitos, guiones bajos y guiones.
    • FIRESTORE_PROJECT_ID: el ID de tu proyecto de Firestore.
    • DATABASE_ID: el ID de tu base de datos de Firestore.
    • COLLECTION_ID: el ID de tu colección de Firestore.
    • 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 Firestore a tu almacén de datos. Esto realiza una operación de actualización o inserción, que agrega documentos nuevos y reemplaza los existentes por documentos actualizados con el mismo ID. Si especificas FULL, se produce 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 Firestore. El modo FULL es útil si deseas borrar automáticamente los documentos que ya no necesitas.
    • AUTO_GENERATE_IDS: es opcional. Especifica si se deben generar automáticamente los IDs de los documentos. Si se configura como true, los IDs de los documentos se generan en función de un hash de la carga útil. Ten en cuenta que es posible que los IDs de los documentos generados no sigan siendo coherentes en varias importaciones. Si generas IDs automáticamente en varias importaciones, Google recomienda configurar reconciliationMode como FULL para mantener IDs de documentos coherentes.
    • ID_FIELD: es opcional. Especifica qué campos son los IDs de los documentos.

Próximos pasos