Verileri dışa ve içe aktarma

Cloud Firestore tarafından yönetilen dışa aktarma ve içe aktarma hizmetini kullanarak Yanlışlıkla silinen verileri kurtarmak ve çevrimdışı verileri dışa aktarmak için işleniyor. Tüm dokümanları veya yalnızca belirli koleksiyonları dışa aktarabilirsiniz. Aynı şekilde, Bir dışa aktarma işlemindeki tüm verileri veya yalnızca belirli koleksiyonlardaki verileri içe aktarabilirsiniz. Veri bir Cloud Firestore veritabanından dışa aktarılan başka bir veritabanına aktarılabilir Cloud Firestore veritabanı. Ayrıca Cloud Firestore, BigQuery'ye aktarma işlemi yapar.

Bu sayfada, API'yi kullanarak Cloud Firestore belgelerini içe ve dışa aktarma yönetilen dışa ve içe aktarma hizmeti ile Cloud Storage. İlgili içeriği oluşturmak için kullanılan Cloud Firestore tarafından yönetilen dışa aktarma ve içe aktarma hizmeti şunun üzerinden kullanılabilir: gcloud komut satırı aracı ve Cloud Firestore API (REST, RPC).

Başlamadan önce

Yönetilen dışa aktarma ve içe aktarma hizmetini kullanabilmek için şu görevlerden yararlanabilirsiniz:

  1. Etkinleştir faturalandırması gerekecektir. Yalnızca Google Cloud faturalandırmanın etkin olduğu projelerde dışa ve içe aktarma işlemleri kullanılabilir.
  2. Oluştur: Size yakın bir konumda bulunan projeniz için Cloud Storage paketi Cloud Firestore veritabanı konumu. İstek Sahibi, dışa ve içe aktarma işlemleri için paket öder.
  3. Hesabınızın aşağıdaki işlemler için gerekli izinlere sahip olduğundan emin olun: Cloud Firestore ve Cloud Storage. Proje sahibiyseniz hesabınızın gerekli izinlere sahip olduğunu doğrulayın. Aksi halde aşağıdaki Roller, dışa ve içe aktarma işlemleri için gerekli izinleri verir. Cloud Storage'a erişim için:

Hizmet aracısı izinleri

Dışa ve içe aktarma işlemleri bir Cloud Firestore hizmet aracısı kullanarak şu işlemler için kullanılır: Cloud Storage işlemlerini yetkilendirir. Cloud Firestore hizmet aracısı şu adlandırma kuralını kullanır:

Cloud Firestore hizmet aracısı
service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com

Hizmet aracıları hakkında daha fazla bilgi edinmek için Hizmet aracıları.

Cloud Firestore hizmet aracısı Dışa veya içe aktarma işleminde kullanılan Cloud Storage paketi. Cloud Storage paketi, Cloud Firestore'unuzla aynı projede Cloud Firestore hizmet aracısı, veritabanının kendi verilerine varsayılan olarak sunulur.

Cloud Storage paketi başka bir projedeyse Cloud Firestore hizmet aracısına Cloud Storage'a erişim izni vermelidir paket.

Hizmet aracısına roller atama

gsutil komut satırı aracını kullanarak aşağıdaki rollerden birini atayın. Örneğin, kullanıcıya depolama alanı yöneticisi rolünü atamak için Cloud Firestore hizmet aracısına eklemek için aşağıdaki komutu çalıştırın:

gsutil iam ch serviceAccount:service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com:roles/storage.admin \
    gs://[BUCKET_NAME]

PROJECT_NUMBER yerine proje numaranızı yazın. Bu numara Cloud Firestore hizmet aracınızı adlandırmak için kullanılır. Hizmet aracısı adını görüntüleme başlıklı makaleyi inceleyin.

Alternatif olarak bu rolü GCP Console'u kullanarak atayabilirsiniz.

Hizmet aracısı adını göster

İçe ve dışa aktarma işlemlerinizin yetkilendirmek için kullandığı hesabı görüntüleyebilirsiniz istekleri için Google Cloud Platform Console'daki İçe/Dışa Aktar seçeneğini tıklayın. Ayrıca transkriptinizi veritabanınızın Cloud Firestore'u kullanıp kullanmadığını görme hizmet aracısı veya eski App Engine hizmet hesabı.

  1. Şu sayfanın yanındaki yetkilendirme hesabını görüntüleyin: İçe/Dışa aktarma işleri şu şekilde çalışır: etiketi.

Cloud Storage için hizmet aracısının Storage Admin rolüne ihtiyacı var dışa veya içe aktarma işlemi için kullanılacak pakettir.

Projeniz için gcloud uygulamasını kurun

Google Cloud Platform Console veya Google Cloud Platform Console üzerinden içe ve dışa aktarma işlemlerini başlatabilirsiniz. gcloud komut satırı aracı. gcloud özelliğini kullanmak için komut satırı aracını kurun aşağıdaki yöntemlerden birini kullanarak projenize bağlanabilirsiniz:

Verileri dışa aktarın

Dışa aktarma işlemi, veritabanınızdaki dokümanları bir dosya kümesine kopyalar ve Cloud Storage paketi. Dışa aktarma işleminin, alınan veritabanı anlık görüntüsüyle aynı olmadığını unutmayın. dışa aktarma başlangıç zamanında. Dışa aktarma işlemi, işlem sırasında yapılan değişiklikleri içerebilir. çalışıyordu.

Tüm dokümanları dışa aktar

Google Cloud Console

  1. Google Cloud Platform Console'da Veritabanları sayfasına gidin.

    Veritabanlarına git

  2. Veritabanı listesinden gerekli veritabanını seçin.

  3. Gezinme menüsünde İçe/Dışa Aktar'ı tıklayın.

  4. Dışa aktar'ı tıklayın.

  5. Export all database'i (Veritabanının tamamını dışa aktar) tıklayın.

  6. Choose Target'ın (Hedefi Seçin) altına, Cloud Storage paketinin adını girin veya bir paket seçmek için Göz at düğmesini kullanın.

  7. Dışa aktar'ı tıklayın.

Konsol İçe/Dışa Aktar sayfasına döner. İşlem başarıyla başlarsa Sayfa, son içe ve dışa aktarma işlemleri sayfasına bir giriş ekler. Hata durumunda, sayfada bir hata mesajı görüntülenir.

gcloud

Tümünü dışa aktarmak için firestore export komutunu kullanın veritabanınızdaki dokümanlarda [BUCKET_NAME] yerine kullandığınız e-posta adresini Cloud Storage paketi. gcloud aracının şunları yapmasını önlemek için --async işaretini ekleyin: işlemin tamamlanmasını bekliyor.

  gcloud firestore export gs://[BUCKET_NAME] \
  --database=[DATABASE]

Aşağıdakini değiştirin:

  • BUCKET_NAME: sonrasında bir dosya öneki ekleyerek dışa aktarmalarınızı düzenleyin paket adı (örneğin, BUCKET_NAME/my-exports-folder/export-name). Eğer dosya öneki sağlamazsanız yönetilen dışa aktarma hizmeti geçerli zaman damgasına göre bir tane oluşturur.

  • DATABASE: Dışa aktarmak istediğiniz veritabanının adı belgeler. Varsayılan veritabanı için --database='(default)' kullanın.

Bir dışa aktarma işlemi başlattığınızda, terminalin kapatılması işlemi iptal etme bölümünü inceleyin.

Belirli koleksiyonları dışa aktarma

Google Cloud Console

  1. Google Cloud Platform Console'da Veritabanları sayfasına gidin.

    Veritabanlarına git

  2. Veritabanı listesinden gerekli veritabanını seçin.

  3. Gezinme menüsünde İçe/Dışa Aktar'ı tıklayın.

  4. Dışa aktar'ı tıklayın.

  5. Bir veya daha fazla koleksiyon grubunu dışa aktar seçeneğini tıklayın. Açılır listeyi kullanın menüsünde bir veya daha fazla koleksiyon grubu seçin.

  6. Choose Target'ın (Hedefi Seçin) altına, Cloud Storage paketinin adını girin veya bir paket seçmek için Göz at düğmesini kullanın.

  7. Dışa aktar'ı tıklayın.

Konsol İçe/Dışa Aktar sayfasına döner. İşlem başarıyla başlarsa Sayfa, son içe ve dışa aktarma işlemleri sayfasına bir giriş ekler. Hata durumunda, sayfada bir hata mesajı görüntülenir.

gcloud

Belirli koleksiyon gruplarını dışa aktarmak için --collection-ids işareti. İşlemde yalnızca dışa aktarım belirtilen koleksiyon kimliklerine sahip koleksiyon gruplarını. Koleksiyon grubu içeren tüm koleksiyonları ve alt koleksiyonları içerir (herhangi bir yoldaki) koleksiyon kimliği.

gcloud firestore export gs://[BUCKET_NAME] \
--collection-ids=[COLLECTION_ID_1],[COLLECTION_ID_2],[SUBCOLLECTION_ID_1] \
--database=[DATABASE]

Örneğin, foo veritabanında restaurants koleksiyonunu ratings, reviews veya outlets gibi birden çok alt koleksiyon. Belirli bir restaurants ve reviews koleksiyonunu dışa aktarmak için komutunuz şu şekilde görünür: şöyle olur:

gcloud firestore export gs://[BUCKET_NAME] \
--collection-ids=restaurants,reviews \
--database='cymbal'

PITR zaman damgasından dışa aktarma

Veritabanınızı PITR verilerinden Cloud Storage'a aktarabilirsiniz. gcloud firestore export komutunu kullanabilirsiniz. Zaman damgasının bir tam dakika zaman damgası olduğu durumlarda, PITR verilerini dışa aktarabilirsiniz. yalnızca son yedi gün içindeki earliestVersionTime aralığından önce değil. Veriler artık güncel değilse belirtilen zaman damgasında görünüyorsa dışa aktarma işlemi başarısız olur.

PITR dışa aktarma işlemi, tüm dokümanları dışa aktarma ve belirli koleksiyonları dışa aktarma da dahil olmak üzere tüm filtreleri destekler.

  1. snapshot-time parametresini istenen kurtarma zaman damgasına göre belirterek veritabanını dışa aktarın.

    gcloud

    Veritabanını paketinize aktarmak için aşağıdaki komutu çalıştırın.

    gcloud firestore export gs://[BUCKET_NAME_PATH] \
        --snapshot-time=[PITR_TIMESTAMP] \
        --collection-ids=[COLLECTION_IDS] \
        --namespace-ids=[NAMESPACE_IDS]
    

    Nerede,

    • PITR_TIMESTAMP - dakika ayrıntı düzeyinde bir PITR zaman damgası (örneğin, 2023-05-26T10:20:00.00Z).

    PITR verilerini dışa aktarmadan önce aşağıdaki noktaları göz önünde bulundurun:

    • RFC 3339'da zaman damgasını belirtin biçimindedir. Örneğin, 2020-09-01T23:59:30.234233Z.
    • Belirttiğiniz zaman damgasının tam dakika zaman damgası olduğundan emin olun. son yedi gün içinde, yalnızca earliestVersionTime Veriler belirtilen konumda artık yoksa zaman damgası kullanılırsa bir hata oluşur.
    • Başarısız PITR dışa aktarma işlemi için sizden ücret alınmaz.

Verileri içe aktarma

Dosyaları Cloud Storage'a aktardıktan sonra bu klasörlere aktarabilirsiniz veya başka bir projeye gönderebilirsiniz. Aşağıdaki noktalara dikkat edin içe aktarma işlemleri hakkında:

  • Verileri içe aktardığınızda gerekli dizinler, veritabanınızın mevcut dizin tanımlarını gösterir. Dışa aktarma işlemi dizin tanımları içermez.

  • İçe aktarma işlemlerinde yeni doküman kimlikleri atanmaz. İçe aktarma işlemlerinde, şurada yakalanan kimlikler kullanılır: dışa aktarım zamanı. Bir doküman içe aktarılırken kimliği ayrılmış (kimlik çakışmalarını önlemek için) Aynı kimliğe sahip bir doküman zaten varsa mevcut dokümanın üzerine yazar.

  • Veritabanınızdaki bir doküman içe aktarma işleminden etkilenmiyorsa içe aktarma işleminden içe aktarma işleminden sonra veritabanınıza geri yüklenir.

  • İçe aktarma işlemleri Cloud Functions'ı tetiklemez. Anlık görüntü işleyicileri içe aktarma işlemleriyle ilgili güncellemeleri almaz.

  • .overall_export_metadata dosya adı, üst dosyasının adıyla eşleşmelidir. klasör:

    gs://BUCKET_NAME/OPTIONAL_NAMESPACE_PATH/PARENT_FOLDER_NAME/PARENT_FOLDER_NAME.overall_export_metadata

    Bir dışa aktarma işleminin çıkış dosyalarını taşır veya kopyalarsanız PARENT_FOLDER_NAME ve .overall_export_metadata, aynı.

Dışa aktarmadaki tüm dokümanları içe aktarma

Google Cloud Console

  1. Google Cloud Platform Console'da Veritabanları sayfasına gidin.

    Veritabanlarına git

  2. Veritabanı listesinden gerekli veritabanını seçin.

  3. Gezinme menüsünde İçe/Dışa Aktar'ı tıklayın.

  4. İçe aktar'ı tıklayın.

  5. Dosya adı alanına bir dosyanın adını girin Tamamlanan dışa aktarma işleminden .overall_export_metadata dosya. Şunları yapabilirsiniz: dosyayı seçmenize yardımcı olması için Göz at düğmesini kullanın.

  6. İçe aktar'ı tıklayın.

Konsol İçe/Dışa Aktar sayfasına döner. İşlem başarıyla başlarsa Sayfa, son içe ve dışa aktarma işlemleri sayfasına bir giriş ekler. Hata durumunda, sayfada bir hata mesajı görüntülenir.

gcloud

Birfirestore import önceki dışa aktarma işlemidir.

gcloud firestore import gs://[BUCKET_NAME]/[EXPORT_PREFIX]/ --database=[DATABASE]

Aşağıdakini değiştirin:

  • BUCKET_NAME/EXPORT_PREFIX: bulunduğunuz konum dışa aktarabilirsiniz.

  • DATABASE: Veritabanının adı. Varsayılan veritabanı için --database='(default)' kullanın.

Örneğin:

gcloud firestore import gs://my-bucket/2017-05-25T23:54:39_76544/ --database='cymbal'

Dışa aktarma dosyalarınızın konumunu Google Cloud Platform Console'daki Cloud Storage tarayıcısı:

Cloud Storage tarayıcısını açın

Bir içe aktarma işlemi başlattığınızda, terminalin kapatılması işlemi iptal etme bölümünü inceleyin.

Belirli koleksiyonları içe aktarma

Google Cloud Console

Konsolda belirli koleksiyonları seçemezsiniz. Bunun yerine gcloud politikasını kullanın.

gcloud

Dışa aktarma dosyaları kümesinden belirli koleksiyon gruplarını içe aktarmak için --collection-ids işareti. İşlem yalnızca belirtilen koleksiyon kimliklerine sahip koleksiyon gruplarını kullanın. Koleksiyon grubu, belirtilen koleksiyon kimliği. --database kullanarak veritabanı adını belirtin tıklayın. Varsayılan veritabanı için --database='(default)' kullanın.

Yalnızca belirli koleksiyon gruplarının dışa aktarılması belirli koleksiyon gruplarının içe aktarılmasını destekler koleksiyon grupları. Tüm koleksiyonları dışa aktarma işleminden belirli koleksiyonları içe aktaramazsınız. yardımcı olur.

  gcloud firestore import gs://[BUCKET_NAME]/[EXPORT_PREFIX]/ \
  --collection-ids=[COLLECTION_ID_1],[COLLECTION_ID_2],[SUBCOLLECTION_ID_1] \
  --database=[DATABASE]

PITR dışa aktarma işlemini içe aktarma

Dışa aktarılan dosyalarınızı içe aktarmak için Tüm dokümanları içe aktarma başlıklı makaledeki adımları uygulayın. Veritabanınızda mevcut olan bir belge, üzerine yazılır.

Dışa ve içe aktarma işlemlerini yönetme

Bir dışa veya içe aktarma işlemi başlattığınızda, Cloud Firestore işleme benzersiz bir ad verin. Silmek için işlem adını kullanabilirsiniz, işlemi iptal edebilir veya işlemin durumunu kontrol edebilirsiniz.

İşlem adlarının başında projects/[PROJECT_ID]/databases/(default)/operations/ öneki bulunur, örneğin:

projects/my-project/databases/(default)/operations/ASA1MTAwNDQxNAgadGx1YWZlZAcSeWx0aGdpbi1zYm9qLW5pbWRhEgopEg

Ancak aşağıdakiler için bir işlem adı belirtirken öneki çıkarabilirsiniz describe, cancel ve deletekomutlar.

Tüm dışa ve içe aktarma işlemlerini listeleme

Google Cloud Console

Son dışa ve içe aktarma işlemlerinin listesini Google Cloud Platform Console'un İçe/Dışa Aktar sayfası.

  1. Google Cloud Platform Console'da Veritabanları sayfasına gidin.

    Veritabanlarına git

  2. Veritabanı listesinden gerekli veritabanını seçin.

  3. Gezinme menüsünde İçe/Dışa Aktar'ı tıklayın.

gcloud

operations list komutunu kullanarak tüm çalışan ve yakın zamanda tamamlanan dışa ve içe aktarma işlemleri:

gcloud firestore operations list

İşlem durumunu kontrol et

Google Cloud Console

Son yaptığınız dışa veya içe aktarma işleminin durumunu Google Cloud Platform Console'un İçe/Dışa Aktar sayfası.

  1. Google Cloud Platform Console'da Veritabanları sayfasına gidin.

    Veritabanlarına git

  2. Veritabanı listesinden gerekli veritabanını seçin.

  3. Gezinme menüsünde İçe/Dışa Aktar'ı tıklayın.

gcloud

Dışa aktarma işleminin durumunu göstermek için operations describe komutunu kullanma içe aktarma işlemi olabilir.

gcloud firestore operations describe [OPERATION_NAME]

Tamamlanma süresini tahmin etme

Uzun süreli bir işlemin durumuyla ilgili istek, metrikleri döndürür workEstimated ve workCompleted. Bu metriklerin her biri hem bayt sayısı ve varlık sayısı:

  • workEstimated, tahmini toplam bayt ve doküman sayısını gösterir. işlenecek. Cloud Firestore, aşağıdaki durumlarda bu metriği atlayabilir: tahmin edemezler.

  • workCompleted, o ana kadar işlenen bayt ve doküman sayısını gösterir. İşlem tamamlandıktan sonra, değer burada gösterilen tam olarak işlenen bayt ve dokümanların yanı sıra workEstimated değerine ayarlanır.

İlerleme tahmini için workCompleted değerini workEstimated değerine bölün. Bu tahmini gecikmeli istatistiklere bağlı olduğundan yanlış olabilir koleksiyonudur.

İşlemi iptal etme

Google Cloud Console

Devam eden bir dışa aktarma veya içe aktarma işlemini Google Cloud Platform Console'un İçe/Dışa Aktar sayfası.

  1. Google Cloud Platform Console'da Veritabanları sayfasına gidin.

    Veritabanlarına git

  2. Veritabanı listesinden gerekli veritabanını seçin.

  3. Gezinme menüsünde İçe/Dışa Aktar'ı tıklayın.

Şu anda çalışan Son içe aktarma ve dışa aktarma işlemleri tablosunda işlemlerin Tamamlandı sütununda bir İptal düğmesi bulunur. Önce İşlemi durdurmak için İptal düğmesi. Düğme, İptal ediliyor olarak değişir. mesajını ve ardından işlem tamamen durduğunda Cancelled (İptal edildi) mesajını görürsünüz.

gcloud

Devam eden bir işlemi durdurmak için operations cancel komutunu kullanın:

gcloud firestore operations cancel [OPERATION_NAME]

Çalışmakta olan bir işlemin iptal edilmesi, işlemin geri alınmasına neden olmaz. İptal edilmiş dışa aktarma işlemi, zaten Cloud Storage'a aktarılmış olan belgeleri bırakır ve içe aktarma işlemi, veritabanınızda önceden yapılmış güncellemeleri yerinde bırakır. Siz kısmen tamamlanmış bir dışa aktarma içe aktarılamıyor.

İşlemi silme

Kaldırmak için gcloud firestore operations delete komutunu kullanın son işlemler listesinden bir işlem. Bu komut, verileri Cloud Storage'dan dışa dosya aktarma.

gcloud firestore operations delete [OPERATION_NAME]

İhracat ve ithalat işlemleri için faturalandırma ve fiyatlandırma

Bu hizmeti kullanmadan önce Google Cloud projeniz için faturalandırmayı etkinleştirmeniz gerekir yönetilen dışa aktarma ve içe aktarma hizmeti sunar.

İhracat ve içe aktarma işlemleri ücretlendirilir için aşağıdaki fiyatlarda belirtilen fiyatlar üzerinden belge okuma ve yazma işlemleri için: Cloud Firestore fiyatlandırması. Dışa aktarma işlemleri bir okuma gerçekleştirir işlem sayısı. İçe aktarma işlemleri başına bir yazma işlemi uygulanır doküman içe aktarıldı.

Cloud Storage'da depolanan çıkış dosyaları, Cloud Storage veri depolama maliyetleri.

İhracat ve içe aktarma işlemlerinin maliyetleri harcamanıza dahil edilmez. sınır. Dışa aktarma veya içe aktarma işlemleri, Google Cloud bütçesi tamamlanana kadar uyarı verilmesini sağlayın. Aynı şekilde, dışa veya içe aktarma işlemi sırasında gerçekleştirilen okuma ve yazma işlemleri, İşlem tamamlandıktan sonra günlük kotanıza. Dışa aktarma ve içe aktarma işlemleri, konsolun kullanım bölümünde gösterilen kullanımı etkilemez.

İhracat ve ithalat maliyetlerini görüntüleme

Dışa aktarma ve içe aktarma işlemleri goog-firestoremanaged:exportimport öğesini uygular faturalandırılan işlemlere etiketi ekleyin. Cloud Faturalandırma raporları sayfasında Bu etiketi, içe ve dışa aktarma işlemleriyle ilgili maliyetleri görüntülemek için kullanabilirsiniz:

Filtreler menüsünden goog-firestoremanaged etiketine erişin.

BigQuery'ye aktarın

Cloud Firestore dışa aktarımından BigQuery'ye veri yükleyebilirsiniz. Ancak yalnızca bir collection-ids filtresi belirttiyseniz. Görüntüleyin Cloud Firestore dışa aktarma işlemlerinden veri yükleme.

BigQuery sütun sınırı

BigQuery,tablo başına 10.000 sütun sınırı uygular. Cloud Firestore dışa aktarma işlemleri bir BigQuery tablosu oluşturur bir şema oluşturabilirsiniz. Bu şemada, bir koleksiyon grubu şema sütunu haline gelir.

Bir koleksiyon grubunun BigQuery şeması 10.000 sütunu aşıyorsa Cloud Firestore dışa aktarma işlemi, sütun sınırının altında kalmaya çalışıyor bayt olarak işleyerek. Bu dönüşüm sütun sayısını seçerseniz verileri aşağıdaki sütunlara yükleyebilirsiniz: ancak eşleme alanlarındaki alt alanları sorgulayamazsınız. Sütun sayısı hâlâ 10.000'i aşıyorsa dışa aktarma işlemi koleksiyon grubu için bir BigQuery şeması oluşturursanız ve yükleyemezsiniz BigQuery'ye aktarmanızı sağlar.

Biçim ve meta veri dosyalarını dışa aktarma

Yönetilen dışa aktarma işleminin sonucunda LevelDB günlük biçimi.

Meta veri dosyaları

Dışa aktarma işlemi, her koleksiyon grubu için bir meta veri dosyası oluşturur belirtir. Meta veri dosyaları genellikle ALL_NAMESPACES_KIND_[COLLECTION_GROUP_ID].export_metadata

Meta veri dosyaları protokol arabellekleridir ve bu dosyaların kodunu protoc protokol derleyici. Örneğin, koleksiyon gruplarını belirlemek için bir meta veri dosyasının kodunu çözebilirsiniz. Dışa aktarma dosyaları şunları içerir:

protoc --decode_raw < export0.export_metadata

Hizmet aracısı taşıma

Cloud Firestore, içe aktarma işlemini yetkilendirmek için bir Cloud Firestore hizmet aracısı kullanır ve dışa aktarma işlemlerini otomatik olarak gerçekleştirmelerini sağlar. Hizmet aracısı ve hizmet hesabı aşağıdaki adlandırma kurallarını kullanır:

Cloud Firestore hizmet aracısı
service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com

Cloud Firestore daha önce App Engine varsayılan hizmetini kullanıyordu hesabınızı kullanmayı tercih etmeniz gerekir. Veritabanınız App Engine hizmet hesabını kullanarak verileri içe veya dışa aktarmaya devam ediyorsa verilerini taşımak için bu bölümdeki talimatları uygulamanızı Cloud Firestore hizmet aracısını kullanabilirsiniz.

App Engine hizmet hesabı
PROJECT_ID@appspot.gserviceaccount.com

Spesifik olduğu için Cloud Firestore hizmet aracısı tercih edilir Cloud Firestore'a entegre edebilirsiniz. App Engine hizmet hesabı, birden fazla hizmet tarafından işlemesini sağlar.

Yetkilendirme hesabını görüntüle

İçe ve dışa aktarma işlemlerinizin yetkilendirme için hangi hesabı kullandığını görüntüleyebilirsiniz istekleri için Google Cloud Platform Console'daki İçe/Dışa Aktar seçeneğini tıklayın. Ayrıca transkriptinizi Veritabanınızda Cloud Firestore'un kullanılıp kullanılmadığına bakın hizmet temsilcisiyle iletişim kurabilirsiniz.

  1. Google Cloud Platform Console'da Veritabanları sayfasına gidin.

    Veritabanlarına git

  2. Veritabanı listesinden gerekli veritabanını seçin.
  3. Gezinme menüsünde İçe/Dışa Aktar'ı tıklayın.

  4. Şu sayfanın yanındaki yetkilendirme hesabını görüntüleyin: İçe/Dışa aktarma işleri şu şekilde çalışır: etiketi.

Projeniz Cloud Firestore hizmet aracısını kullanmıyorsa aşağıdakilerden birini kullanarak Cloud Firestore hizmet aracısına geçiş yapabilir: şu teknikleri uygulayın:

Bu tekniklerden ilki tercih edilir çünkü tek bir Cloud Firestore projesine etkisi olur. İkinci teknik ise mevcut Cloud Storage paketini taşımadığı için tercih edilir izin verir. Bununla birlikte, kuruluşta güvenlik uygunluğu sunar. seviyesidir.

Cloud Storage paket izinlerini kontrol edip güncelleyerek taşıyın

Taşıma işlemi iki adımdan oluşur:

  1. Cloud Storage paket izinlerini güncelleyin. Aşağıdaki bölümde bolca fırsat sunuyor.
  2. Cloud Firestore hizmet aracısına taşıma işlemini onaylayın.

Hizmet aracısı paket izinleri

Cloud Storage paketi kullanan tüm dışa veya içe aktarma işlemleri için başka bir proje için Cloud Firestore hizmet aracısına tüm izinleri verebilirsiniz. Örneğin, verileri başka bir cihaza taşıyan işlemler projenin diğer projedeki bir pakete erişmesi gerekir. Aksi halde Cloud Firestore hizmetine taşıma sonrasında işlemler başarısız oldu yardımcı olur.

Aynı proje içinde kalan içe ve dışa aktarma iş akışları gerekli değildir izinlerde yapılan değişiklikler hakkında daha fazla bilgi edinin. Cloud Firestore hizmet aracısı, aynı projedeki pakettir.

Diğer projelerdeki Cloud Storage paketleri izinlerini güncellemek için şuna erişin: service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com. hizmet temsilcisiyle iletişim kurabilirsiniz. Hizmet aracısına Firestore Service Agent rolü verin.

Firestore Service Agent rolü, Cloud Storage paketi. Salt okunur veya salt okuma izni vermeniz gerekiyorsa bir özel rol hakkında daha fazla bilgi edinin.

Aşağıdaki bölümde açıklanan taşıma süreci Cloud Storage'ı belirlemenize yardımcı olur izin güncellemeleri gerekebilir.

Projeleri Firestore Hizmet Aracısı'na taşıma

App Engine hizmet hesabından Cloud Firestore hizmet aracısından yararlanın. Taşıma işlemi tamamlandıktan sonra geri alındı.

  1. Google Cloud Platform Console'da Veritabanları sayfasına gidin.

    Veritabanlarına git

  2. Veritabanı listesinden gerekli veritabanını seçin.
  3. Gezinme menüsünde İçe/Dışa Aktar'ı tıklayın.

  4. Projeniz henüz Cloud Firestore hizmetine taşınmadıysa taşıma işlemini açıklayan bir banner görürsünüz ve Paket Durumunu Kontrol Et düğmesi. Bir sonraki adım, proje yöneticisi olarak Olası izin hatalarını düzeltebilirsiniz.

    Paket Durumunu Kontrol Et'i tıklayın.

    Taşıma işleminizi tamamlama seçeneğini ve bir Cloud Storage paketleri listesi. Bu işlem birkaç dakika sürebilir. listenin yüklenmesini tıklayın.

    Bu listede, yakın zamanda içe ve dışa aktarma işlemlerinde kullanılır ancak şu anda okuma ve dışa aktarma işlemleri için Cloud Firestore hizmet aracısına yazma izinleri vermelidir.

  5. Projenizin Cloud Firestore'unun ana adını not edin hizmet temsilcisiyle iletişim kurabilirsiniz. Hizmet aracısı adı Erişim izni verilecek hizmet aracısı etiketi.
  6. Listedeki herhangi bir paket için gelecekteki içe veya dışa aktarma işlemlerinde kullanılabilmesi için aşağıdaki için şu adımları izleyin:

    1. Bu paketin tablo satırında Düzelt'i tıklayın. Bu işlem, paketin izinler sayfasını yeni bir sekmede açar.

    2. Ekle'yi tıklayın.
    3. Yeni ana hesaplar alanına Cloud Firestore hizmet aracısı.
    4. Rol seçin alanında Hizmet Aracıları > Firestore Hizmet Aracısı.
    5. Kaydet'i tıklayın.
    6. Cloud Firestore İçe/Dışa Aktar sayfasının bulunduğu sekmeye dönün.
    7. Listedeki diğer paketler için bu adımları tekrarlayın. Görüntüledikten sonra, listenin tüm sayfalarında yer alır.
  7. Firestore Hizmet Aracısı'na taşı'yı tıklayın. Şu durumda: hâlâ başarısız izin kontrolü olan paketleriniz varsa Taşı'yı tıklayarak taşıma işleminizi onaylamanız gerekir.

    Taşıma işleminiz tamamlandığında bir uyarı alırsınız. Taşıma işlemi geri alındı.

Taşıma durumunu görüntüleme

Projenizin taşıma durumunu doğrulamak için:

  1. Google Cloud Platform Console'da Veritabanları sayfasına gidin.

    Veritabanlarına git

  2. Veritabanı listesinden gerekli veritabanını seçin.
  3. Gezinme menüsünde İçe/Dışa Aktar'ı tıklayın.

  4. İşleri şu şekilde çalışır: İçe/Dışa aktar etiketinin yanındaki ana hesabı bulun.

    Ana hesap service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com ise projeniz zaten Cloud Firestore'a taşınmış hizmet temsilcisiyle iletişim kurabilirsiniz. Taşıma işlemi geri alınamaz.

    Proje taşınmadıysa sayfanın üst kısmında bir banner gösterilir Paket Durumunu Kontrol Et düğmesiyle. Görüntüleyin Firestore hizmet aracısına geçiş yapma tıklayın.

Kuruluş genelinde bir politika kısıtlaması ekleyin

  • Kuruluşunuzun politikasında aşağıdaki kısıtlamayı ayarlayın:

    İçe/dışa aktarma için Firestore Hizmet Aracısı'nı zorunlu kıl (firestore.requireP4SAforImportExport).

    Bu kısıtlama, İstekleri yetkilendirmek için Cloud Firestore hizmet aracısı. Bu kısıtlamayı ayarlamak için bkz. Kuruluş politikaları oluşturma ve yönetme ziyaret edin.

Bu kuruluş politikası kısıtlaması uygulandığında için uygun Cloud Storage paketi izinlerini Cloud Firestore hizmet aracısı.

Kısıtlama, herhangi bir içe veya dışa aktarma iş akışı için izin hataları oluşturuyorsa devre dışı bırakarak varsayılan hizmet hesabını kullanmaya geri dönebilirsiniz. Cloud Storage paketini kontrol edip güncelledikten sonra izin verdiğinde, kısıtlamayı tekrar etkinleştirebilirsiniz.