בית / שקיפות

שקיפות

העמוד הזה מסביר את מספר הצפיות המוצג באתר. נתוני הצפיות מגיעים מ־Cloudflare Analytics Engine.

כל אדם שביקר באתר נספר כצפייה. הנתון הזה נקרא מתוך Workers Analytics Engine.

איך נספרת צפייה

  1. 1 אדם נכנס לאתר כל אדם שמבקר באתר נספר כצפייה.
  2. 2 האתר מדווח ל־Cloudflare הביקור נשלח ל־Cloudflare לצורך רישום.
  3. 3 Cloudflare שומרת את הביקור Workers Analytics Engine שומר אותו כנקודת נתונים אחת.
  4. 4 הסכום חוזר לאתר האתר קורא את הסכום ומציג אותו כמספר הצפיות.
  1. 1

    אדם נכנס לאתר

    כל אדם שמבקר באתר נספר כצפייה.

  2. 2

    האתר מדווח ל־Cloudflare

    הביקור נשלח ל־Cloudflare לצורך רישום.

  3. 3

    Cloudflare שומרת את הביקור

    Workers Analytics Engine שומר אותו כנקודת נתונים אחת.

  4. 4

    הסכום חוזר לאתר

    האתר קורא את הסכום ומציג אותו כמספר הצפיות.

נתוני הצפיות נרשמים ב־Cloudflare, והאתר קורא אותם ומציג אותם בעמוד.

Workers Analytics Engine הוא מאגר של Cloudflare לנתוני ספירה, שמאפשר למספר הקטגוריות לגדול בלי להגביל אותן לרשימה קבועה. Cloudflare מתארת אותו כשירות לניתוח נתונים בהיקפים גדולים, ללא הגבלה על מספר הערכים הייחודיים. Worker כותב נקודת נתונים באמצעות ממשק תכנות מובנה. בהמשך, אפשר לקרוא את הנקודות מאותו חשבון באמצעות SQL, דרך ממשק SQL המבוסס על HTTP. ניב ה־SQL הזה נפרד מזה של ממשק Analytics SQL API האחר של Cloudflare.

יחידת האחסון נקראת dataset. Cloudflare משווה dataset לטבלה ב־SQL: המשמעות של כל שורה וכל עמודה צריכה להישאר עקבית. שם ה־dataset מוגדר בתצורת ה־Worker, והוא מקושר אליו. הטבלה נוצרת כשה־Worker מתחיל לכתוב. אין שלב נפרד של הגדרת העמודות.

נקודת נתונים היא אירוע אחד, שורה אחת. Cloudflare מוסיפה timestamp כשה־Worker רושם את האירוע. ה־Worker מספק את כל שאר הנתונים, וחייב לספק אותם באותו סדר בכל פעם. כל מיקום בסדר הזה נקרא אצל Cloudflare שדה.

שדה הוא מיקום אחד בסדר הזה. המחרוזת הראשונה היא תמיד שדה המחרוזת הראשון. המספר השני הוא תמיד השדה המספרי השני. מסד הנתונים לא שומר שם לצד הערך, אלא את המיקום שלו. אם הסדר משתנה, גם משמעות השדה משתנה בהתאם. בשאילתה, המיקומים הופכים לעמודות. שדות המחרוזת הם blob1 עד blob20. השדות המספריים הם double1 עד double20. מפתח הדגימה הוא index1. בכל שורה יש גם timestamp, dataset ו־_sample_interval. בשאילתה אפשר לתת לשדה שם אחר לצורך אותה שאילתה, למשל blob1 AS city. השדה המאוחסן נשאר blob1.

מהו שדה

  1. מילים, לפי סדר תוויות שאפשר להשתמש בהן בהמשך לקיבוץ הנתונים, למשל מקום.
    blob1, then blob2, up to blob20 שם השדה ב־Cloudflare.
  2. מספרים, לפי סדר ערכי מדידות שאפשר לסכום או לחשב את הממוצע שלהם.
    double1, then double2, up to double20 שם השדה ב־Cloudflare.
  3. אינדקס אחד המפתח שבו Cloudflare משתמשת כשצריך לדגום זרם אירועים עמוס.
    index1 שם השדה ב־Cloudflare.
  4. הזמן, שנוסף על ידי Cloudflare הרגע שבו האירוע נכתב.
    timestamp שם השדה ב־Cloudflare.
  5. גודל המדגם, שנוסף על ידי Cloudflare מספר האירועים המקוריים שהשורה המאוחסנת הזו מייצגת.
    _sample_interval שם השדה ב־Cloudflare.
  1. מילים, לפי סדר

    תוויות שאפשר להשתמש בהן בהמשך לקיבוץ הנתונים, למשל מקום.

    נשמר בשם blob1, then blob2, up to blob20

  2. מספרים, לפי סדר

    ערכי מדידות שאפשר לסכום או לחשב את הממוצע שלהם.

    נשמר בשם double1, then double2, up to double20

  3. אינדקס אחד

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

    נשמר בשם index1

  4. הזמן, שנוסף על ידי Cloudflare

    הרגע שבו האירוע נכתב.

    נשמר בשם timestamp

  5. גודל המדגם, שנוסף על ידי Cloudflare

    מספר האירועים המקוריים שהשורה המאוחסנת הזו מייצגת.

    נשמר בשם _sample_interval

כל שדה שומר על מקומו. בשאילתה אפשר לתת ל־blob1 שם אחר לצורך אותה שאילתה. השדה המאוחסן נשאר blob1.

יש שלושה סוגי שדות. שדות מסוג Blob הם מחרוזות. Cloudflare מכנה אותם ממדים המשמשים לקיבוץ ולסינון — מה שבמערכות אחרות נקרא תוויות. נקודת נתונים יכולה להכיל עד עשרים שדות כאלה, וגודלם הכולל חייב להיות לכל היותר 16 קילו־בייט. שדות מסוג Double הם מספרים: ערכי המדידות שרוצים לסכום או לחשב את הממוצע שלהם. נקודת נתונים יכולה להכיל עד עשרים שדות כאלה. האינדקס הוא מחרוזת אחת באורך של עד 96 בייט. פעולת הכתיבה מקבלת רשימה, אבל Cloudflare שומרת את נקודת הנתונים רק אם הרשימה מכילה אינדקס אחד בלבד. אם יש אינדקס שני, הנקודה לא נרשמת.

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

כל הפעלה של Worker יכולה לכתוב עד 250 נקודות נתונים. הנתונים נשמרים למשך שלושה חודשים.