פרויקט Apache משך

דף זה מכיל את הפרטים של פרויקט כתיבה טכנית שהתקבל בעונה של Google Docs.

סיכום הפרויקט

ארגון הקוד הפתוח:
Apache Zoom
כתב טכני:
שרותי סרי קומאר
שם הפרויקט:
עדכון של דף ההשוואה / מטריצת היכולות של הרצים
אורך הפרויקט:
אורך רגיל (3 חודשים)

תיאור הפרויקט

Apache Beam היא פלטפורמה מאוחדת להגדרת צינורות עיבוד נתונים באצווה ובזרם. Apache בזמן מאפשר לך להגדיר מודל לייצוג ולטרנספורמציה של מערכי נתונים בלי קשר לפלטפורמה ספציפית לעיבוד נתונים. לאחר הגדרתו, אפשר להריץ אותו בכל אחת מהמסגרות הנתמכות בזמן הריצה (runners), שכוללות את Apache Apex, Apache Flink, Apache Spark ו-Google Cloud Dataflow. Apache כאשר מגיע גם עם ערכות SDK שונות שמאפשרות לך לכתוב את צינור עיבוד הנתונים בשפות תכנות כמו Java, python ו-GO.

אני מגיש את הבקשה שלי ל-GSOD ב"עדכון של דף ההשוואה בין האצנים/מטריצת היכולות". מכיוון ש-Apache Zoom תומך במספר רצים ו-SDK, משתמש חדש יתבלבל לבחור ביניהם. התיעוד הנוכחי של אצנים שונים מספק סקירה קצרה מאוד על האצנים. הרעיון שלי הוא להוסיף יותר הסברים על כל משחק בדף התיעוד של הריצה. בנוסף, אני רוצה לעדכן את התיאור של פרויקט ספירת המילים לדוגמה כדי להוסיף הסבר מפורט. בשלב הזה, אנסה כל דוגמה לספירת מילים במחשב שלי באופן מקומי, ולבדוק אם חלק מהשלבים חסרים ולהוסיף הסבר על התהליך. דבר נוסף ששמתי לב אליו הוא שהתיעוד של הרצים לא בנוי לפי דפוס כלשהו(למעטים יש קטע סקירה כללית ואחרים מתחילים עם אופן השימוש או עם הדרישות המוקדמות או על שם אקראי אחר). אעדכן את כולם בתבנית פשוטה אחת.

אני מתכנן להוסיף דף חדש כדי לתאר כל אצן ולספק קריינות תיאורית לכל אחד מהם[BEAM-3220]. מהדף הזה המשתמשים יכולים להפנות אוטומטית לדף התיאור המפורט של כל משחק ומטריצת היכולות. אני מתכנן גם להוסיף כאן השוואה תיאורית של כל אחד מהמשבצות. נכון לעכשיו, אני משתמש ב-Beam NEXMark כמבחני השוואת ביצועים של Flink למטרת תזה מאסטר. מאחר שאני מודע לחלוטין למבחן הבנצ'מרק של NEXMark, אני רוצה לכלול את תוצאות ההשוואה לשוק של כל רץ גם במצב אצווה וגם במצב סטרימינג כאן(BEAM-2944). אני אעדכן את התיעוד של NEXMark גם אם גיליתי שחסרים או הוסרו פרמטרים כלשהם או הגדרות מסוימות. לפני שהשתמשתי ב-Flink לרולר, בהתחלה נתקעתי כי אחד מהפרמטרים היה חסר בתיעוד. אבל עכשיו, מכיוון שאני מכיר טוב יותר את בסיס הקוד של NEXMark, יהיה לי קל יותר לבדוק מתחרים ולהוסיף את המדדים. בדף הזה אני רוצה לכלול סיכום קצר של המוכנות להפקה של כל אחד מהאומנים.

בתיעוד הנוכחי, תמיכה במשחקי ריצה קלאסיים/ניידים כלולה בכל דף תיאור של ריצה. לדעתי עדיף גם לרכז את כולם במקום אחד, במטריצת היכולות או בדף התיאור החדש שנוסף. בנוסף, כרגע התמיכה בניידות נשמרת בגיליון Google נפרד שאני רוצה למזג עם מטריצת התאימות. https://docs.google.com/spreadsheets/d/1KDa_FGn1ShjomGd-UUDOhuh2q73de2tPz6BqHpzqvNI/edit#gid=0). במסגרת המשימה הזו, אני מתכנן לכלול את כל התיקונים העיקריים/הקטנים שמוזכרים ב-BEAM-2888.

GSoD הוא מבחינתי הזדמנות להשתתף ביצירת תוכן בקוד פתוח. אני אמשיך לתרום לפרויקטים של קוד פתוח, במיוחד ל-Beam, ואני רוצה להמשיך להיות חבר קהילה פעיל. מאחר של-Apache Beam יש קהילה פעילה עם תכונות מתמשכות בפיתוח, אני חושב שתמיד יש מקום לשיפור התיעוד על מנת לעדכן אותו. אני גם רוצה לתרום לתהליך הפיתוח. אם יש לי ידע רב ב-Beam, אני גם יכול לעזור לקהילת המשתמשים, כפי שתמיד קיבלתי עזרה מהקהילה כשהתחלתי להשתמש ב-Beam.

אני מאמין שאני האדם הנכון לפרויקט הזה, כי:

  1. אני חובב מערכות מבוזרות שמנסה להבין את המידע הפנימי של מערכות לעיבוד נתונים.
  2. יש לי ניסיון בעבודה עם Apache Zoom ו-Apache Flink כמשתמש.
  3. כבר הבנתי את הקוד של Apache Zoom ו-Apache Flink כמפתח.
  4. יצרתי פרויקט להשוואה בין שחקנים שמריצים קורות שונות.
  5. יש לי ניסיון בכתיבת בלוגים טכניים שעוסקים במושגים של עיבוד Big Data ומערכות מבוזרות.
  6. נכון לעכשיו, אני עובד על תזה המאסטר שלי כדי לשפר את הביצועים של הקצה העורפי של מצב Apache Flink, שעבורו אני משתמש בהטמעת Apache Foundation NEXMark לצורכי השוואה, ותרמתי לעדכון התיעוד של Apache בזמן.
  7. יש לי ניסיון של 4 שנים כמפתח תוכנה, וכתבתי כמה מסמכי תכנון טכני וקובצי מידע על המוצר וקובצי Readme(שאין לי גישה אליהם כרגע).
  8. אני כותב את התיעוד כך שכל מי שאין לו ידע קודם יבין אותו במבט ראשון.