מדדים להשוואה בין תקופות ב-Looker

ניתוח תקופה-על-תקופה (PoP) הוא תבנית ניתוח המודדת משהו בהווה ומשווה אותו לאותה מדידה בתקופה דומה בעבר.

עבור דיאלקטים התומכים במדדי PoP, מפתחי Looker יכולים להוסיף מדדי PoP לפרויקטים של LookML כדי לאפשר ניתוח PoP ב-Looker Explores המתאימים.

לדוגמה, שאילתת Looker Explore הבאה מציגה את מספר ההזמנות שנוצרו בחודש הנוכחי, יחד עם מדדי PoP עבור מספר ההזמנות שנוצרו בשנה שעברה, ההפרש מהשנה שעברה ואחוז השינוי מהשנה שעברה. ניתן לאמת את ההשוואה משנה לשנה על ידי בדיקה נקודתית של הערכים. לדוגמה, הערך של הזמנות בשנה שעברה עבור 2012-03 זהה לערך של ספירת הזמנות עבור 2011-03:

Looker Explore מציג את ההזמנות בשנה שעברה לשנת 2012-03 כ-89 ואת ספירת ההזמנות לשנת 2011-03 גם היא 89.

כדי להוסיף מדד PoP לפרויקט LookML, מפתח Looker חייב ליצור measure של type: period_over_period ולכלול את הפרמטרים המשניים המתוארים בסעיף הבא בדף זה.

לדוגמה, הנה LookML עבור מדד PoP המספק את ספירת ההזמנות לשנה הקודמת:

  measure: order_count_last_year {
    type: period_over_period
    description: "Order count from the previous year"
    based_on: orders.count
    based_on_time: orders.created_year
    period: year
    kind: previous
  }

למדוד PoP זה יש את המאפיינים הבאים:

  • זה מוגדר באמצעות based_on: orders.count, כך שמדידת ה-PoP תספק נתונים על ספירת הזמנות מתקופת הזמן הקודמת.
  • הוא מוגדר כ-kind: previous, כלומר הוא מספק את ערך הספירה מתקופת הזמן הקודמת (בניגוד למתן הפרש בספירת ההזמנות מתקופת הזמן הקודמת, או אחוז שינוי בספירת ההזמנות מתקופת הזמן הקודמת).
  • הוא מוגדר באמצעות period: year, כך שהוא יספק ספירת הזמנות מפרק זמן דומה לשנה הקודמת.

תת-פרמטרים של מדדי PoP

מדד PoP הוא measure של type: period_over_period הכולל את תתי-הפרמטרים המתוארים בסעיפים הבאים:

כפי שמתואר בסעיף שאילתות Explore עם מדדי PoP, מדדי PoP מחשבים את הערכים שלהם על סמך הגדרת LookML של מדד PoP ועל סמך השדות בשאילתת Explore. מסיבה זו, עליך לדבוק בשיטות העבודה המומלצות הבאות בעת יצירת מדידת PoP ב-LookML:

  • ספקו למשתמשי Explore שלכם אינדיקציה לתקופת המדידה של ה-PoP, בין אם בשם המדידה של ה-PoP או בתת-פרמטר description של המדידה.
  • ספקו למשתמשי Explore שלכם אינדיקציה לגבי מדד ה-based_on של מדידת ה-PoP, בין אם בשם מדד ה-PoP או בתת-פרמטר description של המדד.

לדוגמה, מדד ה-PoP הבא נקרא order_count_last_year, ותיאור כלול כדי ליידע את המשתמשים שהמדד מספק את מספר ההזמנות מהשנה הקודמת:

  measure: order_count_last_year {
    type: period_over_period
    description: "Order count from the previous year"
    based_on: orders.count
    based_on_time: orders.created_year
    period: year
    kind: previous
  }

based_on

השתמש בשדה based_on כדי לציין את מדד LookML שעליו מבוסס מדד ה-PoP. לדוגמה, כדי לבסס מדד PoP על השדה orders.count, עליך להזין את הפרטים הבאים:

    based_on: orders.count

מדד PoP המבוסס על orders.count יספק מידע על מספר ההזמנות מתקופת זמן קודמת, כך שתוכלו להשוות את מספר המכירות בין תקופה נוכחית לתקופה קודמת.

מדד LookML שתציין בשדה based on חייב להיות אחד מסוגי המדדים הבאים:

based_on_time

השתמש בפרמטר המשנה based_on_time כדי לספק ל-Looker שדה זמן שבו יוכל להשתמש כדי לחשב את ערכי המדידה של PoP. שדה זמן זה יכול להיות אחד מהבאים:

  • מאפיין שמבוסס על זמן. אם מציינים מימד מבוסס-זמן בפרמטר המשנה based_on_time, המשתמשים צריכים לכלול את אותו מימד מבוסס-זמן בכל השאילתות שמשתמשות במדד PoP. בנוסף, מסגרת הזמן של המאפיין שמבוסס על זמן צריכה להיות שווה לערך period של מדד ה-PoP או קטנה ממנו. לדוגמה, אם מדד התקופה המקבילה מוגדר עם based_on_time: created_month, הערך של period במדד התקופה המקבילה לא יכול להיות week או date.
  • אחד מהטווחים הבאים של קבוצת מאפיינים של type: time:

    • year
    • fiscal_year
    • month
    • fiscal_quarter
    • quarter
    • week
    • date
    • raw
  • אחד מפרקי הזמן הבאים של קבוצת מאפיינים של type: custom_calendar

    • custom_date
    • custom_period
    • custom_quarter
    • custom_season
    • custom_week
    • custom_year

אם מציינים מסגרת זמן של קבוצת מאפיינים בפרמטר המשנה based_on_time, מסגרת הזמן הספציפית שבה משתמשים לא רלוונטית – צריך רק להפנות את מדד השינוי ביחס לתקופה הקודמת לקבוצת מאפיינים של type: time כדי שמדד השינוי ביחס לתקופה הקודמת יוכל להשתמש בחותמת הזמן הבסיסית של קבוצת המאפיינים. אי אפשר לציין מסגרת זמן מקבוצת מאפיינים מסוג type: duration. קבוצות מאפיינים מסוג משך לא נתמכות ויגרמו לשגיאת זמן ריצה בכלי הניתוחים.

kind

משתמשים בפרמטר kind כדי לציין את סוג החישוב שרוצים שהמדד של השינוי באחוזים יבצע לתקופה הקודמת. אפשר לציין אחד מהערכים הבאים עבור kind:

  • previous: (ברירת מחדל) הערך מהתקופה הקודמת.
  • difference: ההפרש בין התקופות (התקופה הקודמת פחות התקופה הנוכחית).
  • relative_change: אחוז השינוי בהשוואה לתקופה הקודמת. השינוי באחוזים מחושב לפי המשוואה הבאה:

    $$ relativeChange = (current - previous)/previous $$

period

משתמשים בפרמטר המשנה period כדי לציין את הקצב של מדד ההשוואה לתקופה הקודמת, כלומר כמה זמן אחורה רוצים להשוות. לדוגמה, אם מגדירים מדד של שינוי בהשוואה לתקופה הקודמת עם period: year, יוצגו הערכים של השנה הקודמת. אם מריצים שאילתת חיפוש בנתון 'מספר ההזמנות החודשי', המדד period: year PoP יציג את הערכים של אותו חודש בשנה הקודמת, כדי שתוכלו להשוות את מספר ההזמנות של נובמבר 2025 למספר המכירות של נובמבר 2024.

פרמטר המשנה period תומך בערכים הבאים:

  • year
  • fiscal_year
  • quarter
  • fiscal_quarter
  • month
  • week
  • date

custom_calendar_period

אם המדד של השינוי באחוזים מבוסס על לוח שנה מותאם אישית (אם הפרמטר based_on_time של מדד השינוי באחוזים מציין מסגרת זמן של קבוצת מאפיינים type: custom_calendar), צריך להשתמש בפרמטר custom_calendar_period במקום בפרמטר period.

משתמשים בפרמטר המשנה custom_calendar_period כדי לציין את הקצב של מדד ההשוואה לתקופה הקודמת, כלומר כמה זמן אחורה רוצים להשוות. לדוגמה, מדד PoP שמוגדר עם custom_calendar_period: custom_year יציג את הערכים של השנה הקודמת (כפי שהוגדרה בלוח השנה המותאם אישית). אם מריצים שאילתה ב'ניתוח נתונים' על custom_monthly order count, המדד custom_calendar_period: custom_year PoP יציג את הערכים של אותו חודש בשנה הקודמת, כדי שתוכלו להשוות את מספר ההזמנות של החודש המותאם אישית בשנת 2026 למספר המכירות של אותו חודש מותאם אישית בשנת 2025.

פרמטר המשנה custom_calendar_period תומך בערכים הבאים:

  • custom_date
  • custom_period
  • custom_quarter
  • custom_season
  • custom_week
  • custom_year

מידע נוסף על יצירת מדדי PoP שמשתמשים בלוח שנה מותאם אישית זמין בקטע שימוש במדדי PoP עם לוחות שנה מותאמים אישית.

value_to_date

השתמש בפרמטר המשנה value_to_date כדי לציין האם Looker צריך לחשב את הערכים עבור מדד ה-PoP באמצעות כמות הזמן שחלף במסגרת הזמן הנוכחית בזמן הרצת השאילתה. הפרמטר המשנה value_to_date יכול להיות no (ברירת מחדל) או yes.

  • ערך של no יתייחס לכל חלון הזמן בעת ​​צבירת נתונים.
  • ערך של yes יחשב את משך הזמן שנצפה בתקופה הנוכחית ויחיל אותו על מדד ה-PoP.

לדוגמה, עם מדד PoP חודש-אחר-חודש המוגדר באמצעות value_to_date: yes, אם בשעה 13:10:00 ב-6 ביוני תפעילו שאילתת Explore עם מדד PoP וממד מסגרת זמן של תאריך, Looker יחיל את כמות הזמן שחלף ב-6 ביוני (13 שעות, 10 דקות ו-0 שניות) על החישובים עבור כל אחד מהתאריכים בשאילתה. עבור כל תאריך, Looker יספק את הערכים עבור 13 השעות ו-10 הדקות הראשונות.

אם הייתה לך אותה מדד PoP שהוגדר עם value_to_date: no והרצת את אותה שאילתת Explore ב-6 ביוני בשעה 13:10:00, Looker יחשב את הערך עבור ה-PoP באמצעות כל הנתונים הזמינים עבור כל תאריך. אם אתם מנסים להשוות ערכים מ-6 ביוני ל-6 בחודש הקודם, שימו לב שמאחר ש-6 ביוני עדיין לא הסתיים, ייתכן שיהיו נתונים נוספים לאחר השעה 13:10:00.

ראה כיצד value_to_date משפיע על ערכי מדידת PoP לדוגמה כיצד value_to_date: yes משפיע על התוצאות בשאילתת Explore.

כפי שמתואר בסעיף דרישות לשאילתות Explore עם מדדי PoP, כאשר מפעילים שאילתת Explore עם מדד PoP, Looker מחיל אוטומטית את פירוט מסגרת הזמן המינימלית מהשאילתה על מסגרת הזמן שבה משתמש מדד ה-PoP. עבור שאילתות Explore עם מדד PoP המוגדר באמצעות value_to_date: yes, Looker לוקח את ממד מסגרת הזמן הקטן ביותר בשאילתה ומחשב את החלק ממסגרת הזמן הזו שחלף כאשר השאילתה נרצת, ולאחר מכן מחיל חלק זה על כל הערכים עבור מדד ה-PoP.

חקור שאילתות עם מדדי PoP

החישוב המבוצע עבור מדד PoP מבוסס על הגדרת LookML של מדד PoP וגם על מסגרות הזמן שצוינו בשאילתת ה-Explore עצמה; מדד PoP מתאים את החישוב שלו למסגרות הזמן שנבחרו בשאילתת ה-Explore. לדוגמה, אם מדד ה-PoP מוגדר באמצעות period: year, ושאילתת ה-Explore מכילה את ממד מסגרת הזמן orders.created_month, מדד ה-PoP יחשב ערכים חודשיים, תוך השוואת ינואר 2025 לינואר 2024. אם ברצונך לראות את הערכים השנתיים, תצטרך להריץ שאילתת Explore עם מדד PoP ורק עם מסגרת הזמן orders.created_year.

הנה כמה דוגמאות לאופן שבו ה-period של מדד PoP מקיימים אינטראקציה עם מסגרות הזמן שנבחרו בשאילתת Explore:

  • אם מדד PoP מוגדר באמצעות period: year, ואתם מפעילים שאילתת Explore עם מסגרת זמן רבעונית, מדד ה-PoP יחזיר ערכים מאותו רבעון בשנה הקודמת (רבעון ראשון של 2025 בהשוואה לרבעון ראשון של 2024).
  • אם מדד PoP מוגדר באמצעות period: year, ואתם מפעילים שאילתת Explore עם מסגרת זמן של חודש, מדד ה-PoP יחזיר ערכים מאותו חודש בשנה הקודמת (אפריל 2025 בהשוואה לאפריל 2024).
  • אם מדד PoP מוגדר באמצעות period: month, ואתם מפעילים שאילתת Explore עם מסגרת זמן של חודש, מדד ה-PoP יחזיר ערכים עבור החודש הקודם (אפריל 2025 בהשוואה למרץ 2025).

דרישות עבור שאילתות Explore עם מדדי PoP

מכיוון שמדד PoP מבצע חישובים המבוססים הן על הגדרת LookML של מדד ה-PoP והן על השדות שתבחר בשאילתת Explore, לכל הפחות עליך לכלול את השדות הבאים בשאילתת Explore הכוללת מדד PoP:

  • מדד ה-PoP.
  • ממד זמן המתאים ל-period המשויך למדידת ה-PoP. ניתן לכלול את ממד הזמן בשאילתה או מבוחר השדות של ה-Explore או במסננים של ה-Explore:
    • שאילתות של מדדי PoP תומכות ברמות פירוט של מסגרת זמן של תאריך או יותר, כמו חודש, רבעון או שנה. שאילתות למדידת שינוי באחוזים לא תומכות במאפיינים עם מסגרות זמן של שעות או דקות.
    • אם מדד השינוי ביחס לתקופה הקודמת מוגדר עם based_on_time שהוא מסגרת זמן של קבוצת מאפיינים, שאילתת הניתוח חייבת לכלול מסגרת זמן מאותה קבוצת מאפיינים שמשתמשת במסגרת זמן ששווה למסגרת הזמן שצוינה בפרמטר period של מדד השינוי ביחס לתקופה הקודמת או קטנה ממנה. אפשר לכלול את קבוצת המאפיינים בניתוח עצמו (על ידי בחירה בקבוצת המאפיינים בכלי לבחירת שדות בניתוח) או על ידי סינון לפי קבוצת המאפיינים. לדוגמה, אם הערך based_on_time של מדד ה-PoP מוגדר עם טווח זמן מקבוצת המאפיינים orders.created, ומדד ה-PoP מוגדר עם period: month, שאילתת הניתוח ב-Explore צריכה לכלול טווח זמן מקבוצת המאפיינים orders.created ששווה לחודש או קטן ממנו, כמו orders.created_date. מסגרת הזמן בשאילתת הניתוח צריכה להיות זהה או קצרה יותר, כי למשל אי אפשר להשוות בין חודש לחודש במסגרת זמן של שנה.
    • אם מדד ה-PoP מוגדר עם based_on_time שהוא מאפיין מבוסס-זמן, שאילתת הניתוח צריכה לכלול את אותו מאפיין מבוסס-זמן בדיוק, או על ידי הכללת המאפיין בכלי לבחירת שדות בניתוח, או על ידי הגדרת מסנן למאפיין. המסגרת הזמנית של המאפיין שמבוסס על זמן צריכה להיות שווה למסגרת הזמנית שצוינה בפרמטר period של מדד ה-PoP או קטנה ממנה. לדוגמה, אם מדד ה-PoP מוגדר עם based_on_time: created_date ומדד ה-PoP מוגדר עם period: month, שאילתת ה-Explore צריכה לכלול את המאפיין created_date.

אם מדד השינוי באחוזים מוגדר עם based_on_time שהוא מסגרת זמן של קבוצת מאפיינים, חשוב לשים לב לדרישות הבאות לגבי מסגרת הזמן בשאילתת הניתוח:

  • מסגרת הזמן בשאילתת הניתוח חייבת להיות שווה למסגרת הזמן שצוינה בפרמטר period של מדד ה-PoP או קטנה ממנה. לדוגמה, אם המדד של השינוי באחוזים מוגדר עם based_on_time, והמדד של השינוי באחוזים מוגדר עם period: month, שאילתת הניתוח חייבת לכלול טווח זמן מקבוצת המאפיינים orders.created ששווה לחודש או קטן ממנו, כמו orders.created_date.orders.created מסגרת הזמן בשאילתת הניתוח צריכה להיות קצרה יותר, כי למשל אי אפשר להשוות בין חודש לחודש במסגרת זמן של שנה.
  • מסגרת הזמן בשאילתת הניתוח חייבת לכלול בעצמה מידע על חותמת זמן. לדוגמה, מסגרות הזמן year, month ו-date של קבוצת מאפיינים מספקות מידע על חותמות זמן בפועל. לעומת זאת, מסגרת הזמן day_of_week מופשטת מחותמת הזמן הבסיסית כדי לספק ערך כמו Wednesday. באופן דומה, מסגרות זמן כמו month_name, month_num ו-day_of_month לא מספקות מידע על חותמת זמן, ולכן אי אפשר להשתמש בהן במדדי PoP כדי לחשב ערכים לתקופה הקודמת. עם זאת, אם כוללים בשאילתת הניתוח ב-Explore חותמת זמן כמו date, היא תספק למדד של נקודת הנוכחות מידע על חותמת הזמן, שבעזרתו אפשר לחשב את הערכים של התקופה הקודמת. בנוסף, אפשר לכלול את day_of_week מסגרת הזמן בשאילתת הניתוח, כי מדד ה-PoP יכול להשתמש בנתוני date מסגרת הזמן לחישובים.

כל עוד אתם עומדים בדרישות האלה בשאילתת הניתוח, אתם יכולים להוסיף לשאילתת הניתוח שדות אחרים ומאפייני מסגרת זמן, אבל כל מסגרות הזמן בשאילתת הניתוח צריכות להיות שוות למסגרת הזמן של מדד ה-PoP או קטנות ממנהperiod. כשמריצים שאילתת ניתוח עם מדד של שינוי באחוזים, Looker מחיל באופן אוטומטי את רמת הפירוט המינימלית של מסגרת הזמן מהשאילתה על מסגרת הזמן שמשמשת את מדד השינוי באחוזים. בדוגמה של Explore שמוצגת בתחילת הדף הזה, כל המדדים של PoP הוגדרו ב-LookML באמצעות period: year. כלומר, לא משנה איזה טווח זמן נבחר בשאילתת הניתוח – במקרה הזה, טווח זמן חודשי – מדד ה-PoP יחזיר את התוצאות לאותו טווח זמן בשנה הקודמת.

אם ברצונך לראות אילו מסגרות זמן נתמכות על ידי מדד ה-PoP שלך ב-Explore, תוכל לבדוק מסגרות זמן שונות מבלי להריץ שאילתות. לחצו על הכרטיסייה SQL במקטע נתונים של ה-Explore, ולאחר מכן הוסיפו שדות ומסננים מבוחר השדות של ה-Explore. אם מדד ה-PoP אינו יכול לחשב את השאילתה שלך עם השדות והמסננים שבחרת, הכרטיסייה SQL תציג הודעה שלא ניתן ליצור את ה-SQL.

אם תריץ שאילתה שבה לא ניתן ליצור את ה-SQL, חלון החיפוש יחזיר שגיאה עם הפרטים וקישור לקובץ LookML הרלוונטי.

שימוש במדדי PoP עם לוחות שנה מותאמים אישית

כדי ליצור מדד PoP המשתמש בלוח שנה מותאם אישית, עליך לבצע את הפעולות הבאות:

  • ב-הצג את הקובץ שבו אתה מדגם את לוח השנה המותאם אישית שלך, לכלול באופן אופציונלי אprevious_ordinal_mapping בלוק הפרמטרים שלךcalendar_definition בלוק פרמטרים. הפרמטר previous_ordinal_mapping הוא אופציונלי החל מ-Looker 26.8. ב-Looker 26.8 ואילך, Looker מניח עבור לוחות שנה מותאמים אישית שהשבוע הקודם עבור שבוע 1 הוא שבוע 52, והיום הקודם עבור יום 1 הוא יום 364. אם זה לא המקרה עבור לוח השנה המותאם אישית שלך, עליך להשתמש בבלוק הפרמטרים previous_ordinal_mapping.
  • בהגדרת LookML של מדד PoP, ב-based_on_time פרמטר, ציין את מסגרת הזמן של השנהקבוצת המימדים שלtype: custom_calendar
  • בהגדרת LookML של מדד ה-PoP, השתמש ב-custom_calendar_period פרמטר במקום ה-period פָּרָמֶטֶר.

לדוגמה, הנה ה-LookML עבור קבוצת ממדים של לוח שנה מותאם אישית ומדד PoP המשתמש בלוח שנה מותאם אישית:

dimension_group: cust_created {
    type: custom_calendar
    sql: {TABLE}.created_at;;
    based_on_calendar: cust_retail_calendar
    custom_timeframes: [custom_year, custom_quarter]

  }

measure: count_last_custom_year {
    type: period_over_period
    based_on: count
    based_on_time: cust_created_custom_year
    custom_calendar_period: custom_year
    kind: previous
  }

דוגמאות

הסעיפים הבאים מציגים מספר דוגמאות למדדי PoP שונים ולשאילתות Explore:

השוואת ספירות למדדי PoP משנה לשנה וחודש אחר חודש

הנה ה-LookML עבור מדד total_births לדוגמה, קבוצת ממדים birth של type:time, ושני מדדי PoP המבוססים על המדד total_births ומשתמשים בקבוצת הממדים birth כשדה based_on_time שלהם:


  dimension_group: birth {
    type: time
    timeframes: [raw, time, date, week, month, quarter, year]
    sql: ${TABLE}.birth_date ;;
  }

  measure: total_births {
    type: sum
    sql: ${TABLE}.total_births ;;
  }

  measure: total_births_last_year {
    type: period_over_period
    kind: previous
    based_on: total_births
    based_on_time: birth_year
    period: year
    value_to_date: no
    value_format_name: decimal_0
  }

  measure: total_births_last_month {
    type: period_over_period
    kind: previous
    based_on: total_births
    based_on_time: birth_year
    period: month
    value_to_date: no
    value_format_name: decimal_0
  }

שימו לב לדברים הבאים בנוגע לשדות אלה:

  • שני מדדי ה-PoP מוגדרים באמצעות kind: previous, כך ששניהם מספקים את ערך המדידה מהתקופה הקודמת.
  • שני מדדי ה-PoP מוגדרים באמצעות value_to_date: no, כך ששניהם מחשבים את ערך המדידה עבור כל מסגרת הזמן (כלומר, פירוט מסגרת הזמן המינימלית מהשאילתה).
  • שני מדדי ה-PoP מוגדרים באמצעות based_on_time: birth_year, כך ששניהם משתמשים בחותמת הזמן הבסיסית של קבוצת הממדים birth.
  • מדד ה-PoP של total_births_last_year מוגדר באמצעות period: year, ומדד ה-PoP של total_births_last_month מוגדר באמצעות period: month.

הנה שאילתת Explore הכוללת את שלושת המדידות ואת מסגרת הזמן של הממד birth_month:

הכלי Looker Explore מציג עמודות של חודש הלידה, מספר הלידות הכולל, מספר הלידות הכולל בחודש שעבר ומספר הלידות הכולל בשנה שעברה. הערך של Total Births Last Month (מספר הלידות הכולל בחודש שעבר) ל-2024-07 הוא 290,699, שזהה לערך של Total Births (מספר הלידות הכולל) ל-2024-06. הערך של 'מספר הלידות הכולל בשנה שעברה' לחודש יולי 2024 הוא 310,347, שזהה לערך של 'מספר הלידות הכולל' לחודש יולי 2023.

חשוב לדעת את הפרטים הבאים על תוצאות הניתוח:

  • המסגרת הזמנית הקטנה ביותר של המאפיין בשאילתת Explore היא birth_month, ולכן מדד ה-PoP מספק ערכים חודשיים.
  • בשורה של החודש האחרון, 2024-07, הערך של Total Births Last Month (מספר הלידות הכולל בחודש האחרון) מציג את מספר הלידות הכולל בחודש הקודם, 2024-06. כדי לבדוק את זה, אפשר להסתכל על הערך של Total Births בשורה 2024-06. שני הערכים זהים.
  • בשורה של החודש האחרון, 2024-07, הערך Total Births Last Year (מספר הלידות הכולל בשנה שעברה) מציג את מספר הלידות הכולל באותו חודש (07) בשנה הקודמת (2023). כדי לבדוק זאת, אפשר לעיין בערך Total Births בשורה 2023-07. שני הערכים זהים.

איך value_to_date משפיע על ערכי המדד של שיעור הרווח

בדומה לדוגמה הקודמת, הנה קוד LookML למדד total_births ולקבוצת המאפיינים birth של type:time ושני מדדי PoP שמבוססים על המדד total_births ומשתמשים בקבוצת המאפיינים birth כשדה based_on_time שלהם. עם זאת, בדוגמה הזו, מדד ה-PoP‏ total_births_last_year_value_to_date מוגדר באמצעות value_to_date: yes ומדד ה-PoP‏ total_births_last_year מוגדר באמצעות value_to_date: no:

  dimension_group: birth {
    type: time
    timeframes: [raw, time, date, week, month, quarter, year]
    sql: ${TABLE}.birth_date ;;
  }

  measure: total_births {
    type: sum
    sql: ${TABLE}.total_births ;;
  }

  measure: total_births_last_year {
    type: period_over_period
    kind: previous
    based_on: total_births
    based_on_time: birth_year
    period: year
    value_to_date: no
    value_format_name: decimal_0
  }

  measure: total_births_last_year_value_to_date {
    type: period_over_period
    kind: previous
    based_on: total_births
    based_on_time: birth_year
    value_to_date: yes
    period: year
    value_format_name: decimal_0
  }

זוהי שאילתת ניתוח שכוללת את שלושת המדדים ואת המאפיין birth_year לוח זמנים. שאילתת החיפוש הזו ב-Explore הופעלה ב-4 ביוני בשעה 16:25:08, וזה חשוב למדד value_to_date: yes PoP.

הכלי Looker Explore מציג עמודות של שנת לידה, סך לידות, סך לידות בשנה שעברה וסך לידות בשנה שעברה עד היום. הערך של 'סך הלידות בשנה שעברה' לשנת 2024 הוא 3,581,036, שזהה לערך של 'סך הלידות' לשנת 2023. הערך של 'לידות בשנה שעברה עד היום' לשנת 2024 הוא 1,743,505.

בתוצאות של התכונה 'ניתוח מעמיק' אפשר לראות איך פרמטר המשנה value_to_date משנה את החישוב של מדדי ה-PoP:

חשוב לדעת את הפרטים הבאים על תוצאות הניתוח:

  • בשורה של השנה האחרונה, 2024, הערך סה"כ לידות בשנה שעברה מציג את סך הלידות בשנה הקודמת, 2023. ניתן לאמת את החישוב על ידי התבוננות בערך סה"כ לידות עבור השורה 2023. שני הערכים זהים.
  • בשורה של השנה האחרונה, 2024, הערך של סה"כ לידות בשנה שעברה עד היום נמוך מערך של סה"כ לידות בשנה שעברה. הסיבה לכך היא ששאילתת ה-Explore בוצעה ב-4 ביוני בשעה 16:25:08, ומכיוון שמדד ה-PoP של total_births_last_year_value_to_date מוגדר עם value_to_date: yes, Looker חישב את הערכים השנתיים באמצעות הנתונים עד ל-4 ביוני בשעה 16:25:08 עבור כל שנה בלבד.

סינון שאילתות Explore הכוללות מדדי PoP

שימו לב לפרטים הבאים לסינון שאילתות Explore הכוללות מדדי PoP:

  • סינון נתמך עבור שאילתות Explore הכוללות מדדי PoP. עם זאת, לא ניתן לסנן לפי מדד PoP עצמו. לדוגמה, בדוגמה הראשונה Explore שאילתות על הממד birth_month ועל מדדי PoP של total_births, total_births_last_year ו-total_births_last_month, לא ניתן היה לסנן את השאילתה על מדדי PoP של total_births, total_births_last_year או total_births_last_month.
  • כאשר מסננים לפי שדה המשויך לפרמטר based_on_time של מדד PoP, אם מסגרת הזמן של המסנן קצרה יותר ממסגרת הזמן של השאילתה, מדד ה-PoP יציג רק את התוצאות עבור חלק ערך המסנן של מסגרת הזמן של השאילתה. לדוגמה, אם תעשה שאילתה על הממד orders.created_year ותסנן את השאילתה עבור חודש ינואר, עבור כל שנה מדד ה-PoP יציג את הערכים של ינואר בלבד. ניתן לטעות ולחשוב שמדובר בתוצאות לשנה כולה.
  • עבור שאילתות PoP measure Explore, כדי לחשב נתונים עבור מדד PoP, Looker מאחזר נתונים עבור פרק זמן נוסף ברמת הפירוט המינימלית של תקופת הזמן של השאילתה. לדוגמה, אם תיצרו שאילתת Explore עם ממד חודשי, מדד PoP המוגדר באמצעות period: year ומסנן עבור 6 החודשים האחרונים, Looker יזהה את רמת הפירוט הנמוכה ביותר בשאילתה, שבדוגמה זו תהיה תקופת הזמן year של מדד PoP. בדוגמה זו, Looker יאחזר את נתוני 6 החודשים האחרונים בתוספת נתונים של שנה נוספת, כך שיוכל להשוות כל אחד מששת החודשים האחרונים לאותו חודש בשנה הקודמת.
  • כפי שמתואר בדרישות לשאילתות Explore עם מדדי PoP, שאילתות Explore הכוללות מדדי PoP חייבות להיות בעלות ממד זמן המתאים ל-period המשויך למדידת PoP. אם לא תבחרו ממד זמן מבוחר השדות של ה-Explore, Looker יוכל להפיק את המידע הנדרש מממדי הזמן במסננים של ה-Explore. במקרה זה, Looker ימיין את תוצאות שאילתת ה-Explore לפי ממד הזמן של המסנן.

ויזואליזציות עם מדדי PoP

מומלץ להשתמש בתרשים טבלה ויזואליזציה עבור מדדי PoP. אפשרויות ויזואליזציה אחרות עשויות לעבוד גם כן, בהתאם לשדות בשאילתת החיפוש שלך.

אם אתם משתמשים בהדמיה אחרת ולא בתרשים טבלה, ודאו שההדמיה ברורה. מכיוון שמדדי השינוי באחוזים מספקים השוואות לתקופה קודמת, יכול להיות שההדמיות עם מדדי השינוי באחוזים מטעות. לדוגמה, מדד של שינוי באחוזים בהשוואה לתקופה המקבילה אשתקד שמוגדר כ-kind: previous יציג את הערך של השנה שעברה לתאריך של השנה הנוכחית. אם השאילתה ב-Explore כוללת את הערך של השנה הנוכחית יחד עם מדד השינוי בהשוואה לתקופה המקבילה בשנה הקודמת, יהיו שני ערכים לשנה הנוכחית בתרשים.

אם אתם משתמשים באמצעי המחשה שאינו תרשים טבלה, ודאו שבאמצעי ההמחשה מצוין בבירור שכל המדדים של נקודת ההשוואה הם השוואה לתקופה קודמת.

מגבלות על מדדי PoP

חשוב לשים לב למגבלות הבאות של מדדי PoP:

  • אפשר להשתמש במדדי שינוי באחוזים רק בפרויקטים של LookML שמשתמשים בזמן הריצה החדש של LookML. אם התכונה מדור קודם Use Legacy LookML Runtime מופעלת במופע שלכם, קובץ המניפסט של הפרויקט חייב לכלול הצהרה של new_lookml_runtime:yes.
  • אין תמיכה במדדי PoP במחבר Looker ב-Data Studio.
  • המדדים של נקודות הנוכחות צריכים להתבסס על מדד מצטבר, כפי שמתואר בקטע based_on. אי אפשר לבסס מדד של שינוי באחוזים על מדד שאינו מדד מצטבר.
  • בחיבורים ל-BigQuery במופעים שבהם מופעלת תכונת ה-Labs‏ BI Engine Symmetric Aggregates, יש תמיכה במדדי PoP, אבל שאילתות SQL עם מדדי PoP לא ישתמשו בתכונה הזו.
  • מדדי PoP לא תומכים בניתוח קבוצות משתמשים.
  • מדדי PoP לא תומכים בחישובים מצטברים.
  • המדדים של תקופה לתקופה תמיד משווים בין התקופה הנוכחית לתקופה הקודמת. אי אפשר להגדיר מדד של שינוי באחוזים (PoP) כדי להשוות את התקופה הנוכחית לתקופה אחרת מלבד התקופה הקודמת. לדוגמה, אי אפשר ליצור מדד של השוואה לתקופה מקבילה כדי להשוות בין מאי של שנה שעברה לדצמבר של השנה הנוכחית.
  • אין תמיכה במדדי השוואה לתקופה הקודמת עם מרווחי זמן שרירותיים, כמו השבועיים הנוכחיים בהשוואה לשבועיים הקודמים.
  • אין תמיכה בפרמטרים של Liquid בפרמטרים של מדד PoP. עם זאת, אם השדות based_on או based_on_time של נקודת מדידה של PoP מצביעים על מאפיין שמוגדר באמצעות Liquid, ה-Liquid הזה יעבור עיבוד.
  • למדדים של תקופות השוואה שמשתמשים בלוחות שנה בהתאמה אישית:

    • (לפני Looker 26.8) הפרמטר based_on_time חייב להפנות לטווח הזמן custom_year של קבוצת מאפיינים type: custom_calendar.
    • (לפני Looker 26.8) במדדי PoP שמוגדרים באמצעות custom_calendar_period: custom_year, אם שאילתת המשתמש מכילה custom_week או custom_date, ‏ Looker יספק את הערך של השבוע הקודם או של התאריך בשנה הקודמת.
  • אין תמיכה במדדי PoP בתכונות הבאות של Looker:

  • אי אפשר להשתמש במדדי PoP כדי ליצור שדה מותאם אישית.

  • להשוואות שמבוססות על שבוע, מומלץ ליצור מדד PoP שמשתמש ביומן בהתאמה אישית.

  • אי אפשר להשתמש במידות של שינוי באחוזים בתקופות שהוגדרו עם מסגרות זמן פיסקאליות בשאילתות ב'ניתוח נתונים' עם מסגרות זמן לא פיסקאליות. בנוסף, אי אפשר להשתמש בשאילתות במדדים של שינוי באחוזים עם תקופות שמוגדרות עם מסגרות זמן לא פיסקאליות, לצד מאפיינים של מסגרות זמן פיסקאליות.

  • מדדי PoP תומכים בהזחה של חודש פיסקאלי, כלומר הפרמטר based_on_time של מדד PoP יקבל בירושה את הערך fiscal_month_offset מקובץ מודל LookML שמשויך לניתוח הנתונים. אם מגדירים מדד של שינוי באחוזים עם fiscal_year או fiscal_quarter, המדד הזה ייתמך בשאילתה בכלי הניתוחים רק אם השאילתה מציינת מסגרת זמן של fiscal_year או fiscal_quarter. במקרה כזה, שובר הפרסום fiscal_offset_month יכובד.

  • הערך של period במדד של PoP חייב להיות שווה למסגרת הזמן שנבחרה בשאילתת הניתוח או גדול ממנה. לדוגמה, אם מדד ה-PoP מוגדר עם period: month, שאילתת הניתוח חייבת לכלול מאפיין של מסגרת זמן של חודש או פחות, כמו שבוע או יום.

  • כשמשתמשים במדדים של השוואה לתקופה הקודמת, צריך תמיד לכלול בניתוח ב-Explore את מאפיין טווח הזמן התואם לצד מאפיין date_time. לדוגמה, אם מגדירים מדד של השוואה לתקופה המקבילה בשנה שעברה כדי לחשב ערכים לחודש התואם ברבעון הקודם, צריך לכלול בניתוח את מאפיין הרבעון התואם (כמו [dimension_name]_quarter) לצד מאפיין החודש. בלי המאפיין של טווח הזמן התואם, פקודת ה-SQL שנוצרת מחילה פונקציית חיתוך (כמו TIMESTAMP_TRUNC(..., QUARTER)) על התאריך לפני החישוב של התקופה הקודמת, ולכן השאילתה מחושבת על סמך תחילת הרבעון.

    לדוגמה, בהשוואה לחודש פברואר, פקודת ה-SQL שנוצרה תאחזר את הערך של החודש הראשון ברבעון הקודם (אוקטובר) במקום את הערך של החודש התואם (נובמבר). הכללת מאפיין מסגרת הזמן התואם ב-Explore מבטיחה יצירה וקיבוץ נכונים של SQL.

ניבים נתמכים של מסדי נתונים למדדי PoP

בטבלה הבאה מפורטים הניבים שתומכים במדדי PoP בגרסה האחרונה של Looker:

דיאלקט נתמך?
Actian Avalanche
Amazon Athena
Amazon Aurora MySQL
Amazon Redshift
Amazon Redshift 2.1+
Amazon Redshift Serverless 2.1+
Apache Druid
Apache Druid 0.13.x - 0.17.x
Apache Druid 0.18+
Apache Hive 2.3+
Apache Hive 3.1.2+
Apache Spark 3+
ClickHouse
Cloudera Impala 3.1+
Cloudera Impala 3.1+ with Native Driver
Cloudera Impala with Native Driver
DataVirtuality
Databricks
Denodo 7
Denodo 8 & 9
Dremio
Dremio 11+
Exasol
Google BigQuery Legacy SQL
Google BigQuery Standard SQL
Google Cloud AlloyDB for PostgreSQL
Google Cloud PostgreSQL
Google Cloud SQL
Google Spanner
Greenplum
HyperSQL
IBM Netezza
MariaDB
Microsoft Azure PostgreSQL
Microsoft Azure SQL Database
Microsoft Azure Synapse Analytics
Microsoft SQL Server 2008+
Microsoft SQL Server 2012+
Microsoft SQL Server 2016
Microsoft SQL Server 2017+
MongoBI
MongoSQL
MySQL
MySQL 8.0.12+
Oracle
Oracle ADWC
PostgreSQL 9.5+
PostgreSQL pre-9.5
PrestoDB
PrestoSQL
SAP HANA
SAP HANA 2+
SingleStore
SingleStore 7+
Snowflake
Teradata
Trino
Vector
Vertica