मैनेज की गई एक्सपोर्ट और इंपोर्ट सेवा का इस्तेमाल करके, गलती से मिटाए गए डेटा को वापस लाया जा सकता है. साथ ही, ऑफ़लाइन प्रोसेसिंग के लिए डेटा एक्सपोर्ट किया जा सकता है. आपके पास सभी दस्तावेज़ों या सिर्फ़ कुछ खास कलेक्शन को एक्सपोर्ट करने का विकल्प होता है. इसी तरह, एक्सपोर्ट किए गए डेटा या सिर्फ़ कुछ कलेक्शन को इंपोर्ट किया जा सकता है. एक Cloud Firestore डेटाबेस से एक्सपोर्ट किए गए डेटा को दूसरे Cloud Firestore डेटाबेस में इंपोर्ट किया जा सकता है. BigQuery में Cloud Firestoreएक्सपोर्ट किए गए डेटा को लोड भी किया जा सकता है.
इस पेज पर, मैनेज की गई एक्सपोर्ट और इंपोर्ट सेवा और Cloud Storage का इस्तेमाल करके, Cloud Firestore दस्तावेज़ों को एक्सपोर्ट और इंपोर्ट करने का तरीका बताया गया है. Cloud Firestore मैनेज किए गए एक्सपोर्ट और इंपोर्ट की सेवा, gcloud कमांड-लाइन टूल और Cloud Firestore एपीआई (REST, RPC) के ज़रिए उपलब्ध है.
शुरू करने से पहले
मैनेज की गई एक्सपोर्ट और इंपोर्ट सेवा का इस्तेमाल करने से पहले, आपको ये टास्क पूरे करने होंगे:
- अपने Google Cloud प्रोजेक्ट के लिए बिलिंग चालू करें. एक्सपोर्ट और इंपोर्ट करने की सुविधा का इस्तेमाल सिर्फ़ उन Google Cloud प्रोजेक्ट के लिए किया जा सकता है जिनमें बिलिंग की सुविधा चालू है.
- अपने Cloud Firestore डेटाबेस की जगह के आस-पास की किसी जगह पर, अपने प्रोजेक्ट के लिए Cloud Storage बकेट बनाएं. एक्सपोर्ट और इंपोर्ट करने के लिए, अनुरोधकर्ता के पेमेंट वाले बकेट या रैपिड बकेट का इस्तेमाल नहीं किया जा सकता.
-
पक्का करें कि आपके खाते के पास Cloud Firestore और Cloud Storage के लिए ज़रूरी अनुमतियां हों. अगर आप प्रोजेक्ट के मालिक हैं, तो आपके खाते के पास ज़रूरी अनुमतियां हैं. इसके अलावा, यहां दी गई भूमिकाओं से एक्सपोर्ट और इंपोर्ट करने के लिए ज़रूरी अनुमतियां मिलती हैं. साथ ही, Cloud Storage को ऐक्सेस करने की अनुमति भी मिलती है:
- Cloud Firestore भूमिकाएं:
Owner,Cloud Datastore OwnerयाCloud Datastore Import Export Admin Cloud Storage भूमिकाएं:
OwnerयाStorage Admin
- Cloud Firestore भूमिकाएं:
सर्विस एजेंट के लिए अनुमतियां
एक्सपोर्ट और इंपोर्ट करने की कार्रवाइयों में, Cloud Firestore सेवा एजेंट का इस्तेमाल किया जाता है. इससे Cloud Storage कार्रवाइयों को अनुमति दी जाती है. Cloud Firestore सेवा एजेंट नाम रखने के इस फ़ॉर्मैट का इस्तेमाल करता है:
- Cloud Firestore सर्विस एजेंट
service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com
सेवा एजेंट के बारे में ज़्यादा जानने के लिए, सेवा एजेंट लेख पढ़ें.
Cloud Firestore सेवा एजेंट को उस Cloud Storage बकेट का ऐक्सेस चाहिए जिसका इस्तेमाल एक्सपोर्ट या इंपोर्ट करने के लिए किया जाता है. अगर आपका Cloud Storage बकेट, Cloud Firestore डेटाबेस वाले प्रोजेक्ट में ही है, तो Cloud Firestore सर्विस एजेंट के पास बकेट को ऐक्सेस करने की अनुमति डिफ़ॉल्ट रूप से होती है.
अगर Cloud Storage बकेट किसी दूसरे प्रोजेक्ट में है, तो आपको Cloud Firestore सेवा एजेंट को Cloud Storage बकेट का ऐक्सेस देना होगा.
सर्विस एजेंट को भूमिकाएं असाइन करना
नीचे दी गई भूमिकाओं में से कोई एक भूमिका असाइन करने के लिए, gsutil कमांड-लाइन टूल का इस्तेमाल किया जा सकता है. उदाहरण के लिए, Cloud Firestore सर्विस एजेंट को स्टोरेज एडमिन की भूमिका असाइन करने के लिए, यह कमांड चलाएं:
gsutil iam ch serviceAccount:service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com:roles/storage.admin \ gs://[BUCKET_NAME]
PROJECT_NUMBER की जगह अपना प्रोजेक्ट नंबर डालें. इसका इस्तेमाल, आपके Cloud Firestore सेवा एजेंट का नाम रखने के लिए किया जाता है. सर्विस एजेंट का नाम देखने के लिए, सर्विस एजेंट का नाम देखना लेख पढ़ें.
इसके अलावा, Google Cloud Console का इस्तेमाल करके, यह भूमिका असाइन की जा सकती है.
सर्विस एजेंट का नाम देखना
Google Cloud Console में इंपोर्ट/एक्सपोर्ट करें पेज पर जाकर, उस खाते को देखा जा सकता है जिसका इस्तेमाल इंपोर्ट और एक्सपोर्ट करने के लिए किया जाता है. यह भी देखा जा सकता है कि आपके डेटाबेस में Cloud Firestore सर्विस एजेंट या लेगसी App Engine सेवा खाते का इस्तेमाल किया जा रहा है या नहीं.
- इंपोर्ट/एक्सपोर्ट के तौर पर चलाए गए जॉब लेबल के बगल में, अनुमति वाले खाते को देखें.
एक्सपोर्ट या इंपोर्ट करने के लिए इस्तेमाल किए जाने वाले Cloud Storage बकेट के लिए, सर्विस एजेंट के पास Storage Admin की भूमिका होनी चाहिए.
अपने प्रोजेक्ट के लिए gcloud सेट अप करना
Google Cloud Console या gcloud कमांड-लाइन टूल की मदद से, इंपोर्ट और एक्सपोर्ट की कार्रवाइयां शुरू की जा सकती हैं. gcloud का इस्तेमाल करने के लिए, कमांड-लाइन टूल सेट अप करें. इसके बाद, यहां दिए गए किसी एक तरीके से अपने प्रोजेक्ट से कनेक्ट करें:
Cloud Shell का इस्तेमाल करके, Google Cloud कंसोल से
gcloudको ऐक्सेस करें.पक्का करें कि
gcloudको सही प्रोजेक्ट के लिए कॉन्फ़िगर किया गया हो:gcloud config set project [PROJECT_ID]
डेटा इंपोर्ट करना
Cloud Storage में फ़ाइलें एक्सपोर्ट करने के बाद, उन फ़ाइलों में मौजूद दस्तावेज़ों को अपने प्रोजेक्ट या किसी दूसरे प्रोजेक्ट में वापस इंपोर्ट किया जा सकता है. इंपोर्ट करने की कार्रवाइयों के बारे में इन बातों का ध्यान रखें:
डेटा इंपोर्ट करने पर, ज़रूरी इंडेक्स को आपके डेटाबेस की मौजूदा इंडेक्स परिभाषाओं का इस्तेमाल करके अपडेट किया जाता है. एक्सपोर्ट में इंडेक्स की परिभाषाएं शामिल नहीं होती हैं.
इंपोर्ट करने पर, नए दस्तावेज़ आईडी असाइन नहीं किए जाते. इंपोर्ट किए गए डेटा में, एक्सपोर्ट के समय कैप्चर किए गए आईडी का इस्तेमाल किया जाता है. दस्तावेज़ इंपोर्ट किए जाने के दौरान, उसके आईडी को रिज़र्व किया जाता है, ताकि आईडी के टकराव को रोका जा सके. अगर इसी आईडी वाला कोई दस्तावेज़ पहले से मौजूद है, तो इंपोर्ट करने पर मौजूदा दस्तावेज़ बदल जाएगा.
अगर आपके डेटाबेस में मौजूद किसी दस्तावेज़ पर इंपोर्ट का असर नहीं पड़ता है, तो इंपोर्ट के बाद भी वह आपके डेटाबेस में बना रहेगा.
.overall_export_metadataफ़ाइल का नाम, उसके पैरंट फ़ोल्डर के नाम से मेल खाना चाहिए:gs://BUCKET_NAME/OPTIONAL_NAMESPACE_PATH/PARENT_FOLDER_NAME/PARENT_FOLDER_NAME.overall_export_metadataअगर आपको एक्सपोर्ट की गई आउटपुट फ़ाइलों को किसी दूसरी जगह ले जाना है या उनकी कॉपी बनानी है, तो PARENT_FOLDER_NAME और
.overall_export_metadataफ़ाइल के नाम को एक जैसा रखें.सब-कलेक्शन वाले एक्सपोर्ट से Cloud Firestore डेटाबेस में इंपोर्ट करने पर गड़बड़ी होती है, क्योंकि Cloud Firestore में सब-कलेक्शन मौजूद नहीं हैं.
BSON टाइप का इस्तेमाल करके एक्सपोर्ट किए गए डेटा को Firestore Standard वर्शन के डेटाबेस में इंपोर्ट नहीं किया जा सकता. ऐसा इसलिए, क्योंकि Firestore Standard वर्शन में BSON टाइप इस्तेमाल नहीं किए जा सकते.
Cloud Firestore डेटाबेस में इंपोर्ट करने के लिए, नॉन-डिफ़ॉल्ट नेमस्पेस (Datastore एपीआई) से डेटा इंपोर्ट नहीं किया जा सकता.
डिफ़ॉल्ट नेमस्पेस के अलावा अन्य नेमस्पेस वाली डेटा फ़ाइलों से Cloud Firestore डेटाबेस में डेटा इंपोर्ट करने की अनुमति सिर्फ़ तब दी जाती है, जब एक्सपोर्ट ऑपरेशन में डिफ़ॉल्ट नेमस्पेस वाला
--namespace-idsफ़िल्टर शामिल किया गया हो. सिर्फ़ डिफ़ॉल्ट नेमस्पेस का डेटा इंपोर्ट किया जाता है.
एक्सपोर्ट किए गए सभी दस्तावेज़ इंपोर्ट करना
Google Cloud Console
Google Cloud Console में, डेटाबेस पेज पर जाएं.
डेटाबेस की सूची में से कोई डेटाबेस चुनें.
नेविगेशन मेन्यू में, इंपोर्ट/एक्सपोर्ट करें पर क्लिक करें.
इंपोर्ट करें पर क्लिक करें.
फ़ाइल का नाम फ़ील्ड में, एक्सपोर्ट की गई
.overall_export_metadataफ़ाइल का नाम डालें. फ़ाइल चुनने के लिए, ब्राउज़ करें बटन का इस्तेमाल किया जा सकता है.इंपोर्ट करें पर क्लिक करें.
कंसोल, इंपोर्ट/एक्सपोर्ट करें पेज पर वापस आ जाता है. अगर ऑपरेशन शुरू हो जाता है, तो पेज, हाल ही में इंपोर्ट और एक्सपोर्ट किए गए डेटा की सूची में एक एंट्री जोड़ता है. ऐसा न होने पर, पेज पर गड़बड़ी का मैसेज दिखता है.
gcloud
पिछली एक्सपोर्ट कार्रवाई से दस्तावेज़ इंपोर्ट करने के लिए, firestore import कमांड का इस्तेमाल करें.
gcloud firestore import gs://[BUCKET_NAME]/[EXPORT_PREFIX]/ --database=[DATABASE]
इनकी जगह ये डालें:
BUCKET_NAME/EXPORT_PREFIX: एक्सपोर्ट की गई फ़ाइलों की जगह.DATABASE: डेटाबेस का नाम.
उदाहरण के लिए:
gcloud firestore import gs://my-bucket/2017-05-25T23:54:39_76544/ --database='cymbal'
Google Cloud Console में Cloud Storage ब्राउज़र में जाकर, एक्सपोर्ट की गई फ़ाइलों की जगह की पुष्टि की जा सकती है:
डेटा इंपोर्ट करने की प्रोसेस शुरू होने के बाद, टर्मिनल को बंद करने से प्रोसेस रद्द नहीं होती. किसी प्रोसेस को रद्द करना लेख पढ़ें.
चुनिंदा कलेक्शन इंपोर्ट करना
Google Cloud Console
कंसोल में, कुछ कलेक्शन नहीं चुने जा सकते. इसके बजाय, gcloud का इस्तेमाल करें.
gcloud
एक्सपोर्ट की गई फ़ाइलों के सेट से कुछ कलेक्शन इंपोर्ट करने के लिए, --collection-ids फ़्लैग का इस्तेमाल करें. यह ऑपरेशन, दिए गए कलेक्शन आईडी वाले कलेक्शन को ही इंपोर्ट करता है.
--database फ़्लैग का इस्तेमाल करके, डेटाबेस का नाम डालें.
सिर्फ़ खास कलेक्शन को एक्सपोर्ट करने पर, खास कलेक्शन को इंपोर्ट किया जा सकता है. सभी दस्तावेज़ों के एक्सपोर्ट से, किसी खास कलेक्शन को इंपोर्ट नहीं किया जा सकता.
gcloud firestore import gs://[BUCKET_NAME]/[EXPORT_PREFIX]/ \ --collection-ids=[COLLECTION_ID_1],[COLLECTION_ID_2] \ --database=[DATABASE]
पीआईटीआर डेटा के साथ एक्सपोर्ट किए गए डेटा से इंपोर्ट करना
पीआईटीआर डेटा इंपोर्ट करने के लिए, सभी दस्तावेज़ इंपोर्ट करें या चुनिंदा कलेक्शन इंपोर्ट करें में बताया गया तरीका अपनाएं. अगर आपके डेटाबेस में कोई दस्तावेज़ पहले से मौजूद है, तो उसे बदल दिया जाएगा.
डेटा एक्सपोर्ट करें
एक्सपोर्ट करने की प्रोसेस में, आपके डेटाबेस में मौजूद दस्तावेज़ों को Cloud Storage बकेट में मौजूद फ़ाइलों के सेट में कॉपी किया जाता है. ध्यान दें कि एक्सपोर्ट किया गया डेटा, डेटाबेस का स्नैपशॉट नहीं होता. यह स्नैपशॉट, एक्सपोर्ट शुरू होने के समय लिया जाता है. एक्सपोर्ट में, ऑपरेशन के दौरान किए गए बदलाव शामिल हो सकते हैं.
सभी दस्तावेज़ एक्सपोर्ट करें
Google Cloud Console
Google Cloud Console में, डेटाबेस पेज पर जाएं.
डेटाबेस की सूची से, वह डेटाबेस चुनें जिसकी आपको ज़रूरत है.
नेविगेशन मेन्यू में, इंपोर्ट/एक्सपोर्ट करें पर क्लिक करें.
एक्सपोर्ट करें पर क्लिक करें.
पूरा डेटाबेस एक्सपोर्ट करें विकल्प पर क्लिक करें.
मौजूदा डेटा एक्सपोर्ट करने के लिए, डेटाबेस की मौजूदा स्थिति एक्सपोर्ट करें को चुनें.
डेस्टिनेशन सेक्शन में, Cloud Storage बकेट का नाम डालें या बकेट चुनने के लिए, ब्राउज़ करें बटन का इस्तेमाल करें.
एक्सपोर्ट करें पर क्लिक करें.
कंसोल, इंपोर्ट/एक्सपोर्ट करें पेज पर वापस आ जाता है. अगर ऑपरेशन शुरू हो जाता है, तो पेज, हाल ही में इंपोर्ट और एक्सपोर्ट किए गए डेटा की सूची में एक एंट्री जोड़ता है. ऐसा न होने पर, पेज पर गड़बड़ी का मैसेज दिखता है.
gcloud
अपने डेटाबेस के सभी दस्तावेज़ों को एक्सपोर्ट करने के लिए, firestore export कमांड का इस्तेमाल करें. साथ ही, [BUCKET_NAME] की जगह अपने Cloud Storage बकेट का नाम डालें. gcloud टूल को कार्रवाई पूरी होने का इंतज़ार करने से रोकने के लिए, --async फ़्लैग जोड़ें.
gcloud firestore export gs://[BUCKET_NAME] \ --database=[DATABASE]
इनकी जगह ये डालें:
BUCKET_NAME: बकेट के नाम के बाद फ़ाइल का प्रीफ़िक्स जोड़कर, एक्सपोर्ट किए गए डेटा को व्यवस्थित करें. उदाहरण के लिए,BUCKET_NAME/my-exports-folder/export-name. फ़ाइल का प्रीफ़िक्स न देने पर, मैनेज की गई एक्सपोर्ट सेवा, मौजूदा टाइमस्टैंप के आधार पर प्रीफ़िक्स बनाती है.DATABASE: उस डेटाबेस का नाम जिससे आपको दस्तावेज़ एक्सपोर्ट करने हैं.
एक्सपोर्ट करने की प्रोसेस शुरू होने के बाद, टर्मिनल को बंद करने से प्रोसेस रद्द नहीं होती. किसी प्रोसेस को रद्द करना लेख पढ़ें.
चुनिंदा कलेक्शन एक्सपोर्ट करना
Google Cloud Console
Google Cloud Console में, डेटाबेस पेज पर जाएं.
डेटाबेस की सूची से, वह डेटाबेस चुनें जिसकी आपको ज़रूरत है.
नेविगेशन मेन्यू में, इंपोर्ट/एक्सपोर्ट करें पर क्लिक करें.
एक्सपोर्ट करें पर क्लिक करें.
एक या उससे ज़्यादा कलेक्शन ग्रुप एक्सपोर्ट करें विकल्प पर क्लिक करें. एक या उससे ज़्यादा कलेक्शन चुनने के लिए, ड्रॉप-डाउन मेन्यू का इस्तेमाल करें.
मौजूदा डेटा एक्सपोर्ट करने के लिए, डेटाबेस की मौजूदा स्थिति एक्सपोर्ट करें को चुनें.
डेस्टिनेशन सेक्शन में, Cloud Storage बकेट का नाम डालें या बकेट चुनने के लिए, ब्राउज़ करें बटन का इस्तेमाल करें.
एक्सपोर्ट करें पर क्लिक करें.
कंसोल, इंपोर्ट/एक्सपोर्ट करें पेज पर वापस आ जाता है. अगर ऑपरेशन शुरू हो जाता है, तो पेज, हाल ही में इंपोर्ट और एक्सपोर्ट किए गए डेटा की सूची में एक एंट्री जोड़ता है. ऐसा न होने पर, पेज पर गड़बड़ी का मैसेज दिखता है.
gcloud
किसी खास कलेक्शन को एक्सपोर्ट करने के लिए, --collection-ids फ़्लैग का इस्तेमाल करें. इस ऑपरेशन से, सिर्फ़ दिए गए कलेक्शन आईडी वाले कलेक्शन एक्सपोर्ट किए जाते हैं.
gcloud firestore export gs://[BUCKET_NAME] \ --collection-ids=[COLLECTION_ID_1],[COLLECTION_ID_2] \ --database=[DATABASE]
उदाहरण के लिए, foo डेटाबेस में restaurants कलेक्शन को डिज़ाइन किया जा सकता है, ताकि इसमें ratings, reviews या outlets जैसे अन्य कलेक्शन शामिल किए जा सकें. किसी खास कलेक्शन restaurants और reviews को एक्सपोर्ट करने के लिए, आपका कमांड इस तरह दिखेगा:
gcloud firestore export gs://[BUCKET_NAME] \ --collection-ids=restaurants,reviews \ --database='cymbal'
किसी पीआईटीआर टाइमस्टैंप से एक्सपोर्ट करना
अपने डेटाबेस को Cloud Storage में एक्सपोर्ट किया जा सकता है. इसके लिए, पीआईटीआर डेटा का इस्तेमाल करें.
आपके पास PITR डेटा को एक्सपोर्ट करने का विकल्प होता है. इसके लिए, टाइमस्टैंप पिछले सात दिनों के अंदर का होना चाहिए. हालांकि, यह earliestVersionTime से पहले का नहीं होना चाहिए. अगर तय किए गए टाइमस्टैंप पर डेटा मौजूद नहीं है, तो एक्सपोर्ट करने की प्रोसेस पूरी नहीं होगी.
पीआईटीआर एक्सपोर्ट ऑपरेशन में सभी फ़िल्टर काम करते हैं. इनमें सभी दस्तावेज़ों को एक्सपोर्ट करना और चुनिंदा कलेक्शन को एक्सपोर्ट करना शामिल है.
पीआईटीआर डेटा एक्सपोर्ट करने से पहले, इन बातों का ध्यान रखें:
- टाइमस्टैंप को RFC 3339 फ़ॉर्मैट में डालें. उदाहरण के लिए,
2020-09-01T23:59:30.234233Z. - पक्का करें कि आपने जो टाइमस्टैंप दिया है वह पिछले सात दिनों का हो और पूरा मिनट हो. हालांकि, यह
earliestVersionTimeसे पहले का नहीं होना चाहिए. अगर तय किए गए टाइमस्टैंप पर डेटा मौजूद नहीं है, तो गड़बड़ी का मैसेज दिखता है. - पीआईटीआर एक्सपोर्ट पूरा न होने पर, आपसे कोई शुल्क नहीं लिया जाता.
कंसोल
-
Google Cloud Console में, डेटाबेस पेज पर जाएं.
डेटाबेस पर जाएं - डेटाबेस की सूची में से कोई डेटाबेस चुनें.
- नेविगेशन मेन्यू में, इंपोर्ट/एक्सपोर्ट करें पर क्लिक करें.
- एक्सपोर्ट करें पर क्लिक करें.
- पूरे डेटाबेस या सिर्फ़ कुछ कलेक्शन को एक्सपोर्ट करने के लिए, एक्सपोर्ट सोर्स को कॉन्फ़िगर करें.
एक्सपोर्ट करने के लिए अपने डेटाबेस की स्थिति चुनें सेक्शन में जाकर, किसी पिछली तारीख का डेटा एक्सपोर्ट करें को चुनें.
एक्सपोर्ट करने के लिए, स्नैपशॉट का समय चुनें
- डेस्टिनेशन सेक्शन में, किसी Cloud Storage बकेट का नाम डालें या बकेट चुनने के लिए, ब्राउज़ करें बटन का इस्तेमाल करें.
-
एक्सपोर्ट करें पर क्लिक करें.
कंसोल, इंपोर्ट/एक्सपोर्ट करें पेज पर वापस आ जाता है. अगर ऑपरेशन शुरू हो जाता है, तो पेज, हाल ही में इंपोर्ट और एक्सपोर्ट किए गए डेटा की सूची में एक एंट्री जोड़ता है. ऐसा न होने पर, पेज पर गड़बड़ी का मैसेज दिखता है.
gcloud
gcloud firestore export कमांड का इस्तेमाल करके, अपने डेटाबेस को Cloud Storage में एक्सपोर्ट किया जा सकता है. इसके लिए, पीआईटीआर डेटा का इस्तेमाल करें.
डेटाबेस एक्सपोर्ट करें. इसके लिए, snapshot-time पैरामीटर को रिकवरी टाइमस्टैंप पर सेट करें. डेटाबेस को अपने बकेट में एक्सपोर्ट करने के लिए, यह कमांड चलाएं.
gcloud firestore export gs://[BUCKET_NAME_PATH] \ --snapshot-time=[PITR_TIMESTAMP]
यहां PITR_TIMESTAMP, मिनट के हिसाब से PITR टाइमस्टैंप है. उदाहरण के लिए, 2023-05-26T10:20:00.00Z.
खास कलेक्शन एक्सपोर्ट करने के लिए, --collection-ids फ़्लैग जोड़ें.
एक्सपोर्ट और इंपोर्ट करने की कार्रवाइयां मैनेज करना
एक्सपोर्ट या इंपोर्ट की प्रोसेस शुरू करने के बाद, Cloud Firestore इस प्रोसेस को एक यूनीक नाम असाइन करता है. कार्रवाई का नाम इस्तेमाल करके, कार्रवाई को मिटाया जा सकता है, रद्द किया जा सकता है या उसके स्टेटस की जांच की जा सकती है.
कार्रवाई के नामों से पहले projects/[PROJECT_ID]/databases/[DATABASE_ID]/operations/ प्रीफ़िक्स लगाया जाता है. उदाहरण के लिए:
projects/my-project/databases/my-database/operations/ASA1MTAwNDQxNAgadGx1YWZlZAcSeWx0aGdpbi1zYm9qLW5pbWRhEgopEg
हालांकि, describe, cancel, और delete कमांड के लिए ऑपरेशन का नाम तय करते समय, प्रीफ़िक्स को छोड़ा जा सकता है.
एक्सपोर्ट और इंपोर्ट से जुड़ी सभी कार्रवाइयों की सूची बनाना
Google Cloud Console
Google Cloud Console के इंपोर्ट/एक्सपोर्ट करें पेज पर, हाल ही में किए गए एक्सपोर्ट और इंपोर्ट के कामों की सूची देखी जा सकती है.
Google Cloud Console में, डेटाबेस पेज पर जाएं.
डेटाबेस की सूची से, वह डेटाबेस चुनें जिसकी आपको ज़रूरत है.
नेविगेशन मेन्यू में, इंपोर्ट/एक्सपोर्ट करें पर क्लिक करें.
gcloud
एक्सपोर्ट और इंपोर्ट की हाल ही में पूरी हुई और चल रही सभी कार्रवाइयों को देखने के लिए, operations list कमांड का इस्तेमाल करें:
gcloud firestore operations list
कार्रवाई का स्टेटस देखना
Google Cloud Console
Google Cloud Console के इंपोर्ट/एक्सपोर्ट पेज पर जाकर, हाल ही में किए गए एक्सपोर्ट या इंपोर्ट ऑपरेशन की स्थिति देखी जा सकती है.
Google Cloud Console में, डेटाबेस पेज पर जाएं.
डेटाबेस की सूची से, वह डेटाबेस चुनें जिसकी आपको ज़रूरत है.
नेविगेशन मेन्यू में, इंपोर्ट/एक्सपोर्ट करें पर क्लिक करें.
gcloud
एक्सपोर्ट या इंपोर्ट करने की प्रोसेस का स्टेटस दिखाने के लिए, operations describe कमांड का इस्तेमाल करें.
gcloud firestore operations describe [OPERATION_NAME]
पूरा होने में लगने वाले समय का अनुमान लगाना
ज़्यादा समय तक चलने वाली कार्रवाई के स्टेटस के लिए किए गए अनुरोध से, workEstimated और workCompleted मेट्रिक मिलती हैं. इनमें से हर मेट्रिक को बाइट की संख्या और इकाइयों की संख्या, दोनों में दिखाया जाता है:
workEstimatedसे, अनुमानित कुल बाइट और दस्तावेज़ों की संख्या का पता चलता है. यह संख्या बताती है कि कोई कार्रवाई कितने बाइट और दस्तावेज़ों को प्रोसेस करेगी. अगर Cloud Firestore अनुमान नहीं लगा पाता है, तो हो सकता है कि वह इस मेट्रिक को शामिल न करे.workCompletedसे पता चलता है कि अब तक कितने बाइट और दस्तावेज़ प्रोसेस किए गए हैं. कार्रवाई पूरी होने के बाद, वैल्यू में प्रोसेस किए गए बाइट और दस्तावेज़ों की कुल संख्या दिखती है. यह संख्या,workEstimatedकी वैल्यू से ज़्यादा हो सकती है.
प्रोग्रेस का अनुमान लगाने के लिए, workCompleted को workEstimated से भाग दें. यह अनुमान गलत हो सकता है, क्योंकि यह आंकड़ों को इकट्ठा करने में लगने वाले समय पर निर्भर करता है.
कार्रवाई रद्द करना
Google Cloud Console
Google Cloud Console के इंपोर्ट/एक्सपोर्ट करें पेज पर जाकर, एक्सपोर्ट या इंपोर्ट की प्रोसेस को रद्द किया जा सकता है.
Google Cloud Console में, डेटाबेस पेज पर जाएं.
डेटाबेस की सूची से, वह डेटाबेस चुनें जिसकी आपको ज़रूरत है.
नेविगेशन मेन्यू में, इंपोर्ट/एक्सपोर्ट करें पर क्लिक करें.
हाल ही में इंपोर्ट और एक्सपोर्ट किए गए डेटा टेबल में, फ़िलहाल चल रहे ऑपरेशनों के लिए, पूरा हुआ कॉलम में रद्द करें बटन शामिल है. कार्रवाई रोकने के लिए, रद्द करें बटन पर क्लिक करें. जब कार्रवाई पूरी तरह से रुक जाती है, तो बटन रद्द किया जा रहा है मैसेज में बदल जाता है. इसके बाद, रद्द किया गया मैसेज दिखता है.

gcloud
operations cancel कमांड का इस्तेमाल करके, चल रही किसी कार्रवाई को रोकें:
gcloud firestore operations cancel [OPERATION_NAME]
चल रही कार्रवाई को रद्द करने से, कार्रवाई पहले जैसी नहीं होती. एक्सपोर्ट करने की प्रोसेस रद्द होने पर, पहले से एक्सपोर्ट किए गए दस्तावेज़ Cloud Storage में मौजूद रहेंगे. वहीं, इंपोर्ट करने की प्रोसेस रद्द होने पर, आपके डेटाबेस में पहले से किए गए अपडेट मौजूद रहेंगे. एक्सपोर्ट की प्रोसेस पूरी न होने पर, उसे इंपोर्ट नहीं किया जा सकता.
किसी कार्रवाई को मिटाना
हाल ही की कार्रवाइयों की सूची से किसी कार्रवाई को हटाने के लिए, gcloud firestore operations delete कमांड का इस्तेमाल करें. इस कमांड से, Cloud Storage से एक्सपोर्ट की गई फ़ाइलें नहीं मिटेंगी.
gcloud firestore operations delete [OPERATION_NAME]
एक्सपोर्ट और इंपोर्ट करने की कार्रवाइयों के लिए बिलिंग और कीमत
मैनेज की गई एक्सपोर्ट और इंपोर्ट सेवा का इस्तेमाल करने से पहले, आपको अपने Google Cloud प्रोजेक्ट के लिए बिलिंग चालू करनी होगी.
एक्सपोर्ट और इंपोर्ट के लिए, रीड यूनिट और राइट यूनिट के हिसाब से शुल्क लिया जाता है. यह शुल्क, Cloud Firestore की कीमत में दिए गए रेट के हिसाब से लिया जाता है.
Cloud Storage में सेव की गई आउटपुट फ़ाइलों को, Cloud Storage डेटा स्टोरेज की लागत में गिना जाता है.
एक्सपोर्ट या इंपोर्ट की कार्रवाइयों के पूरा होने तक, आपको Google Cloud बजट से जुड़ी सूचनाएं नहीं मिलेंगी. एक्सपोर्ट और इंपोर्ट करने से, कंसोल के इस्तेमाल वाले सेक्शन में दिखने वाले इस्तेमाल पर कोई असर नहीं पड़ेगा.
एक्सपोर्ट और इंपोर्ट करने का शुल्क देखना
एक्सपोर्ट और इंपोर्ट करने की कार्रवाइयों के लिए, बिल की गई कार्रवाइयों पर goog-firestoremanaged:exportimport
लेबल लागू होता है. क्लाउड बिलिंग रिपोर्ट पेज पर, इस लेबल का इस्तेमाल करके, इंपोर्ट और एक्सपोर्ट से जुड़ी लागत देखी जा सकती है:

BigQuery में एक्सपोर्ट करना
Cloud Firestore से एक्सपोर्ट किए गए डेटा को BigQuery में लोड किया जा सकता है. हालांकि, ऐसा सिर्फ़ तब किया जा सकता है, जब आपने collection-ids फ़िल्टर तय किया हो. Cloud Firestore एक्सपोर्ट से डेटा लोड करना लेख पढ़ें.
Cloud Firestore डेटा को BigQuery में लोड करते समय, BSON डेटा टाइप को STRING डेटा टाइप के तौर पर दिखाया जाता है.
BigQuery कॉलम की सीमा
BigQuery हर टेबल के लिए, 10,000 कॉलम की सीमा तय करता है. Cloud Firestore एक्सपोर्ट करने की कार्रवाइयों से, हर कलेक्शन के लिए BigQuery टेबल स्कीमा जनरेट होता है. इस स्कीमा में, कलेक्शन में मौजूद हर यूनीक फ़ील्ड का नाम, स्कीमा कॉलम बन जाता है.
अगर किसी कलेक्शन के BigQuery स्कीमा में 10,000 से ज़्यादा कॉलम हैं, तो Cloud Firestore एक्सपोर्ट ऑपरेशन, कॉलम की सीमा से कम रखने की कोशिश करता है. इसके लिए, मैप फ़ील्ड को बाइट के तौर पर माना जाता है. अगर इस कन्वर्ज़न से कॉलम की संख्या 10,000 से कम हो जाती है, तो डेटा को BigQuery में लोड किया जा सकता है. हालांकि, मैप फ़ील्ड में मौजूद सब-फ़ील्ड को क्वेरी नहीं किया जा सकता. अगर अब भी कॉलम की संख्या 10,000 से ज़्यादा है, तो एक्सपोर्ट करने की प्रोसेस के दौरान कलेक्शन के लिए BigQuery स्कीमा जनरेट नहीं होगा. साथ ही, इसके डेटा को BigQuery में लोड नहीं किया जा सकेगा.
एक्सपोर्ट फ़ॉर्मैट और मेटाडेटा फ़ाइलें
मैनेज किए गए एक्सपोर्ट का आउटपुट, LevelDB लॉग फ़ॉर्मैट का इस्तेमाल करता है.
मेटाडेटा फ़ाइलें
एक्सपोर्ट करने की प्रोसेस, आपके चुने गए हर कलेक्शन के लिए एक मेटाडेटा फ़ाइल बनाती है. मेटाडेटा फ़ाइलों का नाम आम तौर पर ALL_NAMESPACES_KIND_[COLLECTION_GROUP_ID].export_metadata होता है.
मेटाडेटा फ़ाइलें, प्रोटोकॉल बफ़र होती हैं. इन्हें protoc प्रोटोकॉल कंपाइलर की मदद से डिकोड किया जा सकता है.
उदाहरण के लिए, एक्सपोर्ट की गई फ़ाइलों में मौजूद कलेक्शन का पता लगाने के लिए, मेटाडेटा फ़ाइल को डिकोड किया जा सकता है:
protoc --decode_raw < export0.export_metadata