השירות Managed Service for Apache Spark כולל עכשיו את אפשרויות המוצר הקודמות Dataproc on Compute Engine (פריסת אשכול) ו-Google Cloud Serverless for Apache Spark (פריסה ללא שרת).
שתי האפשרויות מספקות סביבת Spark מנוהלת, ניתנת להרחבה, מוכנה לייצור ומאובטחת, שתואמת ל-OSS עם תמיכה מלאה בפורמטים של נתונים. עם זאת, יש הבדלים בין האפשרויות בניהול התשתית הבסיסית ובחיוב על משאבים. כדי לעזור לכם לבחור פתרון Spark, כדאי לעיין בתכונות ובמקרים הבאים לשימוש.
מידע נוסף על פריסות בלי שרת (serverless) של Managed Service for Apache Spark זמין במאמר סקירה כללית על פריסות בלי שרת (serverless) של Managed Service for Apache Spark.
השוואה בין פריסות של Managed Service for Apache Spark
בטבלה הבאה מפורטים ההבדלים העיקריים בין אשכולים של Managed Service for Apache Spark לבין פריסות ללא שרתים.
| פריסה | ללא שרת (serverless) | אשכול |
|---|---|---|
| מסגרות לעיבוד נתונים | עומסי עבודה באצווה וסשנים אינטראקטיביים: Spark | Spark. מסגרות קוד פתוח אחרות, כמו Hive, Flink, Trino ו-Kafka |
| ללא שרת (serverless) | כן | לא |
| זמן הפעלה | 50s | 120 שניות |
| שליטה בתשתית | לא | כן |
| ניהול המשאבים | ללא שרת (serverless) | YARN |
| תמיכה ב-GPU | כן | כן |
| סשנים אינטראקטיביים | כן | לא |
| מאגרי תגים בהתאמה אישית | כן | לא |
| גישה למכונה וירטואלית (SSH) | לא | כן |
| גרסאות Java | Java 17, 21 | Java 17 וגרסאות קודמות |
איך בוחרים את הפריסה הכי טובה של Managed Service for Apache Spark
בקטע הזה מפורטים היתרונות העיקריים של Managed Service for Apache Spark ותיאורי מקרה עיקריים, כדי לעזור לכם לבחור את הפריסה הטובה ביותר של Managed Service for Apache Spark – אשכול או Serverless – עבור עומסי העבודה של Spark.
סקירה כללית
ההבדלים בין פריסות של Managed Service for Apache Spark הם ברמת השליטה, בניהול התשתית ובאופן החיוב שכל אחת מהן מציעה.
- פריסה ללא שרת: שירות מנוהל ל-Apache Spark מציע משימות Spark כשירות, שמריצות את Spark בתשתית מנוהלת לחלוטין Google Cloud. התשלום הוא על זמן הריצה של העבודה.
- פריסת אשכולות: מציע אשכולות Spark כשירות, שמריצים Spark מנוהל בתשתית Compute Engine. התשלום הוא על זמן הפעולה של האשכול.
בגלל ההבדלים האלה, כל פריסה של Managed Service for Apache Spark מתאימה במיוחד לתרחישי השימוש הבאים:
| פריסה | תרחישים לדוגמה |
|---|---|
| ללא שרת (serverless) | סביבות עבודה ייעודיות שונות עומסי עבודה של אצווה מתוזמנים ניהול קוד מקבל עדיפות על פני ניהול תשתית |
| אשכול | סביבות משותפות שפועלות לאורך זמן עומסי עבודה שנדרש עבורם שליטה מדויקת בתשתית העברה של סביבות Hadoop ו-Spark מדור קודם |
ההבדלים העיקריים
| תכונה | פריסה ללא שרת | פריסת אשכול |
|---|---|---|
| מודל ניהול | סביבת הפעלה מנוהלת ללא שרת (serverless). | מבוסס על אשכולות. אתם מקצים ומנהלים את האשכולות. |
| בקרה והתאמה אישית | פחות שליטה בתשתית, עם התמקדות בשליחת קוד ובהגדרת פרמטרים של Spark. | שליטה רבה יותר בהגדרת האשכול, בסוגי המכונות ובתוכנה. אפשרות להשתמש במכונות וירטואליות מסוג Spot, ולעשות שימוש חוזר בהזמנות ובקיבולת של משאבי Compute Engine. מתאים לעומסי עבודה שיש להם תלות בצורות ספציפיות של מכונות וירטואליות, כמו ארכיטקטורות של מעבדים. |
| תרחישים לדוגמה | שאילתות אד-הוק, ניתוח אינטראקטיבי, צינורות Spark חדשים ועומסי עבודה עם צרכים בלתי צפויים במשאבים. | אשכולות משותפים שפועלים לאורך זמן, העברת עומסי עבודה קיימים של Hadoop ו-Spark עם הגדרות בהתאמה אישית, עומסי עבודה שנדרשת עבורם התאמה אישית מעמיקה. |
| תקורה תפעולית | תקורה נמוכה יותר. Google Cloud מנהל את התשתית, את ההתאמה לגודל ואת הקצאת המשאבים, ומאפשר מודל NoOps. Gemini Cloud Assist מפשט את פתרון הבעיות, והתאמה אוטומטית ללא שרתים עוזרת לספק ביצועים אופטימליים. |
תקורה גבוהה יותר שמחייבת ניהול, שינוי גודל ותחזוקה של אשכולות. |
| מודל יעילות | אין תקורה של מחשוב במצב סרק: הקצאת משאבי מחשוב רק כשהעבודה פועלת. אין עלויות הפעלה וכיבוי. סשנים אינטראקטיביים משותפים נתמכים לשיפור היעילות. | היעילות שמתקבלת משיתוף אשכולות בין משימות וצוותים, עם שיתוף, מודל ריבוי דיירים. |
| הגדרת הגישה למיקום | Managed Service for Apache Spark תומך בעומסי עבודה אזוריים ללא עלות נוספת, כדי לספק אמינות וזמינות נוספות. | האשכולות הם אזוריים. אפשר לבחור את האזור באופן אוטומטי במהלך יצירת האשכול. |
| עלות | החיוב מתבצע רק על משך ההפעלה של עבודת Spark, לא כולל ההפעלה והסגירה, על סמך המשאבים שנצרכו. החיוב הוא על יחידות עיבוד נתונים (DCU) שנעשה בהן שימוש ועל עלויות אחרות של תשתיות. | החיוב מתבצע על משך הזמן שהאשכול פועל, כולל ההפעלה וההשבתה, על סמך מספר הצמתים. המחיר כולל את דמי הרישיון של Managed Service for Apache Spark ואת עלות התשתית. |
| הנחות תמורת התחייבות לשימוש (CUD) | הנחות תמורת התחייבות להוצאה ב-BigQuery חלות על משימות של Managed Service for Apache Spark. | הנחות CUD ב-Compute Engine חלות על כל השימוש במשאבים. |
| שליטה בתמונות ובזמן הריצה | המשתמשים יכולים להצמיד גרסאות משניות של סביבת זמן הריצה של Managed Service for Apache Spark. גרסאות משניות משניות מנוהלות על ידי Managed Service for Apache Spark. | המשתמשים יכולים להצמיד גרסאות משניות וגרסאות משניות משנה של תמונות Managed Service for Apache Spark. |
| ניהול משאבים | ללא שרת (serverless) | YARN |
| תמיכה ב-GPU | כן | כן |
| סשנים אינטראקטיביים | כן | לא |
| מאגרי תגים בהתאמה אישית | כן | לא |
| גישה למכונה וירטואלית (SSH) | לא | כן |
| גרסאות Java | Java 17, 21 |
גרסאות קודמות נתמכות |
| זמן הפעלה | 50s | 120 שניות |
מתי כדאי לבחור פריסה בלי שרת (serverless)
פריסת serverless של Managed Service for Apache Spark מסתירה את המורכבות של ניהול אשכולות, ומאפשרת לכם להתמקד בקוד Spark. לכן, זו בחירה מצוינת לשימוש בתרחישים הבאים של עיבוד נתונים:
- ניתוח אד-הוק ואינטראקטיבי: מדעני נתונים ואנליסטים שמריצים שאילתות אינטראקטיביות וניתוחים גישוש באמצעות Spark יכולים להתחיל לעבוד במהירות עם המודל ללא שרתים, בלי להתמקד בתשתית.
- אפליקציות וצינורות עיבוד נתונים מבוססי Spark: כשמפתחים צינורות עיבוד נתונים או אפליקציות חדשים ב-Spark, השירות המנוהל ל-Apache Spark יכול להאיץ משמעותית את הפיתוח על ידי הסרת התקורה התפעולית של ניהול אשכולות.
- עומסי עבודה עם ביקוש לא סדיר או לא צפוי: במקרה של משימות Spark לסירוגין או משימות עם דרישות משאבים משתנות, אפשר להפחית משמעותית את העלויות באמצעות התאמה אוטומטית לעומס ללא שרתים ותמחור לפי שימוש (החיוב מתבצע לפי צריכת המשאבים של המשימה).
- התמקדות בפרודוקטיביות של מפתחים: שירות Managed Service for Apache Spark מבטל את הצורך בהקצאה ובניהול של אשכולות, מזרז את יצירת הלוגיקה העסקית, מספק תובנות מהירות יותר ומגדיל את הפרודוקטיביות.
- תפעול פשוט יותר וצמצום התקורה: ניהול התשתית של Managed Service for Apache Spark מפחית את העומס התפעולי והעלויות.
מתי כדאי לבחור פריסה של אשכול
אתם יכולים להשתמש בפריסת אשכולות של Managed Service for Apache Spark כדי להפעיל את Apache Spark ומסגרות אחרות של קוד פתוח לעיבוד נתונים. הוא מציע רמה גבוהה של שליטה וגמישות, ולכן הוא הבחירה המועדפת בתרחישים הבאים:
- העברת עומסי עבודה קיימים של Hadoop ו-Spark: תמיכה בהעברת אשכולות מקומיים של Hadoop או Spark אל Google Cloud. שכפול של תצורות קיימות עם שינויים מינימליים בקוד, במיוחד כשמשתמשים בגרסאות ישנות יותר של Spark.
- התאמה אישית ושליטה מתקדמות: מאפשרות להתאים אישית את סוגי המכונות באשכול, את גדלי הדיסקים ואת הגדרות הרשת. רמת השליטה הזו חיונית לשיפור הביצועים ולאופטימיזציה של ניצול המשאבים במשימות מורכבות שפועלות לאורך זמן.
- אשכולות שפועלים לאורך זמן וקבועים: תמיכה במשימות Spark רציפות שפועלות לאורך זמן ובאשכולות קבועים לכמה צוותים ופרויקטים.
- מערכת אקולוגית מגוונת של קוד פתוח: מספקת סביבה מאוחדת להרצת צינורות עיבוד נתונים שמריצים כלים של מערכת Hadoop, כמו Hive, Pig או Presto, עם עומסי העבודה של Spark.
- תאימות לאבטחה: מאפשרת שליטה בתשתית כדי לעמוד בתקני אבטחה או תאימות ספציפיים, כמו הגנה על פרטים אישיים מזהים (PII) או על מידע רפואי מוגן (PHI).
- גמישות בתשתית: מציע מכונות וירטואליות מסוג Spot ואפשרות לעשות שימוש חוזר בהזמנות ובקיבולת המשאבים של Compute Engine כדי לאזן את השימוש במשאבים ולשפר את אסטרטגיית התשתית בענן.
סיכום
ההחלטה אם להשתמש ב-Managed Service for Apache Spark cluster או בפריסה ללא שרתים תלויה בדרישות של עומס העבודה, בהעדפות התפעול וברמת השליטה הרצויה.
- כדאי לבחור ב-Managed Service for Apache Spark serverless כי הוא קל לשימוש, חסכוני בעלויות כשמדובר בעומסי עבודה לסירוגין, ומאפשר לפתח אפליקציות Spark חדשות במהירות רבה יותר כי הוא מבטל את התקורה של ניהול התשתית.
- בחרו באפשרות Managed Service for Apache Spark clusters אם אתם צריכים שליטה מקסימלית, אם אתם צריכים להעביר עומסי עבודה של Hadoop או Spark, או אם אתם צריכים סביבת אשכולות משותפת, מותאמת אישית וקבועה.
אחרי שמעריכים את הגורמים שמפורטים בקטע הזה, בוחרים את הפריסה הכי יעילה וחסכונית של Managed Service for Apache Spark כדי להריץ את Spark ולמצות את הפוטנציאל המלא של הנתונים.