במאמר הזה מוסבר איך ליצור פרופיל של השימוש במשאבים ב-Managed Service for Apache Spark. Cloud Profiler אוסף ומדווח באופן רציף על נתוני השימוש במעבד (CPU) של האפליקציה ועל הקצאת הזיכרון. אפשר להפעיל את יצירת הפרופיל כששולחים אצווה או כשיוצרים עומס עבודה של סשן באמצעות מאפייני הפרופיל שמפורטים בטבלה הבאה.
Managed Service for Apache Spark מוסיף אפשרויות שקשורות ל-JVM להגדרות spark.driver.extraJavaOptions ו-spark.executor.extraJavaOptions שמשמשות לעומס העבודה.
| אפשרות | תיאור | ערך | ברירת מחדל |
|---|---|---|---|
dataproc.profiling.enabled |
הפעלת התאמה לפרופיל של עומס העבודה | true או false |
false |
dataproc.profiling.name |
שם הפרופיל בשירות Profiler | PROFILE_NAME | spark-WORKLOAD_TYPE-WORKLOAD_ID, כאשר: |
הערות:
- ב-Managed Service for Apache Spark, הגרסה של כלי הפרופיל מוגדרת למזהה ה-UUID של העיבוד ברצף או למזהה ה-UUID של הסשן.
- Profiler תומך בסוגי עומסי העבודה הבאים של Spark:
Spark,PySpark,SparkSqlו-SparkR. - עומס העבודה צריך לפעול יותר משלוש דקות כדי ש-Profiler יוכל לאסוף ולהעלות נתונים לפרויקט.
- אפשר לשנות את אפשרויות הפרופיל שנשלחו עם עומס העבודה על ידי יצירת
SparkConfוהגדרתextraJavaOptionsבקוד. שימו לב: הגדרת מאפייניextraJavaOptionsכששולחים את עומס העבודה לא מבטלת את אפשרויות הפרופיל שנשלחו עם עומס העבודה.
דוגמה לאפשרויות של כלי הפרופילר שמשמשות לשליחת אצווה מופיעה במאמר דוגמה לעומס עבודה של אצווה ב-PySpark.
הפעלת יצירת פרופיל
כדי להפעיל פרופילים בעומס עבודה:
- מפעילים את הכלי ליצירת פרופילים.
- אם אתם משתמשים בחשבון שירות מותאם אישית למכונה וירטואלית, צריך להעניק את התפקיד Cloud Profiler Agent לחשבון השירות המותאם אישית למכונה הווירטואלית. התפקיד הזה מכיל את ההרשאות הנדרשות ל-Profiler.
- מגדירים מאפייני פרופיל כששולחים עומס עבודה של אצווה או כשיוצרים תבנית סשן.
דוגמה לעומס עבודה באצווה ב-PySpark
בדוגמה הבאה נעשה שימוש ב-CLI של gcloud כדי לשלוח עומס עבודה של PySpark batch עם פרופיל מופעל.
gcloud dataproc batches submit pyspark PYTHON_WORKLOAD_FILE \ --region=REGION \ --properties=dataproc.profiling.enabled=true,dataproc.profiling.name=PROFILE_NAME \ -- other args
נוצרים שני פרופילים:
PROFILE_NAME-driverכדי ליצור פרופיל של משימות של מנהל התקן SparkPROFILE_NAME-executorלפרופיל של משימות של מנוע ההפעלה של Spark
צפייה בפרופילים
אפשר לראות פרופילים מ-Profiler במסוף Cloud de Confiance .