דוחות מלאי

דוחות המלאי של 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-south1
      • asia-southeast3
      • europe-north2
      • europe-west10
      • europe-west12
      • me-central1
      • me-central2
      • northamerica-south1
    • שני אזורים:

      • eur5
      • eur7
      • eur8

המאמרים הבאים

איך יוצרים הגדרה של דוח מלאי כדי להתחיל ליצור דוחות מלאי.