דוחות המלאי של Cloud Storage עוזרים לכם לנהל את מאגר האובייקטים בקנה מידה נרחב. דוחות מלאי הם חלופה לפעולת ה-API Objects: list, והם מהירים יותר ומתוזמנים. אתם יכולים להשתמש בדוחות מלאי כדי לאמת את ההעברה של קטגוריות גדולות בלי להשפיע על הביצועים, או כדי לבדוק את תקינות האובייקטים בקטגוריה אחת.
דוחות מלאי כוללים את המטא-נתונים של האובייקטים, כמו סיווג האחסון (storage class), ה-ETag וסוג התוכן של האובייקט. בעזרת המידע הזה תוכלו לנתח את עלויות האחסון, לבדוק ולאמת אובייקטים ולהבטיח את אבטחת המידע ואת התאימות שלהם.
כדי לנתח את דוחות המלאי באמצעות כלים כמו BigQuery, אפשר לייצא אותם כקובצי ערכים מופרדים בפסיקים (CSV) או כקובצי Apache Parquet.
סקירה כללית על דוחות מלאי
דוחות מלאי כוללים רשימה של אובייקטים ואת המטא-נתונים שלהם שמשויכים לקטגוריה נתונה, שנקראת גם קטגוריית המקור. כדי ליצור דוחות מלאי, צריך קודם ליצור הגדרה של דוח מלאי שקובעת את התדירות של יצירת הדוחות, את שדות המטא-נתונים שהדוחות יכללו ואת הקטגוריה ליצירה ולאחסון של הדוחות, שנקראת גם קטגוריית היעד.
כשיוצרים הגדרה של דוח מלאי, היא מקבלת אוטומטית מזהה ייחודי אוניברסלי (UUID). את התוכן של השדה הזה אי אפשר לשנות. אבל אפשר לשנות את התוכן בשדות הבאים בהגדרה של דוח מלאי :
- השם המוצג של הגדרת דוח המלאי
- שדות המטא-נתונים של האובייקטים שנכללים בדוחות המלאי
- קטגוריית היעד שבה מאוחסנים דוחות המלאי
- לוח הזמנים שקובע את התדירות שבה נוצרים דוחות מלאי
- פורמט הקובץ של דוחות המלאי הנוצרים (CSV או Apache Parquet)
כשמוחקים הגדרה של דוח מלאי, לא נוצרים עוד דוחות מלאי חדשים במסגרת ההגדרה הזו, אבל דוחות המלאי שכבר נוצרו נשארים.
מתי כדאי להשתמש בדוחות מלאי
דוחות מלאי מיועדים לניתוח מהיר של קטגוריות נפרדות. אפשר להשתמש בהם כדי:
הצגת רשימה של כל האובייקטים בקטגוריה
איך בודקים אם העברת הנתונים הצליחה
יצירת דוחות ביקורת לקטגוריה מסוימת
מתי לא כדאי להשתמש בדוחות מלאי
איסוף וניתוח ידני של דוחות מלאי מהרבה קטגוריות ופרויקטים יכול להיות מאתגר, במיוחד כשמדובר בניתוח בקנה מידה גדול. לתרחישים לדוגמה כמו ניראות ברמת הארגון, ניתוח אבטחה או ניהול עלויות, אתם יכולים להשתמש במערכי נתונים של Storage Insights. מערכי הנתונים של Storage Insights מאפשרים להגדיר היקף מותאם אישית ברמת הקטגוריה, התיקייה, הפרויקט או הארגון. מערכי הנתונים של Storage Insights מספקים גם תובנות נוספות לגבי אובייקטים, כמו נתונים תפעוליים, מידע על שגיאות, נתוני פעילות נצברים של קטגוריות ופרויקטים ומטא-נתונים בהתאמה אישית.
במערכי הנתונים של Storage Insights, הנתונים מתרעננים מדי יום בתצוגות של המטא-נתונים, וכל 4-6 שעות בתצוגות של הפעילות. אתם יכולים לנתח את הנתונים באמצעות SQL ב-BigQuery או באמצעות שאלות בשפה טבעית ב-Gemini.
כדאי להשתמש במערכי הנתונים של Storage Insights אם היעדים שלכם הם:
- גילוי נתונים בכל הארגון
- ניתוח לאופטימיזציה של עלויות ולניהול מחזור חיים
- ניתוח של סדרות נתונים מבוססות זמן כדי לזהות מגמות
- פתרון בעיות בפעולות
- מעקב אחרי הפעילות בקטגוריות ובפרויקטים
מערכי הנתונים של Storage Insights הם תכונה בלעדית שזמינה רק במינוי ל-Storage Intelligence.
קטגוריות המקור והיעד
קטגוריית המקור מכילה את האובייקטים שאת דוחות המלאי שלהם רוצים ליצור. היא מכילה גם את ההגדרות של דוח המלאי. אפשר לכלול בקטגוריית מקור עד 100 הגדרות של דוחות מלאי.
דוחות המלאי שנוצרים נשמרים בקטגוריית היעד. קטגוריית היעד:
- צריכה להיות באותו המיקום שבו נמצאת קטגוריית המקור.
- צריכה להיות באותו הפרויקט שבו נמצאת קטגוריית המקור.
- יכולה להיות זהה לקטגוריית המקור.
כשאתם יוצרים את ההגדרה של דוח מלאי בפעם הראשונה, באופן אוטומטי נוצר לכם סוכן שירות. כדי ליצור הגדרות של דוחות מלאי ולכתוב דוחות מלאי בקטגוריית היעד, אתם וסוכן השירות צריכים הרשאות IAM מתאימות. כאן תוכלו לראות אילו הרשאות אתם וסוכן השירות שלכם צריכים.
השמות של קטגוריות המקור והיעד משמשים את דוחות המלאי כדי לקבוע את הקטגוריות שבהן המשימות ירוצו. אם מוחקים קטגוריית מקור או קטגוריית יעד ובהמשך יוצרים קטגוריה חדשה עם אותו שם, דוחות המלאי יריצו את המשימות בקטגוריה החדשה.
שדות מטא-נתונים של אובייקט
דוח המלאי יכול לכלול את שדות המטא-נתונים הבאים. דוח המלאי חייב לכלול את שדות המטא-נתונים שמסומנים כ'חובה'.
| שדה מטא-נתונים | תיאור | הערות |
|---|---|---|
| project | מזהה הפרויקט שבו נמצאת קטגוריית המקור. | חובה |
| bucket | השם של קטגוריית המקור. | חובה |
| name | שם האובייקט. | חובה |
| location | המיקום של קטגוריית המקור. | אופציונלי |
| size | גודל האובייקט. | אופציונלי |
| timeCreated | זמן היצירה של האובייקט, בפורמט RFC 3339. | אופציונלי |
| timeDeleted | זמן המחיקה של האובייקט, בפורמט RFC 3339. מוחזר אך ורק אם הגרסה הזו של האובייקט כבר לא פעילה, אבל נשארה בקטגוריה כגרסה לא עדכנית. | אופציונלי |
| updated | זמן השינוי של המטא-נתונים של האובייקט, בפורמט RFC 3339. | אופציונלי |
| storageClass | סוג האחסון (storage class) של האובייקט. | אופציונלי |
| etag | תג ישות מסוג HTTP 1.1 של האובייקט. | אופציונלי |
| retentionExpirationTime | הזמן המוקדם ביותר שבו אפשר למחוק את האובייקט, בהתאם להגדרת השמירה שנקבעה לאובייקט ולמדיניות שמירת הנתונים שנקבעה לקטגוריה שמכילה את האובייקט. הערך של retentionExpirationTime מוצג בפורמט RFC 3339. |
אופציונלי |
| crc32c | סיכום הביקורת (checksum) CRC32C, כפי שמתואר בנספח B של RFC 4960, מקודד באמצעות base64 כשהבייטים מסודרים בשיטת Big Endian. מידע נוסף על סיכום הביקורת CRC32C זמין במאמר מטא-נתונים של אובייקטים. | אופציונלי |
| md5Hash | גיבוב MD5 של הנתונים, שמקודד באמצעות base64. השדה הזה לא קיים באובייקטים מורכבים. מידע נוסף על גיבוב MD5 זמין במאמר מטא-נתונים של אובייקטים. | אופציונלי |
| generation | מספר הגנרציה של התוכן של האובייקט הזה. משמש לניהול גרסאות של אובייקטים. | אופציונלי |
| metageneration | גרסת המטא-נתונים של האובייקט בגנרציה הזו. משמשת לתנאים מוקדמים ולזיהוי שינויים במטא-נתונים. לגרסת המטא-נתונים בדור מסוים יש משמעות רק בהקשר של גנרציה מסוימת של אובייקט מסוים. | אופציונלי |
| contentType | השדה Content-Type של נתוני האובייקט. אם אובייקט מאוחסן ללא Content-Type, הוא מוחזר בתור application/octet-stream. | אופציונלי |
| contentEncoding | השדה Content-Encoding של נתוני האובייקט. | אופציונלי |
| timeStorageClassUpdated | התאריך והשעה שבהם סיווג האחסון של האובייקט השתנה בפעם האחרונה. בשלב הראשוני של יצירת האובייקט הוא מוגדר כ-timeCreated. | אופציונלי |
למידע נוסף על שדות מטא-נתונים של אובייקטים, אפשר לעיין במאמר מטא-נתונים של אובייקטים.
חלקי דוח מלאי
אם דוח המלאי מכיל יותר ממיליון אובייקטים, נוצר אובייקט מפוצל אחד או יותר כדי ליצור את דוח המלאי. אחרי שכל החלקים של דוח המלאי נוצרים, נוצר קובץ מניפסט באותה קטגוריית יעד שבה נמצאים החלקים.
קובץ המניפסט של דוח המלאי
אם יש קובץ מניפסט, סימן שנוצרו כל החלקים שמרכיבים את דוח המלאי. קובץ המניפסט גם מספק את השמות של האובייקטים המפוצלים של דוח המלאי.
השם של קובץ המניפסט הוא בפורמט REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json, כאשר:
REPORT_CONFIG_UUIDהוא ה-UUID שנוצר אוטומטית של ההגדרה לדוחות מלאי.
TARGET_DATETIMEהוא התאריך והשעה (בפורמט UTC) שנוצרים אוטומטית כשמופק דוח מלאי.
לדוגמה, שם קובץ המניפסט הוא fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json.
הקובץ manifest.json מכיל את השדות הבאים, שמאוכלסים באופן אוטומטי:
{ "report_config": REPORT_CONFIG_FIELDS, "records_processed": NUMBER_OF_INCLUDED_OBJECTS, "snapshot_time": "SNAPSHOT_TIME, "target_datetime": "TARGET_DATETIME, "shard_count": SHARD_COUNT, "report_shards_file_names": [ SHARD_FILE_NAME ...] }
כאשר:
REPORT_CONFIG_FIELDSכולל שדות שכלולים במשאב ReportConfig.
NUMBER_OF_INCLUDED_OBJECTSהוא מספר האובייקטים שנכללים בדוח המלאי.
SNAPSHOT_TIMEהוא התאריך והשעה (בפורמט UTC) שנוצרים אוטומטית, שבהם מתרחשת תמונת המצב של הנתונים. כל הנתונים בדוח המלאי מתועדים בתמונת המצב.
TARGET_DATETIMEהוא התאריך והשעה (בפורמט UTC) שנוצרים אוטומטית כשמופק דוח מלאי.
SHARD_COUNTהוא המספר הכולל של השארדים שנוצרו ומרכיבים את דוח המלאי.
SHARD_FILE_NAMEהוא השם של המקטע שמרכיב את דוח המלאי.
קובץ manifest.json לדוגמה:
{ "report_config": { "name": "projects/123456789098/locations/us/reportConfigs/fcec5187-afa6-48b0-938a-543d16493dc0", "createTime": "2023-06-08T08:07:53.397366139Z", "updateTime": "2023-06-08T08:07:53.552347723Z", "frequencyOptions": { "frequency": "DAILY", "startDate": { "year": 2023, "month": 6, "day": 9 } "endDate": { "year": 2023, "month": 6, "day": 23 } }, "csvOptions": { "recordSeparator": "\n", "delimiter": "," }, "objectMetadataReportOptions": { "metadataFields": [ "project", "bucket", "name", "location", "updated", "storageClass", ], "storageFilters": { "bucket": "my-test-bucket" }, "storageDestinationOptions": { "bucket": "example-bucket", "destinationPath": "folder/subfolder" } } }, "records_processed": 3993900, "snapshot_time" : "2023-06-06T00:07:27Z", "target_datetime": { "year": 2023, "month": 6, "day": 6 }, "shard_count": 4, "report_shards_file_names": [ "fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csv", "fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_1.csv", ... ], }
תמחור
השימוש בדוחות המלאי כרוך בתשלום, בהתאם למיקום הקטגוריה. למידע נוסף על התמחור של דוחות המלאי
רישום ביומן ביקורת
Cloud Storage יוצר יומני ביקורת בכל פעם שנוצרים דוחות מלאי בקטגוריית היעד. Cloud Storage יוצר יומני ביקורת בכל פעם שיוצרים הגדרות של דוח מלאי, מעדכנים אותן או מוחקים אותן.
Cloud Storage לא יוצר יומני ביקורת לקריאה של מטא-נתונים של אובייקטים מקטגוריית המקור על ידי הגדרה של דוח המלאי.
שילוב עם VPC Service Controls
אתם יכולים להוסיף עוד שכבת אבטחה למשאבים של דוחות המלאי בעזרת VPC Service Controls. כשמשתמשים ב-VPC Service Controls, מוסיפים פרויקטים לגבולות גזרה לשירות שמגינים על המשאבים והשירותים מפני בקשות שמקורן מחוץ לגבולות הגזרה. תוכלו לקרוא מידע נוסף על VPC Service Controls וגבולות גזרה לשירות במאמר פרטים והגדרה של גבולות גזרה לשירות.
מגבלות
לדוחות המלאי יש את המגבלות הבאות.
אם מפעילים סינון לפי כתובת IP בקטגוריות של Cloud Storage, אי אפשר לגשת לדוחות המלאי מהקטגוריה, גם אם משתמשים בסוכן שירות כדי לנהל אינטראקציה עם Cloud Storage. כדי למנוע שיבושים בשירות, מומלץ לא להשתמש בסינון לפי כתובת IP בקטגוריות של Cloud Storage אם אתם יוצרים דוחות מלאי לקטגוריה הזו.
דוחות מלאי לא נתמכים במיקומים הבאים:
אזורים:
africa-south1asia-southeast3europe-north2europe-west10europe-west12me-central1me-central2northamerica-south1
שני אזורים:
eur5eur7eur8
המאמרים הבאים
איך יוצרים הגדרה של דוח מלאי כדי להתחיל ליצור דוחות מלאי.