Menyinkronkan dari Firestore

Untuk menyerap data dari Firestore, gunakan langkah-langkah berikut untuk membuat penyimpanan data dan menyerap data menggunakan Google Cloud konsol atau API.

Jika data Firestore Anda berada dalam project yang sama dengan Gemini Enterprise, buka Mengimpor data dari Firestore.

Jika data Firestore Anda berada di project yang berbeda dengan project Gemini Enterprise Anda, buka Menyiapkan akses Firestore.

Menyiapkan akses Firestore dari project lain

Untuk memberikan akses Gemini Enterprise ke data Firestore yang ada di project lain, ikuti langkah-langkah berikut:

  1. Ganti variabel PROJECT_NUMBER berikut dengan nomor project Gemini Enterprise Anda, lalu salin konten blok kode ini. Berikut ID akun layanan Gemini Enterprise Anda:

    service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
    
  2. Buka halaman IAM & Admin.

    IAM & Admin

  3. Beralih ke project Firestore Anda di halaman IAM & Admin lalu klik Grant Access.

  4. Untuk New principals, masukkan ID akun layanan instance dan pilih peran Datastore > Cloud Datastore Import Export Admin.

  5. Klik Simpan.

  6. Beralih kembali ke project Gemini Enterprise Anda.

Selanjutnya, buka Mengimpor data dari Firestore.

Mengimpor data dari Firestore

Konsol

Untuk menggunakan konsol guna menyerap data dari Firestore, ikuti langkah-langkah berikut:

  1. Di konsol Google Cloud , buka halaman Gemini Enterprise.

    Gemini Enterprise

  2. Buka halaman Data Stores.

  3. Klik Create Data Store.

  4. Di halaman Pilih sumber data, pilih Firestore.

  5. Tentukan project ID, database ID, dan ID koleksi data yang akan Anda impor.

  6. Klik Lanjutkan.

  7. Pilih region untuk penyimpanan data Anda.

  8. Masukkan nama untuk penyimpanan data Anda.

  9. Klik Buat.

  10. Untuk memeriksa status penyerapan, buka halaman Data Stores dan klik nama penyimpanan data Anda untuk melihat detailnya di halaman Data. Saat kolom status di tab Aktivitas berubah dari Sedang berlangsung menjadi Impor selesai, penyerapan selesai.

    Bergantung pada ukuran data Anda, penyerapan dapat memerlukan waktu beberapa menit atau beberapa jam.

REST

Untuk menggunakan command line guna membuat penyimpanan data dan menyerap data dari Firestore, ikuti langkah-langkah berikut:

  1. Buat penyimpanan data.

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

    Ganti kode berikut:

    • PROJECT_ID: ID project Anda.
    • DATA_STORE_ID: ID penyimpanan data. ID hanya boleh berisi huruf kecil, angka, garis bawah, dan tanda hubung.
    • DISPLAY_NAME: nama tampilan penyimpanan data. Hal ini mungkin ditampilkan di konsol Google Cloud .
  2. Mengimpor data dari 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",
      }'
    

    Ganti kode berikut:

    • PROJECT_ID: ID project Gemini Enterprise Anda.
    • DATA_STORE_ID: ID penyimpanan data. ID hanya boleh berisi huruf kecil, angka, garis bawah, dan tanda hubung.
    • FIRESTORE_PROJECT_ID: ID project Firestore Anda.
    • DATABASE_ID: ID database Firestore Anda.
    • COLLECTION_ID: ID koleksi Firestore Anda.
    • RECONCILIATION_MODE: optional. Nilainya adalah FULL dan INCREMENTAL. Default-nya adalah INCREMENTAL. Menentukan INCREMENTAL akan menyebabkan refresh data inkremental dari Firestore ke penyimpanan data Anda. Operasi ini melakukan operasi upsert, yang menambahkan dokumen baru dan menggantikan dokumen yang ada dengan dokumen yang diperbarui dengan ID yang sama. Menentukan FULL akan menyebabkan rebase penuh dokumen di penyimpanan data Anda. Dengan kata lain, dokumen baru dan yang diperbarui ditambahkan ke penyimpanan data Anda, dan dokumen yang tidak ada di Firestore akan dihapus dari penyimpanan data Anda. Mode FULL berguna jika Anda ingin menghapus dokumen yang tidak lagi diperlukan secara otomatis.
    • AUTO_GENERATE_IDS: optional. Menentukan apakah ID dokumen akan dibuat secara otomatis. Jika disetel ke true, ID dokumen dibuat berdasarkan hash payload. Perhatikan bahwa ID dokumen yang dibuat mungkin tidak tetap konsisten selama beberapa kali impor. Jika Anda membuat ID secara otomatis di beberapa impor, Google sangat merekomendasikan agar Anda menyetel reconciliationMode ke FULL untuk mempertahankan ID dokumen yang konsisten.
    • ID_FIELD: optional. Menentukan kolom mana yang merupakan ID dokumen.

Langkah berikutnya