ייבוא וייצוא של נתונים

אתם יכולים להשתמש בשירות הייצוא והייבוא המנוהל כדי לשחזר נתונים שנמחקו בטעות, ולייצא נתונים לעיבוד אופליין. אתם יכולים לייצא את כל המסמכים או רק אוספים ספציפיים. באופן דומה, אתם יכולים לייבא את כל הנתונים מייצוא או רק אוספים ספציפיים. אפשר לייבא נתונים שיוצאו ממסד נתונים אחד של Firestore עם תאימות ל-MongoDB למסד נתונים אחר של Firestore עם תאימות ל-MongoDB. אפשר גם לטעון ל-BigQuery את הייצוא של Firestore עם תאימות ל-MongoDB.

בדף הזה מוסבר איך לייצא ולייבא מסמכים של Firestore עם תאימות ל-MongoDB באמצעות שירות הייצוא והייבוא המנוהל ו-Cloud Storage. שירות הייצוא והייבוא המנוהל של Firestore עם תאימות ל-MongoDB זמין דרך כלי שורת הפקודה gcloud ודרך ה-API של Firestore עם תאימות ל-MongoDB ‏(REST,‏ RPC).

לפני שמתחילים

כדי להשתמש בשירות המנוהל לייצוא ולייבוא, צריך לבצע את המשימות הבאות:

  1. מפעילים את החיוב בפרויקט ב- Google Cloud . רק בפרויקטים ב- Google Cloudשמופעל בהם חיוב אפשר להשתמש בפונקציונליות של ייצוא וייבוא.
  2. יוצרים קטגוריה של Cloud Storage לפרויקט במיקום שקרוב למיקום של מסד הנתונים של Firestore עם תאימות ל-MongoDB. אי אפשר להשתמש בקטגוריה שבה מופעלת התכונה "מגיש הבקשה משלם" או בקטגוריית Rapid לפעולות ייצוא וייבוא.
  3. מוודאים שיש לחשבון את ההרשאות הנדרשות ל-Firestore עם תאימות ל-MongoDB ול-Cloud Storage. אם אתם הבעלים של הפרויקט, לחשבון שלכם יש את ההרשאות הנדרשות. אחרת, התפקידים הבאים מעניקים את ההרשאות הנדרשות לפעולות ייצוא וייבוא ולגישה ל-Cloud Storage:

הרשאות של סוכן שירות

פעולות הייצוא והייבוא משתמשות בסוכן שירות של Firestore כדי לאשר פעולות ב-Cloud Storage. סוכן השירות של Firestore משתמש במוסכמה הבאה למתן שמות:

סוכן שירות של Firestore
service-PROJECT_NUMBER@gcp-sa-firestore.iam.gserviceaccount.com

למידע נוסף על סוכני שירות, קראו את המאמר סוכני שירות.

סוכן השירות של Firestore צריך גישה לקטגוריה של Cloud Storage שמשמשת לפעולת הייצוא או הייבוא. אם הקטגוריה של Cloud Storage נמצאת באותו פרויקט כמו מסד הנתונים של Firestore, סוכן השירות של Firestore יכול לגשת לקטגוריה כברירת מחדל.

אם הקטגוריה של Cloud Storage נמצאת בפרויקט אחר, צריך לתת לסוכן השירות של Firestore גישה לקטגוריה של Cloud Storage.

הקצאת תפקידים לסוכן השירות

אפשר להשתמש בכלי שורת הפקודה gsutil כדי להקצות את אחד מהתפקידים הבאים. לדוגמה, כדי להקצות את התפקיד "אדמין של Storage" לסוכן השירות של Firestore, מריצים את הפקודה הבאה:

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

מחליפים את PROJECT_NUMBER במספר הפרויקט, שמשמש כשם של סוכן השירות של Firestore. כדי לראות את שם סוכן השירות, קראו את המאמר הצגת שם סוכן השירות.

אפשר גם להקצות את התפקיד הזה באמצעות מסוף Google Cloud .

הצגת השם של סוכן השירות

בדף Import/Export במסוף Google Cloud אפשר לראות את החשבון שבו פעולות הייבוא והייצוא משתמשות כדי לאשר בקשות. אתם יכולים גם לראות אם מסד הנתונים משתמש בסוכן השירות של Firestore או בחשבון השירות הקודם של App Engine.

  1. בודקים את החשבון המורשה שמופיע לצד התווית Import/Export jobs run as.

צריך להקצות לסוכן השירות את התפקיד Storage Admin בקטגוריה של Cloud Storage שמשמשת לפעולת הייצוא או הייבוא.

הגדרת gcloud בפרויקט

אפשר להתחיל פעולות ייבוא וייצוא דרך מסוף Google Cloud או כלי שורת הפקודה gcloud. כדי להשתמש ב-gcloud, מגדירים את כלי שורת הפקודה ומתחברים לפרויקט באחת מהדרכים הבאות:

ייבוא נתונים

אחרי שייצאתם קבצים ל-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.

  • ייבוא למסד נתונים של Firestore עם תאימות ל-MongoDB מייצוא עם אוספי משנה נכשל, כי אין תמיכה באוספי משנה ב-Firestore עם תאימות ל-MongoDB.

  • ייבוא למסד נתונים של Firestore Standard Edition מייצוא עם סוגי BSON נכשל, כי סוגי BSON לא נתמכים ב-Firestore Standard Edition.

  • אי אפשר לייבא נתונים ממרחבי שמות שאינם ברירת המחדל (Datastore API) למסד נתונים של Firestore עם תאימות ל-MongoDB.

    אפשר לייבא למסד נתונים של Firestore עם תאימות ל-MongoDB מקובצי נתונים שמכילים מרחבי שמות שאינם ברירת המחדל, רק אם פעולת הייצוא כללה מסנן --namespace-ids עם מרחב השמות שמוגדר כברירת מחדל. המערכת מייבאת רק נתונים ממרחב השמות שמוגדר כברירת מחדל.

ייבוא כל המסמכים מקובץ ייצוא

Google Cloud Console

  1. נכנסים לדף Databases במסוף Google Cloud .

    כניסה לדף Databases

  2. בוחרים מסד נתונים מרשימת מסדי הנתונים.

  3. בתפריט הניווט, לוחצים על ייבוא/ייצוא.

  4. לוחצים על Import.

  5. בשדה Filename, מזינים את שם הקובץ של קובץ .overall_export_metadata מפעולת ייצוא שהושלמה. אפשר להשתמש בלחצן עיון כדי לבחור את הקובץ.

  6. לוחצים על Import.

המסוף חוזר לדף Import/Export. אם הפעולה מתחילה, בדף הייבוא והייצוא האחרונים נוספת רשומה. אם הפעולה נכשלת, מוצגת הודעת שגיאה בדף.

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'

אתם יכולים לאמת את המיקום של קובצי הייצוא בדפדפן Cloud Storage במסוף Google Cloud :

פתיחת דפדפן 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]

ייבוא מייצוא עם נתוני PITR

כדי לייבא נתוני PITR, פועלים לפי אותם שלבים שמפורטים בקטע ייבוא כל המסמכים או ייבוא אוספים ספציפיים. אם מסמך כלשהו כבר קיים במסד הנתונים, הוא יוחלף.

ייצוא נתונים

פעולת ייצוא מעתיקה מסמכים ממסד הנתונים לקבוצת קבצים בקטגוריה של Cloud Storage. חשוב לדעת שהייצוא הוא לא תמונת מצב מדויקת של מסד הנתונים שנוצרה בשעת התחלת הייצוא. הייצוא עשוי לכלול שינויים שבוצעו בזמן שהפעולה רצה.

ייצוא כל המסמכים

Google Cloud Console

  1. נכנסים לדף Databases במסוף Google Cloud .

    כניסה לדף Databases

  2. בוחרים את מסד הנתונים הרצוי מרשימת מסדי הנתונים.

  3. בתפריט הניווט, לוחצים על ייבוא/ייצוא.

  4. לוחצים על ייצוא.

  5. לוחצים על האפשרות ייצוא של כל מסד הנתונים.

  6. כדי לייצא את הנתונים הנוכחיים, בוחרים באפשרות ייצוא המצב הנוכחי של מסד הנתונים.

  7. בקטע Destination, מזינים את השם של קטגוריית Cloud Storage או לוחצים על הכפתור Browse כדי לבחור קטגוריה.

  8. לוחצים על ייצוא.

המסוף חוזר לדף Import/Export. אם הפעולה מתחילה, בדף הייבוא והייצוא האחרונים נוספת רשומה. אם הפעולה נכשלת, מוצגת הודעת שגיאה בדף.

gcloud

כדי לייצא את כל המסמכים במסד הנתונים, משתמשים בפקודה firestore export ומחליפים את [BUCKET_NAME] בשם של הקטגוריה של Cloud Storage. מוסיפים את הדגל --async כדי למנוע מהכלי gcloud להמתין עד לסיום הפעולה.

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

מחליפים את מה שכתוב בשדות הבאים:

  • ‫BUCKET_NAME: ארגון הייצוא על ידי הוספת קידומת קובץ אחרי שם הקטגוריה, לדוגמה BUCKET_NAME/my-exports-folder/export-name. אם לא תציינו קידומת לקובץ, שירות הייצוא המנוהל ייצור קידומת על סמך חותמת הזמן הנוכחית.

  • ‫DATABASE: שם מסד הנתונים שממנו רוצים לייצא את המסמכים.

אחרי שמתחילים פעולת ייצוא, סגירת הטרמינל לא מבטלת את הפעולה. אפשר לקרוא מידע נוסף במאמר ביטול פעולה.

ייצוא אוספים ספציפיים

Google Cloud Console

  1. נכנסים לדף Databases במסוף Google Cloud .

    כניסה לדף Databases

  2. בוחרים את מסד הנתונים הרצוי מרשימת מסדי הנתונים.

  3. בתפריט הניווט, לוחצים על ייבוא/ייצוא.

  4. לוחצים על ייצוא.

  5. לוחצים על האפשרות ייצוא של קבוצת אוספים אחת או יותר. בתפריט הנפתח, בוחרים אוסף אחד או יותר.

  6. כדי לייצא את הנתונים הנוכחיים, בוחרים באפשרות ייצוא המצב הנוכחי של מסד הנתונים.

  7. בקטע Destination, מזינים את השם של קטגוריית Cloud Storage או לוחצים על הכפתור Browse כדי לבחור קטגוריה.

  8. לוחצים על ייצוא.

המסוף חוזר לדף Import/Export. אם הפעולה מתחילה, בדף הייבוא והייצוא האחרונים נוספת רשומה. אם הפעולה נכשלת, מוצגת הודעת שגיאה בדף.

gcloud

כדי לייצא אוספים ספציפיים, משתמשים בדגל --collection-ids. הפעולה מייצאת רק את האוספים עם מזהי האוספים שצוינו.

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

לדוגמה, אתם יכולים לעצב אוסף restaurants במסד הנתונים foo כך שיכלול אוספים נוספים, כמו ratings,‏ reviews או outlets. כדי לייצא restaurants ו-reviews של אוסף ספציפי, הפקודה נראית כך:

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

ייצוא מחותמת זמן של PITR

אתם יכולים לייצא את מסד הנתונים ל-Cloud Storage מנתוני PITR. אפשר לייצא נתוני PITR שבהם חותמת הזמן היא חותמת זמן של דקה שלמה בשבעת הימים האחרונים, אבל לא לפני earliestVersionTime. אם הנתונים כבר לא קיימים בחותמת הזמן שצוינה, פעולת הייצוא נכשלת.

פעולת הייצוא של PITR תומכת בכל המסננים, כולל ייצוא של כל המסמכים וייצוא של אוספים ספציפיים.

לפני שמייצאים נתוני PITR, חשוב לשים לב לנקודות הבאות:

  • מפעילים את PITR במסד הנתונים. אם התכונה PITR מושבתת, הייצוא בחותמת זמן של תמונת מצב נכשל, גם בחותמות זמן בשעה האחרונה אחרי earliestVersionTime. פעולת הייצוא מחזירה את השגיאה Point-in-Time Recovery must be enabled in order to execute exports at a snapshot timestamp.
  • ציינו את חותמת הזמן בפורמט RFC 3339. לדוגמה, 2020-09-01T23:59:30.234233Z.
  • חשוב לוודא שחותמת הזמן שציינתם היא חותמת זמן של דקה שלמה בשבעת הימים האחרונים, אבל לא לפני earliestVersionTime. אם הנתונים כבר לא קיימים בחותמת הזמן שצוינה, נוצרת שגיאה.
  • לא תחויבו על ייצוא PITR שנכשל.

המסוף

  1. נכנסים לדף Databases במסוף Google Cloud .

    כניסה לדף Databases
  2. בוחרים מסד נתונים מרשימת מסדי הנתונים.
  3. בתפריט הניווט, לוחצים על ייבוא/ייצוא.
  4. לוחצים על ייצוא.
  5. מגדירים את מקור הייצוא כך שייצא את כל מסד הנתונים או רק אוספים ספציפיים.
  6. בקטע Choose the state of your database to export, בוחרים באפשרות Export from an earlier point in time.

    צריך לבחור את השעה של תמונת המצב שרוצים לייצא

  7. בקטע Destination, מזינים את השם של קטגוריית Cloud Storage או משתמשים בכפתור Browse כדי לבחור קטגוריה.
  8. לוחצים על ייצוא.

    המסוף חוזר לדף Import/Export. אם הפעולה מתחילה, בדף הייבוא והייצוא האחרונים נוספת רשומה. אם הפעולה נכשלת, מוצגת הודעת שגיאה בדף.

gcloud

אתם יכולים לייצא את מסד הנתונים ל-Cloud Storage מנתוני PITR באמצעות הפקודה gcloud firestore export.

מייצאים את מסד הנתונים ומציינים את הפרמטר snapshot-time לחותמת זמן של שחזור. מריצים את הפקודה הבאה כדי לייצא את מסד הנתונים לקטגוריה.

gcloud firestore export gs://[BUCKET_NAME_PATH] \
    --snapshot-time=[PITR_TIMESTAMP]

כאשר PITR_TIMESTAMP היא חותמת זמן של PITR ברמת פירוט של דקות, לדוגמה, 2023-05-26T10:20:00.00Z.

מוסיפים את הדגל --collection-ids כדי לייצא אוספים ספציפיים.

ניהול פעולות ייצוא וייבוא

אחרי שמתחילים פעולת ייצוא או ייבוא, Firestore עם תאימות ל-MongoDB מקצה לפעולה שם ייחודי. אתם יכולים להשתמש בשם הפעולה כדי למחוק, לבטל או לבדוק את הסטטוס של הפעולה.

שמות הפעולות מתחילים בקידומת projects/[PROJECT_ID]/databases/[DATABASE_ID]/operations/, לדוגמה:

projects/my-project/databases/my-database/operations/ASA1MTAwNDQxNAgadGx1YWZlZAcSeWx0aGdpbi1zYm9qLW5pbWRhEgopEg

עם זאת, אפשר להשמיט את הקידומת כשמציינים שם של פעולה בפקודות describe,‏ cancel ו-delete.

הצגת רשימה של כל פעולות הייצוא והייבוא

Google Cloud Console

אפשר לראות רשימה של פעולות הייצוא והייבוא האחרונות בדף Import/Export במסוף Google Cloud .

  1. נכנסים לדף Databases במסוף Google Cloud .

    כניסה לדף Databases

  2. בוחרים את מסד הנתונים הרצוי מרשימת מסדי הנתונים.

  3. בתפריט הניווט, לוחצים על ייבוא/ייצוא.

gcloud

משתמשים בפקודה operations list כדי לראות את כל פעולות הייצוא והייבוא שפועלות ושהסתיימו לאחרונה:

gcloud firestore operations list

בדיקת סטטוס הפעולה

Google Cloud Console

אפשר לראות את הסטטוס של פעולת ייצוא או ייבוא שבוצעה לאחרונה בדף Import/Export במסוף Google Cloud .

  1. נכנסים לדף Databases במסוף Google Cloud .

    כניסה לדף Databases

  2. בוחרים את מסד הנתונים הרצוי מרשימת מסדי הנתונים.

  3. בתפריט הניווט, לוחצים על ייבוא/ייצוא.

gcloud

משתמשים בפקודה operations describe כדי להציג את הסטטוס של פעולת ייצוא או ייבוא.

gcloud firestore operations describe [OPERATION_NAME]

הערכת זמן הסיום

בקשה לסטטוס של פעולה ממושכת מחזירה את המדדים workEstimated ו-workCompleted. כל אחד מהמדדים האלה מוחזר גם במספר הבייטים וגם במספר הישויות:

  • השדה workEstimated מציג את המספר הכולל המשוער של בייטים ומסמכים שפעולה תעבד. יכול להיות שהמדד הזה לא יופיע ב-Firestore עם תאימות ל-MongoDB אם אי אפשר לבצע הערכה.

  • ‫workCompleted מציג את מספר הבייטים והמסמכים שעובדו עד עכשיו. אחרי שהפעולה מסתיימת, הערך מציג את המספר הכולל של בייטים ומסמכים שעובדו בפועל, שיכול להיות גדול מהערך של workEstimated.

כדי לקבל הערכה גסה של ההתקדמות, מחלקים את workCompleted ב-workEstimated. יכול להיות שההערכה הזו לא מדויקת, כי היא תלויה באיסוף נתונים סטטיסטיים שמתעכב.

ביטול פעולה

Google Cloud Console

אפשר לבטל פעולת ייצוא או ייבוא שפועלת בדף Import/Export במסוף Google Cloud .

  1. נכנסים לדף Databases במסוף Google Cloud .

    כניסה לדף Databases

  2. בוחרים את מסד הנתונים הרצוי מרשימת מסדי הנתונים.

  3. בתפריט הניווט, לוחצים על ייבוא/ייצוא.

בטבלה ייבוא וייצוא מהזמן האחרון, פעולות שפועלות כרגע כוללות את הלחצן ביטול בעמודה הושלם. לוחצים על הלחצן Cancel כדי להפסיק את הפעולה. הכפתור משתנה להודעה Cancelling ואז ל-Cancelled כשהפעולה נעצרת לגמרי.

טבלת הייבוא והייצוא האחרונים במסוף, שבה מוצג ייבוא נתונים פעיל עם אפשרות ביטול כדי להפסיק את הפעולה.

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 .

פעולות הייצוא והייבוא מחויבות על יחידות קריאה ויחידות כתיבה לפי התעריפים שמפורטים במאמר תמחור של Firestore עם תאימות ל-MongoDB.

קובצי הפלט שמאוחסנים ב-Cloud Storage נכללים בעלויות של אחסון הנתונים ב-Cloud Storage.

פעולות ייצוא או ייבוא לא יפעילו את ההתראות של Google Cloud התקציב עד לסיום הפעולות. פעולות ייצוא וייבוא לא ישפיעו על השימוש שמוצג בקטע השימוש במסוף.

צפייה בעלויות הייצוא והייבוא

פעולות הייצוא והייבוא מחילות את התווית goog-firestoremanaged:exportimport על פעולות שמחויבות. בדף דוחות החיוב ב-Cloud, אתם יכולים להשתמש בתווית הזו כדי לראות את העלויות שקשורות לפעולות הייבוא והייצוא:

בתפריט המסננים, בוחרים את התווית goog-firestoremanaged.

ייצוא אל BigQuery

אפשר לטעון נתונים מ-Firestore עם ייצוא תאימות ל-MongoDB ל-BigQuery, אבל רק אם ציינתם מסנן collection-ids. טעינת נתונים מ-Firestore עם ייצוא תואם ל-MongoDB

כשאתם טוענים נתונים מ-Firestore עם תאימות ל-MongoDB ל-BigQuery, סוגי הנתונים של BSON מיוצגים באמצעות סוג הנתונים STRING.

מגבלת העמודות ב-BigQuery

ב-BigQuery יש מגבלה של 10,000 עמודות לכל טבלה. פעולות הייצוא של Firestore עם תאימות ל-MongoDB יוצרות סכימה של טבלה ב-BigQuery לכל אוסף. בסכימה הזו, כל שם שדה ייחודי באוסף הופך לעמודה בסכימה.

אם הסכימה של BigQuery לאוסף מסוים חורגת מ-10,000 עמודות, פעולת הייצוא של Firestore עם תאימות ל-MongoDB מנסה להישאר מתחת למגבלת העמודות על ידי התייחסות לשדות המפה כבייטים. אם ההמרה הזו תוריד את מספר העמודות מתחת ל-10,000, תוכלו לטעון את הנתונים ל-BigQuery, אבל לא תוכלו לשלוח שאילתות על שדות המשנה שבתוך שדות המפה. אם מספר העמודות עדיין גדול מ-10,000, פעולת הייצוא לא יוצרת סכימת BigQuery לאוסף, ואי אפשר לטעון את הנתונים שלו ל-BigQuery.

פורמט הייצוא וקובצי המטא-נתונים

הפלט של ייצוא מנוהל משתמש בפורמט היומן של LevelDB.

קובצי מטא-נתונים

פעולת ייצוא יוצרת קובץ מטא-נתונים לכל אוסף שציינתם. בדרך כלל, קובצי מטא-נתונים נקראים ALL_NAMESPACES_KIND_[COLLECTION_GROUP_ID].export_metadata.

קובצי המטא-נתונים הם מאגרי אחסון לפרוטוקולים, ואפשר לפענח אותם באמצעות הקומפיילר של פרוטוקול protoc. לדוגמה, אפשר לפענח קובץ מטא-נתונים כדי לזהות את האוספים שקובצי הייצוא מכילים:

protoc --decode_raw < export0.export_metadata