משפכים מרובי-ערוצים Reporting API – מדריך עזרה

במסמך הזה מפורטת ההתייחסות המלאה לשאילתות ולתגובות של ממשק ה-API לדיווח של משפכים מרובי-ערוצים.

מבוא

ממשק ה-API של דיווח של משפכים מרובי-ערוצים מאפשר לך לבקש נתוני דוח של משפכים מרובי-ערוצים ב-Google Analytics. כל דוח מורכב מנתונים סטטיסטיים שנגזרים מהנתונים שקוד המעקב שולח חזרה ל-Analytics. הנתונים מאורגנים כמאפיינים וכמדדים. בחירת שילובים של מאפיינים ומדדים משלך תאפשר לך להשתמש ב-Reporting API כדי ליצור דוחות בהתאמה אישית לפי המפרט שלך.

ה-API מכיל שיטה אחת שמבקשת נתוני דיווח: report.get. בשיטה זו, מספקים את מזהה הטבלה שתואם לתצוגה המפורטת (הפרופיל) שעבורה רוצים לאחזר נתונים. בנוסף, חשוב לציין את הפרטים הבאים:

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

ה-API הופך את שיטת report.get לזמינה בנקודת קצה מסוג REST: https://www.googleapis.com/analytics/v3/data/mcf. בקטע הבא מוצגת בקשה לדוגמה ומתאר כל אחד מהפרמטרים.

בקשה

ה-API מספק שיטה אחת לבקשת נתונים:

analytics.data.mcf.get()

אפשר גם לשלוח שאילתות ל-API כנקודת קצה ל-REST:

Authorization: Bearer {oauth2-token}

GET https://www.googleapis.com/analytics/v3/data/mcf
  ?ids=ga:12345
  &metrics=mcf:totalConversions,mcf:totalConversionValue
  &start-date=2011-10-01
  &end-date=2011-10-31

כל פרמטר של שאילתה בכתובת URL מציין פרמטר של שאילתת API שחייב להיות מקודד בכתובת ה-URL.

כל הבקשות ל-Multi-Channel Reporting API צריכות לקבל אישור, ועדיף להשתמש ב-OAuth 2.0.

סיכום פרמטרים של שאילתה

בטבלה הבאה מוצג סיכום של כל הפרמטרים של השאילתה שנתמכים ב-Multi-Channel Reporting API. לוחצים על השם של כל פרמטר כדי לקבל תיאור מפורט.

שם תמורה לכסף חובה סיכום
ids string כן מזהה הטבלה הייחודי של הטופס ga:XXXX, כאשר XXXX הוא מזהה התצוגה המפורטת (הפרופיל) ב-Analytics שלגביו השאילתה תאחזר את הנתונים.
start-date string כן תאריך ההתחלה של אחזור נתוני Analytics. בקשות יכולות לציין תאריך התחלה בפורמט YYYY-MM-DD, או כתאריך יחסי (למשל, today, yesterday או NdaysAgo כאשר N הוא מספר שלם חיובי).
end-date string כן תאריך הסיום לאחזור נתוני Analytics. הבקשה יכולה לציין תאריך סיום בפורמט YYYY-MM-DD או כתאריך יחסי (למשל, today, yesterday או NdaysAgo כאשר N הוא מספר שלם חיובי).
metrics string כן רשימה של מדדים שמופרדים בפסיקים, כמו mcf:totalConversions,mcf:totalConversionValue. שאילתה חוקית חייבת לציין לפחות מדד אחד.
dimensions string no רשימה של מאפיינים מופרדים בפסיקים בדוח 'משפכים מרובי-ערוצים', כמו mcf:source,mcf:keyword.
sort string no רשימה של מאפיינים ומדדים שמופרדים בפסיקים, שמציינים את סדר המיון וכיוון המיון של הנתונים שהוחזרו.
filters string no מסננים של מאפיינים או מדדים שמגבילים את הנתונים המוחזרים עבור הבקשה שלך.
samplingLevel string no רמת הדגימה הרצויה. ערכים מותרים:
  • DEFAULT – מחזירה תגובה בגודל דגימה ששומר על איזון בין המהירות לדיוק.
  • FASTER – מחזירה תגובה מהירה עם דגימה קטנה יותר.
  • HIGHER_PRECISION – מחזירה תגובה מדויקת יותר באמצעות דגימה גדולה, אבל התוצאה עלולה להיות תגובה איטית יותר.
start-index integer no השורה הראשונה של הנתונים שצריך לאחזר, החל מ-1. משתמשים בפרמטר הזה כמנגנון עימוד יחד עם הפרמטר max-results.
max-results integer no מספר השורות המקסימלי שיש לכלול בתשובה.

פרטי פרמטר השאילתה

ids

ids=ga:12345
חובה.
המזהה הייחודי המשמש לאחזור הנתונים של משפכים מרובי-ערוצים. המזהה הזה הוא השרשור של מרחב השמות ga: עם מזהה התצוגה המפורטת (הפרופיל) של הדוח. אפשר לאחזר את מזהה התצוגה המפורטת (פרופיל) של הדוח באמצעות השיטה analytics.management.profiles.list, שמספקת את הערך id במשאב 'תצוגה מפורטת (פרופיל) ב- Google Analytics Management API'.

חזרה למעלה


תאריך התחלה

start-date=2011-10-01
חובה.
כל הבקשות לנתונים של משפכים מרובי-ערוצים חייבות לציין טווח תאריכים. אם לא כוללים בבקשה את הפרמטרים start-date ו-end-date, השרת יחזיר שגיאה. ערכי תאריכים יכולים להיות עבור תאריך ספציפי באמצעות הדפוס YYYY-MM-DD, או ביחס לתאריך מסוים באמצעות התבנית today, yesterday או NdaysAgo. הערכים צריכים להתאים ל-[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo).
המספר המוקדם ביותר של start-date שתקף הוא 2011-01-01. אין מגבלה עליונה ל-start-date.
תאריכים יחסיים הם תמיד יחסיים לתאריך הנוכחי בזמן השאילתה, והם מבוססים על אזור הזמן של התצוגה המפורטת (הפרופיל) שצוין בשאילתה.

טווח תאריכים לדוגמה ל-7 הימים האחרונים (החל מאתמול) באמצעות תאריכים יחסיים:

  &start-date=7daysAgo
  &end-date=yesterday

חזרה למעלה


תאריך סיום

end-date=2011-10-31
חובה.
כל הבקשות לנתונים של משפכים מרובי-ערוצים חייבות לציין טווח תאריכים. אם לא כוללים בבקשה את הפרמטרים start-date ו-end-date, השרת יחזיר שגיאה. ערכי תאריכים יכולים להיות עבור תאריך ספציפי באמצעות הדפוס YYYY-MM-DD, או ביחס לתאריך מסוים באמצעות התבנית today, yesterday או NdaysAgo. הערכים צריכים להתאים ל-[0-9]{4}-[0-9]{2}-[0-9]{2}|today|yesterday|[0-9]+(daysAgo).
המספר המוקדם ביותר של end-date שתקף הוא 2005-01-01. אין הגבלה עליונה על end-date.
תאריכים יחסיים הם תמיד יחסיים לתאריך הנוכחי בזמן השאילתה, והם מבוססים על אזור הזמן של התצוגה המפורטת (הפרופיל) שצוין בשאילתה.

טווח תאריכים לדוגמה ל-10 הימים האחרונים (החל מהיום) לפי תאריכים יחסיים:

  &start-date=9daysAgo
  &end-date=today

חזרה למעלה


מימדים

dimensions=mcf:source,mcf:keyword
זה שינוי אופציונלי.

פרמטר המאפיינים מגדיר את מפתחות הנתונים הראשיים בדוח 'משפכים מרובי-ערוצים', כמו mcf:source או mcf:medium. אפשר להשתמש במאפיינים כדי לפלח את מדדי ההמרות. לדוגמה, אפשר לבקש את המספר הכולל של ההמרות לאתר, אבל יכול להיות יותר מעניין לבקש את מספר ההמרות עם פילוח לפי אמצעי הגעה לאתר. במקרה הזה, תראו את מספר ההמרות שמקורן בחיפוש אורגני, מהפניה, מאימייל וכן הלאה.

כשמשתמשים ב-dimensions בבקשת נתונים, חשוב לשים לב למגבלות הבאות:

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

ערכים לא זמינים

כאשר לא ניתן לקבוע את ערך המאפיין, מערכת Analytics משתמשת במחרוזת המיוחדת (not set).

חזרה למעלה


metrics

metrics=mcf:totalConversions,mcf:totalConversionValue
חובה.

הנתונים הסטטיסטיים המצטברים על פעילות המשתמשים באתר שלך, כמו מספר ההמרות הכולל או ערך ההמרות הכולל. אם שאילתה לא מכילה פרמטר dimensions, המדדים שמוחזרים מספקים ערכים נצברים לטווח התאריכים המבוקש, כמו הערך הכולל של ההמרות. עם זאת, כשנשלחת בקשה למאפיינים, הערכים מפולחים לפי ערך המאפיין. לדוגמה, הפקודה mcf:totalConversions שהתבקשה עם mcf:source מחזירה את מספר ההמרות הכולל לכל מקור.

כשמבקשים מדדים, חשוב לזכור:

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

חזרה למעלה


מיון

sort=mcf:source,mcf:medium
זה שינוי אופציונלי.

רשימת מדדים ומימדים שמציינים את סדר המיון ואת כיוון המיון של הנתונים שהוחזרו.

  • המיון סידור מצוין לפי הסדר משמאל לימין של המדדים והמאפיינים המפורטים.
  • כברירת מחדל, direction מיון הוא סדר עולה, וניתן לשנות אותו בסדר יורד באמצעות סימן חיסור (-) בקידומת בשדה המבוקש.

מיון התוצאות של שאילתה מאפשר לך לשאול שאלות שונות על הנתונים. לדוגמה, כדי לענות על השאלה "מהם המקורות המובילים של ההמרות שלי, ומאילו אמצעי הגעה לאתר?" אפשר ליצור שאילתה עם הפרמטר הבא. המיון הראשון הוא לפי mcf:source ולאחר מכן לפי mcf:medium, שניהם בסדר עולה:

sort=mcf:source,mcf:medium

כדי לענות על השאלה הקשורה "מהם אמצעי ההגעה לאתר המובילים שלי להמרות, ומאילו מקורות?", אפשר ליצור שאילתה עם הפרמטר הבא. הוא ממוין תחילה לפי mcf:medium ולאחר מכן לפי mcf:source, שניהם בסדר עולה:

sort=mcf:medium,mcf:source

כשמשתמשים בפרמטר sort, חשוב לזכור:

  • מיון רק לפי מאפיינים או ערכי מדדים שבהם השתמשת בפרמטרים dimensions או metrics. אם הבקשה ממוינת בשדה שלא צוין בפרמטר של מאפיינים או בפרמטר של המדדים, תופיע שגיאה.
  • כברירת מחדל, המחרוזות ממוינות בסדר אלפביתי עולה בלוקאל en-US.
  • כברירת מחדל, המספרים ממוינים בסדר מספרי עולה.
  • התאריכים ממוינים בסדר עולה לפי תאריך כברירת מחדל.

חזרה למעלה


מסננים

filters=mcf:medium%3D%3Dreferral
זה שינוי אופציונלי.

הפרמטר של מחרוזת השאילתה filters מגביל את הנתונים שמוחזרים מהבקשה. כדי להשתמש בפרמטר filters, מציינים מאפיין או מדד שלפיו רוצים לסנן, ואחריהם ביטוי המסנן. לדוגמה, השאילתה הבאה מבקשת את mcf:totalConversions ואת mcf:source עבור התצוגה המפורטת (פרופיל) 12134, כאשר המאפיין mcf:medium הוא המחרוזת referral:

https://www.googleapis.com/analytics/v3/data/mcf
?ids=mcf:12134
&dimensions=mcf:source
&metrics=mcf:totalConversions
&filters=mcf:medium%3D%3Dreferral
&start-date=2011-10-01
&end-date=2011-10-31

לפרטים נוספים, אפשר לקרוא את חומר העזר בנושא ליבה לדיווח על API.

חזרה למעלה


samplingLevel

samplingLevel=DEFAULT
זה שינוי אופציונלי.
צריך להשתמש בפרמטר הזה כדי להגדיר את רמת הדגימה (כלומר, מספר הסשנים שמשמשים לחישוב התוצאה) של שאילתת דיווח. הערכים המותרים תואמים לממשק האינטרנט, וכוללים:
  • DEFAULT – מחזירה תגובה בגודל דגימה ששומר על איזון בין המהירות לדיוק.
  • FASTER – מחזירה תגובה מהירה עם דגימה קטנה יותר.
  • HIGHER_PRECISION – מחזירה תגובה מדויקת יותר באמצעות דגימה גדולה, אבל התוצאה עלולה להיות תגובה איטית יותר.
אם לא מציינים את הפרמטר הזה, המערכת תשתמש ברמת הדגימה DEFAULT.
בקטע דגימה מוסבר איך לחשב את אחוז הסשנים שבהם נעשה שימוש בשאילתה.

חזרה למעלה


max-results

max-results=100
זה שינוי אופציונלי.

המספר המקסימלי של שורות שאפשר לכלול בתשובה הזו. אפשר להשתמש באפשרות הזו בשילוב עם start-index כדי לאחזר קבוצת משנה של רכיבים, או להשתמש בה לבדו כדי להגביל את מספר הרכיבים שמוחזרים, החל מהראשון. אם לא מזינים max-results, השאילתה תחזיר את ערך ברירת המחדל המקסימלי של 1,000 שורות.

ה-Multi-Channel Reporting API מחזיר עד 10,000 שורות לכל בקשה, לא משנה כמה מבקשים. הוא גם יכול להחזיר פחות שורות ממה שביקשת, אם אין מספיק פלחי מאפיינים כצפוי. לדוגמה, יש פחות מ-300 ערכים אפשריים למאפיין mcf:medium, לכן כשמפלחים רק לפי אמצעי הגעה לאתר, לא ניתן לקבל יותר מ-300 שורות, גם אם מגדירים את max-results לערך גבוה יותר.

חזרה למעלה


תשובה

אם הפעולה בוצעה בהצלחה, הבקשה תחזיר גוף תגובה עם מבנה ה-JSON שמוגדר למטה.

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

פורמט התשובה

JSON
{
  "kind": "analytics#mcfData",
  "id": string,
  "query": {
    "start-date": string,
    "end-date": string,
    "ids": string,
    "dimensions": [
      string
    ],
    "metrics": [
      string
    ],
    "sort": [
      string
    ],
    "filters": string,
    "samplingLevel": string,
    "start-index": integer,
    "max-results": integer
  },
  "itemsPerPage": integer,
  "totalResults": integer,
  "selfLink": string,
  "previousLink": string,
  "nextLink": string,
  "profileInfo": {
    "profileId": string,
    "accountId": string,
    "webPropertyId": string,
    "internalWebPropertyId": string,
    "profileName": string,
    "tableId": string
  },
  "containsSampledData": boolean,
  "sampleSize": string,
  "sampleSpace": string,
  "columnHeaders": [
    {
      "name": string,
      "columnType": string,
      "dataType": string
    }
  ],
  "totalsForAllResults": [
    {
      metricName: string,
      ...
    }
  ]
  "rows": [
    [
      McfData.Rows
    ]
  ],
}

חזרה למעלה

שדות תשובה

המאפיינים של מבנה גוף התגובה מוגדרים כך:

שם הנכס תמורה לכסף תיאור
kind string סוג המשאב. הערך הוא "analytics#mcfData".
id string המזהה של התגובה הזו לנתונים.
query object האובייקט הזה מכיל את כל הערכים שהועברו כפרמטרים לשאילתה. המשמעות של כל שדה מוסברת בתיאור של הפרמטר של השאילתה התואם לו.
query.start-date string תאריך התחלה.
query.end-date string תאריך סיום.
query.ids string מזהה טבלה ייחודי.
query.dimensions[] list רשימה של מאפיינים לניתוח נתונים.
query.metrics[] list רשימה של מדדים לניתוח נתונים.
query.sort[] list רשימת מדדים או מאפיינים שלפיהם הנתונים ממוינים.
query.filters string רשימה מופרדת בפסיקים של מסנני מדדים או מאפיינים.
query.samplingLevel string Requested sampling level.
query.start-index integer אינדקס השורות הראשון. ערך ברירת המחדל הוא 1.
query.max-results integer מקסימום תוצאות לדף.
startIndex integer אינדקס השורות הראשון שצוין על ידי פרמטר השאילתה start-index. ערך ברירת המחדל הוא 1.
itemsPerPage integer מספר השורות המקסימלי שהתגובה יכולה להכיל, ללא קשר למספר השורות שהוחזרו בפועל. אם מציינים את פרמטר השאילתה max-results, הערך של itemsPerPage הוא הקטן מבין max-results או 10,000. ערך ברירת המחדל של itemsPerPage הוא 1,000.
totalResults integer המספר הכולל של השורות בתוצאת השאילתה, ללא קשר למספר השורות שהוחזרו בתגובה. בשאילתות שמניבות מספר גדול של שורות, הערך totalResults יכול להיות גדול מ-itemsPerPage. בקטע חלוקה לדפים יש הסבר נוסף על totalResults ועל itemsPerPage לשאילתות גדולות.
profileInfo object מידע על התצוגה המפורטת (פרופיל) שעבורה נשלחה הבקשה לנתונים. נתוני תצוגה (פרופיל) זמינים דרך ממשק ה-API לניהול Google Analytics.
profileInfo.profileId string מזהה התצוגה המפורטת (פרופיל), כמו 1174.
profileInfo.accountId string מספר החשבון שאליו שייכת התצוגה המפורטת (הפרופיל) הזו, למשל 30481.
profileInfo.webPropertyId string מזהה נכס האינטרנט שאליו שייכת התצוגה המפורטת (הפרופיל) הזו, למשל UA-30481-1.
profileInfo.internalWebPropertyId string מזהה פנימי של נכס האינטרנט שאליו שייכת התצוגה המפורטת (הפרופיל) הזו, למשל UA-30481-1.
profileInfo.profileName string שם התצוגה המפורטת (פרופיל).
profileInfo.tableId string מזהה טבלה לתצוגה (פרופיל), הכולל את 'ga:' ואחריו את מזהה התצוגה המפורטת (פרופיל).
containsSampledData boolean True אם התשובה מכילה נתונים שנדגמו.
sampleSize string מספר הדגימות ששימשו לחישוב הנתונים שנדגמו.
sampleSpace string הגודל הכולל של שטח הדגימה. מציין את הגודל הכולל הזמין של שטח הדגימה, שממנו נבחרו הדוגמאות.
columnHeaders[] list כותרות של עמודות עם רשימה של שמות המאפיינים ושמות המדדים. סדר המאפיינים והמדדים זהה לזה שצוין בבקשה באמצעות הפרמטרים metrics ו-dimensions. מספר הכותרות הוא מספר המאפיינים + מספר המדדים.
columnHeaders[].name string שם המאפיין או המדד.
columnHeaders[].columnType string סוג עמודה. השדה 'מאפיינים' או 'METRIC'.
columnHeaders[].dataType string סוג נתונים. כותרות העמודות של המאפיינים כוללות רק נתונים מסוג "STRING" או "MCF_SEQUENCE". בכותרות העמודות של המדדים יש סוגי נתונים של ערכי מדדים כמו "INTEGER", "DOUBLE", "CURRENCY" וכו'.
totalsForAllResults object הערכים הכוללים של המדדים המבוקשים כצמדי מפתח/ערך של שמות וערכים. הסדר של הסכומים הכוללים של המדדים זהה לסדר המדדים שצוין בבקשה.
rows[] list

שורות של נתוני דוחות, שבהן כל שורה מכילה רשימה של Mcf.Rows אובייקטים. הרשימה הפנימית מייצגת ערכי מאפיינים ולאחר מכן ערכי המדדים באותו סדר כפי שצוין בבקשה. בכל שורה יש רשימה של N שדות, כאשר N = מספר המאפיינים + מספר המדדים.

אובייקט Mcf.Rows מקיף אובייקט אחר, שיכול להיות מסוג primitiveValue או conversionPathValue. ערכי המאפיינים יכולים להיות מכל אחד מהסוגים, וכל ערכי המדדים הם מסוג primitiveValue.

primitiveValue הוא מחרוזת שמוקפת באובייקט. למשל:

{
  "primitiveValue": "2183"
}

conversionPathValue הוא אובייקט שמקיף מערך של אובייקטים, כאשר כל אובייקט מכיל מחרוזת nodeValue ומחרוזת interactionType אופציונלית. למשל:

{
  "conversionPathValue": [
    {
      "interactionType" : "CLICK",
      "nodeValue" : "google"
    },
    {
      "interactionType" : "CLICK",
      "nodeValue" : "google"
    }
  ]
}

חזרה למעלה

קודי שגיאות

ה-Multi-Channel Reporting API מחזיר את קוד הסטטוס 200 של HTTP אם הבקשה מבוצעת בהצלחה. אם מתרחשת שגיאה במהלך עיבוד שאילתה, ה-API מחזיר קוד שגיאה ותיאור. כל אפליקציה שמשתמשת ב-API של Analytics צריכה להטמיע לוגיקה מתאימה לטיפול בשגיאות. למידע נוסף על קודי השגיאה ואופן הטיפול בהם, קראו את מדריך העזר לתשובות שגיאה.

חזרה למעלה

רוצה לנסות?

צריך להשתמש ב-APIs Explorer שבהמשך כדי לקרוא לשיטה הזו בנתונים בזמן אמת ולראות את התגובה.

חזרה למעלה

דגימות

מערכת Google Analytics מחשבת שילובים מסוימים של מאפיינים ומדדים בזמן אמת. כדי להחזיר את הנתונים בזמן סביר, מערכת Google Analytics עשויה לעבד רק דגימה מהנתונים.

כדי לציין את רמת הדגימה לבקשה, מגדירים את הפרמטר samplingLevel.

אם תשובה מ-MCF Reporting API מכילה נתונים שנדגמו, שדה התשובה containsSampledData יהיה true. בנוסף, 2 נכסים יספקו מידע על רמת הדגימה לשאילתה: sampleSize ו-sampleSpace. בעזרת שני הערכים האלה אפשר לחשב את אחוז הסשנים שבהם נעשה שימוש בשאילתה. לדוגמה, אם הערך של sampleSize הוא 201,000 ו-sampleSpace הוא 220,000, הדוח יתבסס על (201,000 / 220,000) * 100 = 91.36% מהסשנים.

בקטע דגימה מפורט תיאור כללי של דגימה ואופן השימוש בה ב-Google Analytics.

חזרה למעלה

טיפול בתוצאות של נפח גדול של נתונים

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

צמצום המאפיינים לכל שאילתה

ה-API מאפשר לציין עד 7 מאפיינים בכל בקשה. פעמים רבות, מערכת Google Analytics חייבת לחשב את התוצאות של השאילתות המורכבות האלה בזמן אמת. התהליך הזה עשוי להימשך זמן רב במיוחד אם מספר השורות שמתקבלות גבוה. לדוגמה, שאילתות של מילות מפתח, לפי עיר לפי שעה, עשויות להתאים למיליוני שורות של נתונים. כדי לשפר את הביצועים, אפשר לצמצם את מספר השורות שמערכת Google Analytics צריכה לעבד. לשם כך, צריך להגביל את מספר המאפיינים בשאילתה.

פיצול השאילתה לפי טווח תאריכים

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

חלוקה לדפים

החלוקה בין התוצאות יכולה להיות דרך שימושית לחלק קבוצות גדולות של תוצאות לחלקים שניתן לנהל. השדה totalResults מציין כמה שורות תואמות קיימות, ו-itemsPerPage מספק את מספר השורות המקסימלי שניתן להחזיר בתוצאה. אם היחס בין totalResults לבין itemsPerPage גבוה, יכול להיות שהשאילתות הנפרדות יימשכו יותר זמן מהנדרש. אם אתם צריכים רק מספר מוגבל של שורות, למשל למטרות תצוגה, תוכלו להגדיר מגבלה מפורשת על גודל התגובה באמצעות הפרמטר max-results. עם זאת, אם האפליקציה צריכה לעבד קבוצה גדולה של תוצאות בשלמותה, ייתכן שבקשה של מספר השורות המקסימלי תהיה יעילה יותר.

שימוש ב-gzip

דרך קלה ונוחה לצמצם את רוחב הפס הדרוש לכל בקשה היא להפעיל דחיסת gzip. למרות שהפעולה הזו דורשת זמן נוסף של המעבד (CPU) כדי לבטל את הדחיסה של התוצאות, היא בדרך כלל משתלמת מאוד בזכות הצמצום בעלויות של הרשת. כדי לקבל תשובה בקידוד gzip, עליך לעשות שני דברים: להגדיר כותרת Accept-Encoding ולשנות את סוכן המשתמש כך שיכלול את המחרוזת gzip. דוגמה לכותרות HTTP בפורמט תקין כדי לאפשר דחיסת gzip:

Accept-Encoding: gzip
User-Agent: my program (gzip)