Sincronizza da Firestore

Per importare dati da Firestore, segui questi passaggi per creare un datastore e importare i dati utilizzando la console Google Cloud o l'API.

Se i dati Firestore si trovano nello stesso progetto di Gemini Enterprise, vai a Importare dati da Firestore.

Se i dati di Firestore si trovano in un progetto diverso da quello di Gemini Enterprise, vai a Configurare l'accesso a Firestore.

Configurare l'accesso a Firestore da un altro progetto

Per concedere a Gemini Enterprise l'accesso ai dati Firestore che si trovano in un progetto diverso, segui questi passaggi:

  1. Sostituisci la seguente variabile PROJECT_NUMBER con il numero del tuo progetto Gemini Enterprise, quindi copia i contenuti di questo blocco di codice. Questo è l'identificatore del tuo account di servizio Gemini Enterprise:

    service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
    
  2. Vai alla pagina IAM e amministrazione.

    IAM e amministrazione

  3. Passa al progetto Firestore nella pagina IAM e amministrazione e fai clic su Concedi l'accesso.

  4. In Nuove entità, inserisci l'identificatore dell'account di servizio dell'istanza e seleziona il ruolo Datastore > Amministratore importazione/esportazione di Cloud Datastore.

  5. Fai clic su Salva.

  6. Torna al progetto Gemini Enterprise.

Poi vai a Importare dati da Firestore.

Importa dati da Firestore

Console

Per utilizzare la console per importare i dati da Firestore, segui questi passaggi:

  1. Nella console Google Cloud , vai alla pagina Gemini Enterprise.

    Gemini Enterprise

  2. Vai alla pagina Datastore.

  3. Fai clic su Crea datastore.

  4. Nella pagina Seleziona un'origine dati, scegli Firestore.

  5. Specifica l'ID progetto, l'ID database e l'ID raccolta dei dati che intendi importare.

  6. Fai clic su Continua.

  7. Seleziona una regione per il datastore.

  8. Inserisci un nome per il tuo datastore.

  9. Fai clic su Crea.

  10. Per controllare lo stato dell'importazione, vai alla pagina Datastore e fai clic sul nome del datastore per visualizzarne i dettagli nella pagina Data (Dati). Quando la colonna dello stato nella scheda Attività cambia da In corso a Importazione completata, l'importazione è terminata.

    A seconda delle dimensioni dei dati, l'importazione può richiedere diversi minuti o diverse ore.

REST

Per utilizzare la riga di comando per creare un datastore e importare dati da Firestore, segui questi passaggi:

  1. Crea un datastore.

    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"],
    }'
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID progetto.
    • DATA_STORE_ID: l'ID del datastore. L'ID può contenere solo lettere minuscole, cifre, trattini bassi e trattini.
    • DISPLAY_NAME: il nome visualizzato del datastore. Questo messaggio potrebbe essere visualizzato nella console Google Cloud .
  2. Importa i dati da 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",
      }'
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del tuo progetto Gemini Enterprise.
    • DATA_STORE_ID: l'ID del datastore. L'ID può contenere solo lettere minuscole, cifre, trattini bassi e trattini.
    • FIRESTORE_PROJECT_ID: l'ID del tuo progetto Firestore.
    • DATABASE_ID: l'ID del database Firestore.
    • COLLECTION_ID: l'ID della raccolta Firestore.
    • RECONCILIATION_MODE: facoltativo. I valori sono FULL e INCREMENTAL. Il valore predefinito è INCREMENTAL. Se specifichi INCREMENTAL , viene eseguito un aggiornamento incrementale dei dati da Firestore al tuo datastore. Esegue un'operazione di upsert, che aggiunge nuovi documenti e sostituisce quelli esistenti con documenti aggiornati con lo stesso ID. La specifica di FULL causa una ribasatura completa dei documenti nel datastore. In altre parole, i documenti nuovi e aggiornati vengono aggiunti al datastore e i documenti che non sono in Firestore vengono rimossi dal datastore. La modalità FULL è utile se vuoi eliminare automaticamente i documenti che non ti servono più.
    • AUTO_GENERATE_IDS: facoltativo. Specifica se generare automaticamente gli ID documento. Se impostato su true, gli ID documento vengono generati in base a un hash del payload. Tieni presente che gli ID documento generati potrebbero non rimanere coerenti in più importazioni. Se generi automaticamente ID in più importazioni, Google consiglia vivamente di impostare reconciliationMode su FULL per mantenere ID documento coerenti.
    • ID_FIELD: facoltativo. Specifica quali campi sono gli ID documento.

Passaggi successivi