במאמר הזה מתוארות פעולות באצווה באחסון, יכולת של Cloud Storage שמאפשרת לבצע פעולות על מיליארדי אובייקטים באופן חסר שרת. באמצעות פעולות אצווה של אחסון, אתם יכולים לבצע אוטומציה של פעולות API בקנה מידה גדול על מיליארדי אובייקטים, וכך לקצר את זמן הפיתוח שנדרש לכתיבה ולתחזוקה של סקריפטים לכל בקשה.
במאמר יצירה וניהול של משימות של פעולות בכמות גדולה באחסון יש הסבר איך ליצור משימות של פעולות בכמות גדולה באחסון.
סקירה כללית
באמצעות פעולות אצווה ב-Storage אפשר להריץ אחת מתוך חמש טרנספורמציות על כמה אובייקטים בו-זמנית: הצבת דגל object hold על אובייקט, מחיקת אובייקט, עדכון מטא-נתונים של אובייקט, שכתוב אובייקטים ועדכון הקשרים המותאמים אישית של אובייקטים. כדי להשתמש בפעולות אצווה של אחסון, יוצרים הגדרת עבודה שמגדירה אילו טרנספורמציות יחולו על אילו אובייקטים.
יצירת פעולה באצווה מחזירה פעולה ממושכת (LRO) שמציינת את הסטטוס של הבקשה: האם ההמרה הוחלה על כל האובייקטים שצוינו בבקשה.
יתרונות
- יכולת התאמה לעומס: אפשר לבצע טרנספורמציות על מיליוני אובייקטים באמצעות משימה אחת של פעולות אצווה באחסון.
- הרצה ללא שרת: הרצת משימות אצווה בסביבה ללא שרת, בלי צורך לנהל תשתית.
- אוטומציה: אוטומציה של משימות מורכבות וחוזרות על עצמן, לשיפור היעילות התפעולית.
- קיצור זמן הפיתוח: לא צריך לכתוב ולתחזק סקריפטים מותאמים אישית ומורכבים.
- ביצועים: השלמת פעולות רגישות לזמן במסגרת הזמן הנדרשת. אם מריצים כמה משימות אצווה במקביל בקטגוריה, אפשר לעבד עד מיליארד אובייקטים תוך שלוש שעות.
- ניסיונות חוזרים אוטומטיים: ניסיונות חוזרים אוטומטיים לפעולות שנכשלו.
- מעקב אחרי משימות: מעקב מפורט אחרי ההתקדמות כדי לנטר את הסטטוס ואת ההשלמה של כל המשימות.
תרחישים לדוגמה
כשמשתמשים בפעולות אצווה של אחסון עם מערכי נתונים של Storage Insights, אפשר לבצע את המשימות הבאות:
ניהול אבטחה:
- מגדירים מפתחות הצפנה למספר אובייקטים באמצעות השיטה לשכתוב אובייקט.
- אפשר להחיל או להסיר השהיות על אובייקטים כדי לשלוט בשינוי של אובייקטים.
עמידה בדרישות:
- בעזרת השהיות אובייקטים אפשר לעמוד בדרישות של שמירת נתונים לצורך עמידה בתקנות.
- הגדרת תצורות של שמירת אובייקטים כדי לנהל את מחזורי החיים של הנתונים ואת מדיניות התאימות.
- מחיקת נתונים בין מסגרות זמן ספציפיות, כדי לעמוד בדרישות התאימות למחיקה.
התאמת נתונים: ביצוע עדכונים בכמות גדולה של מטא-נתונים של אובייקטים.
אופטימיזציה של עלויות: מחיקה של כמות גדולה של אובייקטים בקטגוריות של Cloud Storage כדי להפחית את עלויות האחסון.
הגדרות של משימות
כדי ליצור משימה של פעולות אצווה של אחסון, צריך להגדיר את הגדרות המשימה הבאות. הגדרות של עבודות הן פרמטרים שקובעים איך העבודה מוגדרת בהתאם לדרישות עיבוד שונות.
שם המשימה: שם ייחודי לזיהוי משימת הפעולות באצווה באחסון. המספר הזה משמש למעקב אחרי העבודה, לניטור שלה ולהפניה אליה. שמות המשרות מכילים אותיות וספרות, למשל
job-01.תיאור התפקיד (אופציונלי): תיאור קצר של מטרת התפקיד. כך אפשר להבין ולתעד את פרטי המשרה. לדוגמה,
Deletes all objects in a bucket.שם הקטגוריה: השם של קטגוריית האחסון שמכילה את האובייקטים שרוצים לעבד. השלב הזה חיוני כדי לאתר את נתוני הקלט. לדוגמה,
my-bucket. אפשר לציין רק שם של קטגוריה אחת למשימה.בחירת אובייקטים: קריטריוני הבחירה שמגדירים אילו אובייקטים לעבד. אפשר לציין את הקריטריונים באמצעות אחת מהאפשרויות הבאות:
מניפסט: יוצרים מניפסט ומציינים את המיקום שלו כשיוצרים את עבודת האחסון של פעולות בכמות גדולה. קובץ המניפסט הוא קובץ CSV שמועלה אל Cloud de Confiance, והוא מכיל אובייקט אחד או רשימה של אובייקטים שרוצים לעבד. כל שורה במניפסט צריכה לכלול את
bucketוnameשל האובייקט. אפשר גם לציין אתgenerationשל האובייקט. אם לא מציינים אתgeneration, המערכת משתמשת בגרסה הנוכחית של האובייקט.הקובץ צריך לכלול שורת כותרת בפורמט הבא:
bucket,name,generationדוגמה למניפסט:
bucket,name,generation bucket_1,object_1,generation_1 bucket_1,object_2,generation_2 bucket_1,object_3,generation_3
אפשר גם ליצור קובץ מניפסט באמצעות מערכי נתונים של Storage Insights. פרטים נוספים זמינים במאמר בנושא יצירת קובץ מניפסט באמצעות מערכי נתונים של Storage Insights.
קידומות של אובייקטים: מציינים רשימה של קידומות לסינון אובייקטים בתוך הקטגוריה. רק אובייקטים עם הקידומות האלה יעברו עיבוד. אם השדה ריק, כל האובייקטים בקטגוריה יעברו עיבוד.
סוג העבודה: פעולות אצווה של אחסון תומכות בסוגי העבודה הבאים, ומריצות משימה אחת לכל פעולת אצווה.
מחיקת אובייקטים: אתם יכולים למחוק אובייקטים בתוך קטגוריה. ההגדרה הזו חשובה מאוד לאופטימיזציה של העלויות, לניהול מחזור החיים של הנתונים ולעמידה בדרישות של מדיניות מחיקת הנתונים.
עדכוני מטא-נתונים: אפשר לשנות את המטא-נתונים הבאים של אובייקטים:
מטא-נתונים בהתאמה אישית: אפשר לעדכן כל זוג של מפתח וערך שהוגדר על ידי המשתמש ושמשויך לאובייקט.
מטא-נתונים קבועים: אפשר לעדכן את
Cache-Control,Content-Disposition,Content-Encoding,Content-Language,Content-Type,Custom-Timeו-Retention configuration. כדי לשנות דגלי object hold, משתמשים בסוג העבודה object hold updates.
עדכונים של דגלי object hold: אתם יכולים להפעיל או להשבית דגלי object hold. השהיות של אובייקטים מונעות מחיקה או שינוי של אובייקטים, וזה חיוני לצורכי תאימות ושמירת נתונים.
עדכונים של מפתחות הצפנה של אובייקטים: אתם יכולים לנהל את מפתחות ההצפנה בניהול הלקוח של אובייקט אחד או יותר. זה כולל החלה או שינוי של מפתחות הצפנה באמצעות ה-method rewrite object.
עדכונים בהקשר של אובייקטים: אתם יכולים לנהל את ההקשרים של האובייקטים שמשויכים לאובייקטים שלכם. אתם יכולים לנקות את כל ההקשרים הקיימים של האובייקט או לבצע עדכונים ספציפיים, כמו הסרת מפתחות או הוספה ועדכון של צמדים של מפתח/ערך.
הרצה יבשה (אופציונלי): אתם יכולים ליצור משימת פעולות אצווה באחסון במצב הרצה יבשה כדי להבין את ההיקף והתוצאה של הפעולה בלי לבצע שינויים באובייקטים. הרצה יבשה מדמה את הפעולה אבל לא מבצעת המרות, וכך עוזרת לכם לאמת את הגדרות העבודה לפני שמריצים את העבודה בפועל. תוצאת ההרצה היבשה כוללת את הפרטים הבאים:
מספר האובייקטים שיושפעו.
שגיאות פוטנציאליות שעלולות להתרחש.
אם משתמשים בקידומות של אובייקטים לבחירת אובייקטים, הפלט כולל גם את הגודל הכולל של האובייקטים שיושפעו.
תמחור
כדי להעריך את החיובים על פעולות בהרצת משימה של פעולות אצווה על אחסון, וכדי לבדוק את החיובים על רשימת אובייקטים בהרצת ניסיון, אפשר לעיין במחירון של Cloud Storage.
הפעלת סימולציה עוזרת לכם לאמת מראש את ההגדרה של משימת פעולות אצווה באחסון, בלי שתחויבו בעלויות של פעולות בפועל, אבל יכול להיות שתחויבו בעלויות של רשימת אובייקטים.
מגבלות
יש מגבלות על פעולות אצווה ב-Storage:
משך החיים המקסימלי של עבודות של פעולות אצווה באחסון הוא 14 ימים. כל משימה פעילה שלא תושלם תוך 14 ימים ממועד היצירה שלה תבוטל אוטומטית.
כשמציינים קידומות לאובייקטים של משימה, אפשר לכלול עד 1,000 קידומות.
אנחנו לא ממליצים להפעיל יותר מ-20 משימות של פעולות אצווה בו-זמנית באותו באקט.
אי אפשר לבצע פעולות על כמויות גדולות של נתונים בקטגוריות שמופעל בהן 'מגיש הבקשה משלם'.