בדף הזה מוסבר על Cloud Storage ועל אופן הפעולה שלו.
איך Cloud Storage פועל
Cloud Storage הוא שירות אחסון מנוהל וניתן להרחבה שמוצע על ידיGoogle Cloud . השירות מאפשר לכם לאחסן נתונים כאובייקטים בקונטיינרים שנקראים קטגוריות.
כל הקטגוריות משויכות לפרויקט, ואפשר לקבץ את הפרויקטים בארגון. אחרי שיוצרים פרויקט, אפשר ליצור קטגוריות, להעלות אובייקטים לקטגוריות ולהוריד אובייקטים מהקטגוריות. אפשר גם להעניק הרשאות כדי שהנתונים יהיו נגישים לחשבונות משתמשים ספציפיים, או נגישים לכל אחד באינטרנט הציבורי. היכולות של ספריות מאפשרות לכם להשתמש ב-Cloud Storage באופן דומה יותר לכונן קשיח או לאחסון NAS (אחסון שמחובר לרשת): תיקיות מאפשרות לכם לארגן אובייקטים במבנה של ספריות, ותיקיות מנוהלות מאפשרות לכם לפשט את בקרת הגישה לאובייקטים.
כל פרויקט, קטגוריה, אובייקט, תיקייה ותיקייה מנוהלת הם משאב ב-Google Cloud, כמו גם מכונות של Compute Engine.
ההיררכיה Google Cloud
כך המבנה של Cloud Storage יכול לחול על מקרה בעולם האמיתי:
ארגון: החברה, שנקראת Example Inc., יוצרת ארגון בשם
exampleinc.org. Google Cloudפרויקט: .Example Inc בונה מספר אפליקציות, וכל אחת מהן משויכת לפרויקט. לכל פרויקט יש קבוצה משלו של ממשקי API של Cloud Storage וגם משאבים אחרים.
קטגוריה: כל פרויקט יכול להכיל כמה קטגוריות, שהן קונטיינרים לאחסון האובייקטים. לדוגמה, אפשר ליצור קטגוריה של
photosלכל קובצי התמונות שהאפליקציה יוצרת וקטגוריה נפרדת שלvideos. ב-Cloud Storage יש סוגי אחסון (storage classes) שונים ומיקומים שונים לקטגוריות, כך שאתם יכולים לבחור את העמידות והזמינות של הנתונים בהתאם לצרכים של עומסי העבודה שלכם.קטגוריות משמשות כבסיס נתונים ראשי בסביבה העסקית הרחבה יותר של Google Cloud Google. אתם יכולים לחבר את הקטגוריות שלכם כקצה עורפי לאחסון בשירותים אחרים שלGoogle Cloud , כמו AI Hypercomputer, Vertex AI ו-Google Kubernetes Engine.
קטגוריות מתאימות לרוב תרחישי השימוש לאחסון נתונים, אבל אפשר להגדיר תצורות ותכונות אופציונליות בקטגוריה כדי להתאים אותה במיוחד לעומסי עבודה שדורשים ביצועים גבוהים:
מרחב שמות היררכי: אפשר להפעיל מרחב שמות היררכי בקטגוריות, וכך לאחסן את הנתונים במבנה לוגי של מערכת קבצים באמצעות תיקיות. אחסון הנתונים בתיקיות מאפשר להשתמש בסמנטיקה של ספריות ובפעולות אטומיות על תיקיות, שלרוב נדרשות להאצת עומסי עבודה של AI/ML וניתוח נתונים שדורשים הרבה נתונים. בקטגוריות שמופעל בהן מרחב שמות היררכי, מגבלות השאילתות הראשוניות לשנייה (QPS) לקריאה ולכתיבה של אובייקטים גבוהות עד פי 8 בהשוואה לקטגוריות שלא מופעל בהן מרחב שמות היררכי.
אפשר להפעיל את מרחב השמות ההיררכי רק בזמן יצירת הקטגוריה, ואי אפשר להפעיל אותו בקטגוריה קיימת.
Rapid Bucket: Rapid Bucket היא יכולת ביצועים גבוהה שמאפשרת לכם לאחסן אובייקטים בסוג האחסון Rapid Storage באמצעות אזור כמיקום של הקטגוריה. כשמאתרים מאגרי מידע באזורים, מקבלים את האפשרות למקם את האובייקטים יחד עם משאבי המחשוב, הפעלה אוטומטית של מרחב שמות היררכי וממשקי API לקריאות בסטרימינג ולכתיבות שאפשר להוסיף להן. השימוש ב-Rapid Bucket מאפשר שיפור משמעותי של זמן האחזור, התפוקה ופעולות הקלט/פלט בהשוואה ל-Buckets בסוגי אחסון אחרים, ולכן הוא אידיאלי לעומסי עבודה של AI/ML וניתוח נתונים שדורשים הרבה נתונים.
כדי להשתמש ב-Rapid Bucket, יוצרים קטגוריה ומגדירים אזור כמיקום של הקטגוריה. אי אפשר להשתמש ב-Rapid Bucket בקטגוריות קיימות שלא נמצאות באזור.
אובייקט: קטגוריות מכילות אובייקטים, כמו תמונה בשם
puppy.png. אובייקט הוא חלק של נתונים שלא ניתן לשינוי, שמורכב מקובץ בכל סוג של פורמט. כל קטגוריה יכולה להכיל מספר בלתי מוגבל של אובייקטים בודדים.תיקייה: קטגוריות שמופעל בהן מרחב שמות היררכי יכולות להכיל תיקיות. תיקיות מאפשרות מערכת קבצים אמיתית לאחסון אובייקטים, בניגוד למערכת קבצים מדומה. אתם יכולים לשנות את השם של תיקייה ושל כל האובייקטים בתוכה בפעולה אחת.
תיקייה מנוהלת: כל קטגוריה יכולה להכיל גם תיקיות מנוהלות, שמעניקות או מבטלות גישה נוספת מעבר להרשאות IAM שהוגדרו בקטגוריה. בתיקיות מנוהלות לא נעשה שימוש במבנה של עץ ספריות אמיתי. תיקייה מנוהלת היא שכבת-על של משאבים שמשמשת רק לבדיקת הרשאות.
כלים ל-Cloud Storage
אפשר להשתמש בכלים הבאים כדי ליצור אינטראקציה עם Cloud Storage:
Google Cloud המסוף: המסוף Google Cloud מספק ממשק חזותי לניהול הנתונים בדפדפן.
Google Cloud CLI: ה-CLI של gcloud מאפשר אינטראקציה עם Cloud Storage דרך טרמינל באמצעות פקודות של
gcloud storage.ספריות לקוח: ספריות הלקוח של Cloud Storage מאפשרות לנהל את הנתונים באחת מהשפות המועדפות עליכם, כולל C++, C#, Go, Java, Node.js, PHP, Python ו-Ruby.
REST APIs: ניהול הנתונים באמצעות API בפורמט JSON או API בפורמט XML.
Terraform: Terraform הוא כלי של תשתית כקוד (IaC), שבעזרתו אפשר להקצות את התשתית ל-Cloud Storage. מידע נוסף זמין במאמר הקצאת משאבים באמצעות Cloud Storage.
gRPC: gRPC מאפשר לכם ליצור אינטראקציה עם Cloud Storage. gRPC הוא מסגרת RPC אוניברסלית בקוד פתוח עם ביצועים גבוהים שפותחה על ידי Google, ואפשר להשתמש בה כדי להגדיר את השירותים שלכם באמצעות Protocol Buffers.
Cloud Storage FUSE: Cloud Storage FUSE מאפשר לטעון קטגוריות של Cloud Storage למערכת הקבצים המקומית. כך האפליקציות יכולות לקרוא מקטגוריה או לכתוב לקטגוריה באמצעות סמנטיקה סטנדרטית של מערכת קבצים.
אבטחת נתונים
אחרי שמעלים אובייקטים ל-Cloud Storage, יש לכם בקרה פרטנית על האבטחה ועל שיתוף הנתונים. הנה מספר דרכים לאבטח את הנתונים שמעלים ל-Cloud Storage:
ניהול זהויות והרשאות גישה (IAM): אפשר להשתמש ב-IAM כדי לקבוע למי תהיה גישה למשאבים בפרויקט של Google Cloud . המשאבים כוללים קטגוריות ואובייקטים של Cloud Storage, וגםGoogle Cloud ישויות אחרות כמו מכונות של Compute Engine. אפשר להעניק לחשבונות המשתמשים סוגים מסוימים של גישה לקטגוריות ולאובייקטים, כמו
update,createאוdelete.הצפנת נתונים: כברירת מחדל, Cloud Storage משתמש בהצפנה בצד השרת כדי להצפין את הנתונים. אפשר גם להשתמש באפשרויות משלימות להצפנת נתונים כמו מפתחות הצפנה בניהול הלקוח ומפתחות הצפנה באספקת הלקוח (CSEK).
אימות: צריך לוודא שלכל מי שמשתמש בנתונים יש פרטי כניסה תקינים.
מחיקה זמנית: מונעת אובדן נתונים קבוע כתוצאה ממחיקה מקרית או זדונית, על ידי שמירה של אובייקטים ודליים שנמחקו לאחרונה. כברירת מחדל, ב-Cloud Storage מופעלת מחיקה רכה לכל הקטגוריות עם תקופת שמירה של שבעה ימים.
ניהול גרסאות של אובייקטים: כשגרסה פעילה של אובייקט מוחלפת או נמחקת, אפשר לשמור אותה כגרסה לא עדכנית אם מפעילים ניהול גרסאות של אובייקטים.
סינון כתובות IP של דליים: באמצעות סינון כתובות IP של דליים, אתם יכולים להגביל את הגישה לדלי על סמך כתובת ה-IP של המקור של הבקשה, ולאבטח את הנתונים מפני גישה לא מורשית מכתובות IP ספציפיות או מ-Virtual Private Cloud (VPC).
נעילת קטגוריה: פיקוח על משך הזמן שאובייקטים בקטגוריות יישמרו באמצעות ציון של מדיניות שמירת נתונים.
שמות המשאבים
לכל משאב יש שם ייחודי שמזהה אותו, בדומה לשם קובץ.
לקטגוריות יש שם משאב בצורת projects/_/buckets/BUCKET_NAME, כאשר BUCKET_NAME הוא מזהה הקטגוריה. לאובייקטים יש שם משאב בצורת projects/_/buckets/BUCKET_NAME/objects/OBJECT_NAME, כאשר OBJECT_NAME הוא מזהה האובייקט.
הסיומת #NUMBER המצורפת לסוף שם המשאב מציינת יצירה ספציפית של האובייקט. #0 הוא מזהה מיוחד של הגרסה העדכנית של האובייקט. כדאי להוסיף את #0 כששם האובייקט מסתיים במחרוזת שאפשר לפרש כמספר גנרציה.
מדריכים למתחילים
כדי להכיר את יסודות השימוש ב-Cloud Storage, אפשר להיעזר במדריכים הבאים:
מחפשים מוצרים אחרים?
אם Cloud Storage הוא לא פתרון האחסון שמתאים לכם, אתם יכולים לקרוא מידע נוסף על שירותי האחסון הבאים:
Google Cloud Managed Lustre: אחסון נתונים במערכת קבצים מקבילה בניהול מלא, עם ביצועים גבוהים ואופטימיזציה לעומסי עבודה של AI ו-HPC.
Google Drive: אחסון, ניהול ושיתוף של קבצים אישיים.
Cloud Storage for Firebase: ניהול נתונים של אפליקציות לנייד.
Persistent Disk: הוספת אחסון בלוקים (block storage) למכונה הווירטואלית של Compute Engine.
Filestore: הוספת אחסון קבצים לגישה של ריבוי כותבים לאשכולות GKE.
שירותי אחסון נוספים שמוצעים על ידי Google
המאמרים הבאים
- מידע על היסודות של Cloud Storage בGoogle Cloud מסוף או ב-Google Cloud CLI.
- אפשר לנסות Google Cloud פתרונות להפעלה מהירה שמשתמשים ב-Cloud Storage.
- מתחילים לעבוד עם ספריות לקוח.
- ייבוא מהיר של נתוני אונליין לתוך Cloud Storage או בין קטגוריות של Cloud Storage באמצעות Storage Transfer Service.