בדף הזה מוסבר איך למחוק אובייקטים מקטגוריות ב-Cloud Storage.
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות למחיקת אובייקטים, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM 'משתמש באובייקט אחסון' (roles/storage.objectUser) בקטגוריה שמכילה את האובייקטים שאתם רוצים למחוק.
אם אתם מתכננים להשתמש במסוף Cloud de Confiance כדי לבצע את המשימות שמופיעות בדף הזה, בקשו מהאדמין להקצות לכם את התפקיד 'אדמין לניהול אחסון' (roles/storage.admin) במקום התפקיד 'משתמש באובייקט אחסון' (roles/storage.objectUser), או את התפקיד הבסיסי 'צפייה' (roles/viewer) בנוסף לתפקיד 'משתמש באובייקט אחסון' (roles/storage.objectUser).
התפקידים האלה כוללים את ההרשאות שנדרשות למחיקת אובייקטים. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
storage.objects.deletestorage.objects.list- ההרשאה הזו נדרשת רק כשמשתמשים במסוף Cloud de Confiance , או כשמשתמשים בדגל
--recursiveאו בתווים כלליים ב-Google Cloud CLI.
- ההרשאה הזו נדרשת רק כשמשתמשים במסוף Cloud de Confiance , או כשמשתמשים בדגל
storage.buckets.list- ההרשאה הזו נדרשת רק כשמשתמשים במסוף Cloud de Confiance כדי לבצע את ההוראות שבדף הזה.
אפשר לקבל את ההרשאות האלה גם באמצעות תפקידים מוגדרים מראש אחרים או תפקידים בהתאמה אישית.
במאמר הגדרה וניהול של מדיניות IAM בקטגוריות מוסבר איך מקצים תפקידים בקטגוריות.
מחיקת אובייקט
כדי למחוק אובייקטים מאחת מהקטגוריות של Cloud Storage, מבצעים את הפעולות הבאות:
המסוף
- במסוף Cloud de Confiance , נכנסים לדף Buckets של Cloud Storage.
ברשימת הקטגוריות, לוחצים על שם הקטגוריה שמכילה את האובייקטים שרוצים למחוק.
הדף Bucket details נפתח עם הכרטיסייה Objects שנבחרה.
עוברים אל האובייקטים, שאולי יהיו ממוקמים בתיקייה.
לוחצים על תיבת הסימון לצד כל אובייקט שרוצים למחוק.
אפשר גם לסמן את התיבה של התיקיות, ובעקבות זאת יימחקו כל האובייקטים שבתיקייה הזו.
לוחצים על הלחצן Delete.
לוחצים על Delete בתיבת הדו-שיח שמופיעה.
אם מוחקים מספר אובייקטים בבת אחת, אפשר ללחוץ על הסמל Notifications במסוף Cloud de Confiance כדי לעקוב אחרי התקדמות המחיקה. במסוףCloud de Confiance אפשר למחוק מיליוני אובייקטים בבת אחת, והפעולה הזו מתבצעת ברקע.
במאמר פתרון בעיות מוסבר איך מקבלים מידע מפורט על שגיאות בנושא פעולות ב-Cloud Storage שנכשלו במסוף Cloud de Confiance .
שורת הפקודה
משתמשים בפקודה Google Cloud CLI gcloud storage rm:
gcloud storage rm gs://BUCKET_NAME/OBJECT_NAME
כאשר:
-
BUCKET_NAMEהוא שם הקטגוריה שמכילה את האובייקט שרוצים למחוק. לדוגמה,my-bucket. -
OBJECT_NAMEהוא שם האובייקט שרוצים למחוק. לדוגמה,pets/dog.png.
אם הפעולה בוצעה ללא שגיאות, התשובה תיראה כמו בדוגמה הבאה:
Removing objects: Removing gs://example-bucket/file.txt... Completed 1/1
ספריות לקוח
C++
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage C++ API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
C#
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage C# API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Go
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Go API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Java
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Java API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Node.js
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Node.js API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
PHP
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage PHP API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Python
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Python API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Ruby
למידע נוסף, קראו את מאמרי העזרה של Cloud Storage Ruby API.
כדי לבצע אימות ב-Cloud Storage, אתם צריכים להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לספריות לקוח.
לפני שמריצים דוגמאות קוד, צריך להגדיר את משתנה הסביבה GOOGLE_CLOUD_UNIVERSE_DOMAIN לערך s3nsapis.fr.
Rust
ממשקי API ל-REST
API בפורמט JSON
התקנה והפעלה של ה-CLI של gcloud, שמאפשרות ליצור אסימון גישה לכותרת
Authorization.משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט JSON באמצעות בקשתDELETE:curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME"
כאשר:
-
BUCKET_NAMEהוא שם הקטגוריה שמכילה את האובייקט שרוצים למחוק. לדוגמה,my-bucket. OBJECT_NAMEהוא שם האובייקט שרוצים להוריד, מותאם לקידודי התווים שמתאימים לכתובות URL. לדוגמה,pets/dog.pngיותאם לקידודי התווים שמתאימים לכתובות URL באופן הבא:pets%2Fdog.png.
-
API בפורמט XML
התקנה והפעלה של ה-CLI של gcloud, שמאפשרות ליצור אסימון גישה לכותרת
Authorization.משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט XML באמצעות בקשתDELETE Object:curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/BUCKET_NAME/OBJECT_NAME"
כאשר:
-
BUCKET_NAMEהוא שם הקטגוריה שמכילה את האובייקט שרוצים למחוק. לדוגמה,my-bucket. OBJECT_NAMEהוא שם האובייקט שרוצים להוריד, מותאם לקידודי התווים שמתאימים לכתובות URL. לדוגמה,pets/dog.pngיותאם לקידודי התווים שמתאימים לכתובות URL באופן הבא:pets%2Fdog.png.
-
מחיקת כמות גדולה של אובייקטים
אם רוצים למחוק כמות גדולה של מאה אלף אובייקטים או יותר, כדאי להימנע משימוש ב-gcloud storage, כי התהליך נמשך הרבה זמן.
במקום זאת, כדאי לשקול אחת מהאפשרויות הבאות:
התכונה ניהול מחזור חיים של אובייקטים יכולה למחוק כל מספר של אובייקטים. כדי למחוק אובייקטים בקטגוריה בכמות גדולה באמצעות התכונה הזו, צריך להגדיר כלל למחזור החיים בקטגוריה, כאשר תנאי הערך של
Ageמוגדר ל-0 ימים והפעולה מוגדרת ל-delete. אחרי שמגדירים את הכלל, Cloud Storage מבצע את המחיקה בכמות גדולה באופן אסינכרוני.מומלץ להשתמש במסוף Cloud de Confiance גם כשרוצים למחוק עד מיליון אובייקטים. אחרי ששולחים בקשת מחיקה כזו, התהליך מתבצע ברקע. כדי לבדוק את הסטטוס של המחיקה בכמות גדולה, לוחצים על הלחצן Notifications (notifications) בכותרת של מסוף Cloud de Confiance .
כשמשתמשים בספריות לקוח מסוימות או כשמשתמשים ישירות ב-API בפורמט JSON, אפשר לקבץ את בקשות המחיקה כדי לצמצם את מספר חיבורי ה-HTTP שצריך לבצע.
המאמרים הבאים
- מידע על המאפיין ניהול גרסאות של אובייקטים.
- מידע על המאפיין ניהול מחזור חיים של אובייקטים.
- איך מבצעים מחיקת קטגוריה.