בדף הזה מוסברים המושגים והמינוחים הבסיסיים של עיבוד צינורות ב-Cloud Data Fusion.
הביצועים של צינור הנתונים תלויים בהיבטים הבאים:
- הגודל והמאפיינים של הנתונים
- המבנה של צינור עיבוד הנתונים
- התאמת גודל האשכול
- תוספים שצינור הנתונים של Cloud Data Fusion משתמש בהם
מינוח לעיבוד פייפליין ב-Cloud Data Fusion
המינוח הבא רלוונטי לעיבוד צינורות ב-Cloud Data Fusion.
- סוג המכונה
- סוג המכונות הווירטואליות (VM) שנעשה בהן שימוש (CPU, זיכרון).
- אשכול
- קבוצה של מכונות וירטואליות שפועלות יחד כדי לטפל במשימות עיבוד נתונים בהיקף גדול.
- צומתי מאסטר וצומתי עובד
- מכונות פיזיות או וירטואליות שיכולות לבצע עיבוד. צמתי בקרה בדרך כלל מתאמים את העבודה. צמתי Worker מריצים רכיבי Executor שמעבדים נתונים. יש להם מאפיינים של מכונה (נפח הזיכרון ומספר ליבות ה-vCore שזמינות לתהליכים).
- ליבות וירטואליות, ליבות או מעבדים
- משאב שמבצע חישובים. בדרך כלל הצמתים מספקים כמות מסוימת של ליבות, וה-Executors מבקשים מעבד אחד או כמה מעבדים. חשוב לאזן את זה עם הזיכרון, אחרת יכול להיות שלא תנצלו את האשכול בצורה אופטימלית.
- נהג/ת
- מכונה וירטואלית אחת שמשמשת כמתאם מרכזי לכל האשכול. הוא מנהל את המשימות, מתזמן את העבודה בצמתי העובדים ועוקב אחרי התקדמות המשימות.
- מבצעים
- כמה מכונות וירטואליות שמבצעות את משימות עיבוד הנתונים בפועל, בהתאם להוראות של מנהל ההתקן. הנתונים מחולקים ומפוזרים בין המבצעים האלה לצורך עיבוד מקביל. כדי להשתמש בכל מנהלי הפעולות, צריך שיהיו לכם מספיק פיצולים.
- פיצולים או מחיצות
- קבוצת נתונים מפוצלת לפיצולים (חלוקות אחרות של שמות) כדי לעבד נתונים במקביל. אם אין לכם מספיק פיצולים, לא תוכלו להשתמש בכל האשכול.
סקירה כללית על כוונון הביצועים
צינורות (Pipelines) מופעלים באשכולות של מכונות. כשבוחרים להפעיל צינורות של Cloud Data Fusion באשכולות של Managed Service for Apache Spark (שהוא ספק השירות המומלץ), המערכת משתמשת ב-YARN (Yet Another Resource Negotiator) ברקע. Managed Service for Apache Spark משתמש ב-YARN לניהול משאבים באשכול. כששולחים צינור עיבוד נתונים של Cloud Data Fusion לאשכול של Managed Service for Apache Spark, משימת Apache Spark הבסיסית משתמשת ב-YARN להקצאת משאבים ולתזמון משימות.
אשכול מורכב מצמתי מאסטר ועובד. צמתי בקרה אחראים בדרך כלל לתיאום העבודה, בעוד שצמתי עובד מבצעים את העבודה בפועל. בדרך כלל, באשכולות יש מספר קטן של צמתי מאסטר (אחד או שלושה) ומספר גדול של צמתי עובד. מערכת התיאום של העבודה היא YARN. YARN מפעיל שירות מנהל המשאבים בצומת הראשי ושירות Node Manager בכל צומת עובד. מנהלי המשאבים מתאמים בין כל מנהלי הצמתים כדי לקבוע איפה ליצור ולהפעיל את הקונטיינרים באשכול.
בכל צומת עובד, Node Manager שומר חלק מהזיכרון והמעבדים הזמינים במכונה להרצת קונטיינרים של YARN. לדוגמה, באשכול של Managed Service for Apache Spark, אם צמתי העובדים הם מכונות וירטואליות מסוג n1-standard-4 (4 מעבדים, זיכרון בנפח 15GB), כל Node Manager ישמור 4 מעבדים וזיכרון בנפח 12GB להרצת קונטיינרים של YARN. הזיכרון שנותר בנפח 3 GB מיועד לשירותי Hadoop אחרים שפועלים בצומת.
כשמריצים צינור עיבוד נתונים ב-YARN, מופעלים מנהל התקן של תהליך העבודה של צינור עיבוד הנתונים, מנהל התקן של Spark ומבצעים רבים של Spark ב-Managed Service for Apache Spark.
הגורם שמפעיל את תהליך העבודה אחראי להפעלת תוכניות Spark אחת או יותר שמרכיבות את הפייפליין. בדרך כלל, מנהל תהליך העבודה לא מבצע הרבה פעולות. כל תוכנית Spark מפעילה מנהל התקן יחיד של Spark ומספר רב של מנהלי ביצוע של Spark. הקואורדינטות של ה-driver פועלות בקרב ה-executors, אבל בדרך כלל לא מבצעות עבודה בפועל. רוב העבודה בפועל מתבצעת על ידי תהליכי Spark executor.
המאמרים הבאים
- מידע נוסף על עיבוד מקביל ב-Cloud Data Fusion