Start / Transparantie

Transparantie

Op deze pagina leggen we uit hoe het aantal weergaven op deze site wordt geteld. De weergaven zijn afkomstig uit Cloudflare Analytics Engine.

Iedereen die de website bezoekt, telt als een weergave. Dat aantal wordt uit Workers Analytics Engine opgehaald.

Hoe een weergave wordt geteld

  1. 1 Iemand opent de site Iedereen die de website bezoekt, telt als een weergave.
  2. 2 De site meldt het bezoek aan Cloudflare Het bezoek wordt naar Cloudflare gestuurd om het vast te leggen.
  3. 3 Cloudflare slaat het bezoek op Workers Analytics Engine bewaart het als één gegevenspunt.
  4. 4 Het totaal wordt opgehaald De site haalt dat totaal op en toont het onder Weergaven.
  1. 1

    Iemand opent de site

    Iedereen die de website bezoekt, telt als een weergave.

  2. 2

    De site meldt het bezoek aan Cloudflare

    Het bezoek wordt naar Cloudflare gestuurd om het vast te leggen.

  3. 3

    Cloudflare slaat het bezoek op

    Workers Analytics Engine bewaart het als één gegevenspunt.

  4. 4

    Het totaal wordt opgehaald

    De site haalt dat totaal op en toont het onder Weergaven.

Weergaven worden bij Cloudflare vastgelegd en vervolgens opgehaald om op de pagina te tonen.

Workers Analytics Engine is de opslagdienst van Cloudflare voor telgegevens die kunnen groeien zonder een vaste lijst categorieën. Cloudflare omschrijft dit als grootschalige analyses met onbeperkte cardinaliteit. Een Worker schrijft een gegevenspunt via een ingebouwde API. Later worden die gegevenspunten vanuit hetzelfde account met SQL opgevraagd, via een HTTP SQL API. Dat SQL-dialect staat los van de andere Analytics SQL API van Cloudflare.

Een dataset is de opslageenheid. Cloudflare vergelijkt een dataset met een tabel in SQL: elke rij en elke kolom moet steeds dezelfde betekenis behouden. De naam van de dataset wordt in de configuratie van de Worker vastgelegd en de dataset wordt aan de Worker gekoppeld. De tabel ontstaat zodra de Worker gegevens begint te schrijven. Kolommen hoeven niet vooraf apart te worden gedefinieerd.

Een gegevenspunt is één gebeurtenis, één rij. Cloudflare voegt een timestamp toe wanneer de Worker de gebeurtenis vastlegt. Alle overige gegevens worden door de Worker aangeleverd, altijd in dezelfde volgorde. Cloudflare noemt elke positie in die vaste volgorde een veld.

Een veld is één positie in die volgorde. De eerste tekenreeks staat altijd in het eerste tekenreeksveld. Het tweede getal staat altijd in het tweede numerieke veld. De database slaat geen naam naast de waarde op, maar de positie. Verander je de volgorde, dan verandert de betekenis van het veld mee. In een query worden de posities kolommen. Tekenreeksvelden heten blob1 tot en met blob20. Numerieke velden heten double1 tot en met double20. De sleutel voor steekproeven is index1. Elke rij bevat ook timestamp, dataset en _sample_interval. Een query kan een veld voor die specifieke vraag een andere naam geven, bijvoorbeeld blob1 AS city. Het opgeslagen veld blijft blob1.

Wat een veld is

  1. Woorden, in vaste volgorde Labels waarop je later wilt kunnen groeperen, zoals een plaats.
    blob1, then blob2, up to blob20 De naam van dit veld in Cloudflare.
  2. Getallen, in vaste volgorde Meetwaarden die je wilt kunnen optellen of waarvan je het gemiddelde wilt kunnen berekenen.
    double1, then double2, up to double20 De naam van dit veld in Cloudflare.
  3. Eén index De sleutel die Cloudflare gebruikt als bij een grote stroom gebeurtenissen een steekproef nodig is.
    index1 De naam van dit veld in Cloudflare.
  4. Het tijdstip, toegevoegd door Cloudflare Het moment waarop de gebeurtenis is vastgelegd.
    timestamp De naam van dit veld in Cloudflare.
  5. De steekproefgrootte, toegevoegd door Cloudflare Het aantal oorspronkelijke gebeurtenissen dat deze opgeslagen rij vertegenwoordigt.
    _sample_interval De naam van dit veld in Cloudflare.
  1. Woorden, in vaste volgorde

    Labels waarop je later wilt kunnen groeperen, zoals een plaats.

    Opgeslagen als blob1, then blob2, up to blob20

  2. Getallen, in vaste volgorde

    Meetwaarden die je wilt kunnen optellen of waarvan je het gemiddelde wilt kunnen berekenen.

    Opgeslagen als double1, then double2, up to double20

  3. Eén index

    De sleutel die Cloudflare gebruikt als bij een grote stroom gebeurtenissen een steekproef nodig is.

    Opgeslagen als index1

  4. Het tijdstip, toegevoegd door Cloudflare

    Het moment waarop de gebeurtenis is vastgelegd.

    Opgeslagen als timestamp

  5. De steekproefgrootte, toegevoegd door Cloudflare

    Het aantal oorspronkelijke gebeurtenissen dat deze opgeslagen rij vertegenwoordigt.

    Opgeslagen als _sample_interval

Elk veld behoudt zijn vaste positie. Een query kan blob1 voor een specifieke vraag een andere naam geven. Het opgeslagen veld blijft blob1.

Er zijn drie soorten velden. Blobs zijn tekenreeksen. Cloudflare noemt ze de dimensies die worden gebruikt om te groeperen en te filteren; andere systemen noemen ze labels. Een gegevenspunt kan twintig blobs bevatten, die samen niet groter mogen zijn dan 16 kilobyte. Doubles zijn getallen: de meetwaarden die je kunt optellen of waarvan je het gemiddelde kunt berekenen. Een gegevenspunt kan twintig doubles bevatten. De index is één tekenreeks van maximaal 96 bytes. Bij het schrijven kan een lijst worden meegegeven, maar Cloudflare slaat het gegevenspunt alleen op als die lijst precies één index bevat. Bij een tweede index wordt het gegevenspunt niet vastgelegd.

Bij zeer grote hoeveelheden gegevens neemt Analytics Engine steekproeven, zodat query's snel blijven. Dat kan zowel bij het schrijven als bij het lezen gebeuren, op basis van de index. Bij een index met veel gebeurtenissen kan een steekproef worden genomen. Bij een index met minder gebeurtenissen kunnen alle gegevens behouden blijven. Elke opgeslagen rij bevat _sample_interval: het aantal oorspronkelijke gebeurtenissen dat die rij vertegenwoordigt. Voor een telling tel je de waarden van _sample_interval bij elkaar op. Om een meetwaarde op te tellen, vermenigvuldig je die eerst met _sample_interval. Voor een gemiddelde deel je de gewogen som door de som van de intervallen.

Per aanroep kan een Worker maximaal 250 gegevenspunten schrijven. Gegevens worden drie maanden bewaard.