בדף הזה נסביר על העלאות מרובות חלקים באמצעות API בפורמט XML, ב-Cloud Storage. בשיטת ההעלאה הזו מעלים קבצים בחלקים, ואז מרכיבים אותם לאובייקט יחיד באמצעות בקשה סופית. העלאות מרובות חלקים באמצעות API בפורמט XML תואמות להעלאות מרובות חלקים ב-Amazon S3.
סקירה כללית
העלאה מרובת חלקים באמצעות API בפורמט XML מאפשרת להעלות נתונים במספר חלקים ואז להרכיב אותם לאובייקט סופי. להתנהגות הזו יש מספר יתרונות, במיוחד כשמדובר בקבצים גדולים:
אפשר להעלות חלקים בו-זמנית, וכך לקצר את הזמן הדרוש להעלאת כל הנתונים.
אם אחת מפעולות ההעלאה נכשלת, צריך להעלות מחדש רק חלק מהאובייקט הכולל, ולא להפעיל מחדש את כל ההעלאה.
גודל הקובץ הכולל לא מצוין מראש, כך שאפשר להשתמש בהעלאות מרובות חלקים באמצעות API בפורמט XML לצורך העלאות בסטרימינג או לצורך דחיסת נתונים בזמן ההעלאה.
העלאה מרובת חלקים באמצעות API בפורמט XML כוללת שלושה שלבים:
התחלת ההעלאה באמצעות בקשת
POST
, הכוללת ציון של כל המטא-נתונים שצריכים להיות לאובייקט השלם. התשובה תחזירUploadId
שבו משתמשים בכל הבקשות הבאות הקשורות להעלאה.העלאת הנתונים באמצעות בקשת
PUT
אחת או יותר. שימו לב שיש מגבלות למספר החלקים ולגודל שלהם.השלמת ההעלאה באמצעות בקשת
POST
. הבקשה הזו מחליפה כל אובייקט קיים בקטגוריה שיש לו את אותו השם.
אין הגבלה על משך הזמן שבו העלאה מרובת חלקים והחלקים שלה שהועלו יכולים להישאר לא גמורים או ללא פעילות בקטגוריה, אבל חשוב לזכור שחלקים שהועלו בהצלחה נחשבים כחלק מהשימוש החודשי בנפח אחסון. כדי למנוע הצטברות של חלקים שנזנחו מהעלאות מרובות חלקים, אפשר להשתמש בניהול מחזור חיים של אובייקטים כדי להסיר באופן אוטומטי העלאות מרובות חלקים כשהן מגיעות לגיל מסוים.
לתשומת ליבכם
המגבלות הבאות חלות על שימוש בהעלאות מרובות חלקים באמצעות API בפורמט XML:
- הבקשות לא תומכות בתנאים מוקדמים.
- לא קיימים גיבובים של MD5 בשביל אובייקטים שהועלו בשיטה הזו.
- שיטת ההעלאה הזו לא אפשרית במסוף Google Cloud, ב-Google Cloud CLI או בספריות הלקוח של Cloud Storage.
כשעובדים עם העלאות מרובות חלקים באמצעות API בפורמט XML, חשוב לזכור את הדברים הבאים:
למרות שאפשר להתחיל העלאה ולהעלות חלקים, הבקשה להשלמת ההעלאה נכשלת אם היא מחליפה אובייקט שנמצא בהחזקה או בתקופת שמירה שטרם התמלאה.
אפשר להציג העלאות פעילות בקטגוריה, אבל רק העלאה שהושלמה תופיע ברשימה הרגילה של האובייקטים בקטגוריה.
על החלקים שמעלים חלים חיובים על מחיקה מוקדמת אם הם משתמשים בסוג אחסון (storage class) רלוונטי, ומתקיים אחד מהתנאים הבאים לפני שהחלק מגיע למשך האחסון המינימלי:
- ההעלאה הושלמה, אבל לא נעשה שימוש בחלק בבקשת ההשלמה.
- החלק הזה הוחלף על-ידי חלק אחר שהועלה.
- ההעלאה מרובת החלקים מבוטלת, ישירות או דרך ניהול מחזור חיים של אובייקטים.
משך האחסון של כל חלק בהעלאה מרובת חלקים מתחיל במועד השלמת ההעלאה של החלק.
המאמרים הבאים
- שיטות העלאה נוספות אל Cloud Storage.
- מהי השהיה מעריכית קטועה לפני ניסיון חוזר (exponential backoff) ומתי לנסות לשלוח בקשות שוב.