מבנה נתונים במערכת: משתנים, Extractor, לולאות ומיפוי
מדריך מקיף לעבודה עם מבנה נתונים: הגדרת משתנים ו‑Set, שליפת ערכים עם Extractor, לולאות ופונקציות, מיפוי ממקורות מרובים, Condition ו‑Break.
מה נלמד במדריך הזה
נעבור על כל נושא מבנה הנתונים במערכת ואיך הוא עובד: איך מגדירים משתנים, איך שולפים ערך מתוך אובייקט מורכב, איך רצים בלולאה על מערך, איך ממפים נתונים ממקורות שונים, ואיך עוצרים תהליך באמצע. אלו קונספטים בסיסיים שנשתמש בהם המון בהמשך — שווה להשקיע בהבנתם.
שלב 1: הגדרת משתנים (Set)
נוד ה‑Set הוא המקום שבו מגדירים את המשתנים שלנו. אפשר להגדיר:
- טקסט (String): למשל משתנה בשם
testעם ערך טקסטואלי. לטקסט יש מירכאות. - מספר (Number): מספר מזוהה בכך שאין לו מירכאות.
- אובייקט (JSON): למשל אובייקט עם
email: "test@gmail.com"ו‑password: "...". כך אפשר לארגן כמה ערכים יחד במקום אחד.
היתרון בעבודה עם אובייקט: ממפים את כל הערכים במקום אחד ולא צריך שרשרת של נודים נפרדים לכל ערך. שמרו והריצו — תראו את המשתנים והערכים שלהם.
שלב 2: שליפת ערך עם Extractor
נניח שיש לנו אובייקט עם 100 ערכים ואנחנו רוצים לשלוף רק אחד (למשל את האימייל). במקום לשרשר שלושה נודים שונים, משתמשים בנוד Extractor:
- הפעילו מצב JSON כדי לראות את המבנה בבירור.
- הגדירו את ה‑Key (שם המפתח, למשל
email) ואת ה‑Type שלו (למשלString) — הטיפוסים מופיעים ליד המשתנים. - בחרו את הערך הרצוי (למשל
first item) ושמרו.
ה‑Extractor חוסך שרשראות ארוכות של נודים ומוציא בדיוק את הערך שאתם צריכים.
שלב 3: לולאות על מערך (Loop)
מערך מזוהה ב‑JSON לפי סוגריים מרובעים [ ]. כדי לעבד כל פריט במערך צריך לולאה:
- חברו את האובייקט/המערך לנוד הלולאה.
- הלולאה רצה על כל פריט בנפרד — בכל סיבוב היא נמצאת על ערך אחר (Current value).
- אפשר גם לקבל את ה‑Index (פחות הכרחי, אך שימושי לעיתים).
פונקציות בתוך הלולאה
בתוך הלולאה אפשר להשתמש בפונקציות מובנות. לדוגמה, פונקציה שמחזירה ערך מחושב על כל פריט. חשוב: תמיד תנו שם ללולאה/לפונקציה — אל תשאירו את השם כברירת מחדל כמו “loop”; תנו שם משמעותי כדי להימנע מבאגים.
הערה: בזמן בדיקה (Test) ה‑UI “מסתובב” בין הפריטים ונראה איטי. ב‑Production זה רץ בשבריר שנייה — אל תתייחסו לאיטיות של הבדיקה.
שלב 4: שמירת תוצאות לטבלה (Append)
כשרצים בלולאה ורוצים לשמור כל פריט לטבלה:
- חברו את הלולאה ל‑Table Interface.
- בחרו את פעולת Append (הוספת שורה).
- מפו את הערכים: קחו את ה‑Current value מהלולאה כדי שכל סיבוב יכתוב את הערך הנכון.
שלב 5: מיפוי ממקורות מרובים
נוד המיפוי מיוחד בכך שהוא מקבל נתונים ממספר מקורות שונים בו‑זמנית — אפילו 50 מקורות. דוגמה: שני בוטים עם מודלים שונים (“בוט 1” ו‑“בוט 2”) שכל אחד מחזיר תשובה. הנוד ממתין שכל המקורות יסיימו, ואז ממפה את כולם למקום אחד — נוח מאוד לבחור אחר כך את הערכים דרך Set.
זה נראה מורכב בהתחלה, אבל למעשה פשוט בהרבה: בפלטפורמות אחרות היו נדרשות הרבה יותר פעולות ולולאות כדי להגיע לאותו מיפוי. כאן רוב הפעולות מתבצעות בנוד אחד — ויזואלי וברור יותר.
שלב 6: דוגמה מעשית — סינון אימיילים
דוגמה מורכבת יותר: קוראים את תיבת הדואר ומושכים את כל האימיילים. האובייקט מורכב (JSON עם הרבה שדות). במקום לשרשר שלושה נודים כדי להגיע לשדה מסוים:
- ב‑Extractor שולפים רק את ה‑Snippet (לא את כל העמודה) מכל המודעות/ההודעות.
- מזינים למודל AI שיבדוק אילו הודעות הן ספאם לפי שיקולו, ובהמשך אפשר להוסיף פעולה שתמחק אותן או תודיע עליהן.
השילוב של Extractor + Set מאפשר לארגן את המשתנים בדיוק כרצונכם — וזה רוב העבודה. ככל שתתאמנו בכלים האלה, תחסכו יותר זמן.
שלב 7: Condition (תנאי)
נוד ה‑Condition פשוט: שמים ערך ראשון, בוחרים אופרטור (למשל is equal), ומזינים ערך שני. אפשר להוסיף עוד תנאים. נשתמש בו יותר בהמשך, אבל הרעיון בסיסי.
שלב 8: עצירת תהליך עם Break
לפעמים באמצע לולאה, כשיש עוד עשרות פעולות אחריה, לא רוצים שהתהליך ימשיך. לשם כך יש את נוד ה‑Break:
- כשמגיעים ל‑Break, המערכת מסיימת את הפעולה הנוכחית ולא ממשיכה להזרים את שאר הנתונים הלאה.
- כך נמנעים מהרצת 50 פעולות מיותרות כשכבר אין צורך.
טעויות נפוצות
- לא נותנים שם ללולאה/פונקציה — עלול לגרום לבאגים; תמיד תנו שם משמעותי.
- מבלבלים בין אובייקט למערך — מערך מזוהה בסוגריים מרובעים
[ ]; ודאו שאתם רצים בלולאה על מערך. - מתייחסים לאיטיות בבדיקה כאילו זו הביצועים האמיתיים — ב‑Production זה מהיר.
- בונים שרשראות נודים ידניות במקום להשתמש ב‑Extractor/Set — מסבך ומאריך שלא לצורך.
סיכום וצעדים הבאים
עברנו על משתנים (Set), שליפה עם Extractor, לולאות ופונקציות, מיפוי ממקורות מרובים, Condition ו‑Break. השילוב של Extractor ו‑Set הוא לב העבודה עם נתונים — הוא מארגן את המשתנים ויזואלית וחוסך זמן. בהמשך נעמיק ב‑Condition ובאוטומציות מורכבות יותר שמסתמכות על היסודות האלה.
יש שאלה או רעיון לשיפור המדריך? כתבו לנו.