Az Adverticum Zrt. teljesen átalakította statisztika rendszerét. A nagy mennyiségű adat és kiszolgálás hívta életre a projektet, melynek célja többek között a korszerű statisztikai adatok mellett a hirdetéshatékonysági vizsgálatok biztosítása és egy rugalmasan skálázható rendszer megalkotása volt.
Az Adverticum AdServer alapszolgáltatása több mint 15 éve az online hirdetések kiszolgálása, vagyis a valós idejű elhelyezése a weboldalakra. Ez naponta közel 1 milliárd kreatívot jelent. Az alapfunkció mellett követelmény, hogy a rendszer statisztikai számokat is készítsen a megjelenésekről. Ekkora mennyiségű adat és kiszolgálás exponenciálisan növeli a szükséges számítási kapacitásokat, ezért extenzíven fejlesztve már nem lehetett gazdaságosan növelni a szolgáltatást, mert a rendszer belső interakciói emésztették föl az erőforrások jelentős hányadát.
A fejlesztés során olyan rugalmasan skálázható rendszer kialakítása volt a cél, amely lehetőséget teremt mindazon információk, adatok tárolására és feldolgozására, amelyeken elemzések végezhetők az ügyfelek számra a hatékonyabb hirdetéskiszolgálás érdekében.
A kísérleti fejlesztés során további cél volt a kártékony klikkek kiszűrése, hogy a hirdetések hatékonyságát objektívan lehessen elemezni és értékelni.
Az új szoftver jelentősen növeli az adatbiztonságot, mert az adatok végpont-végpont biztonságúak, vagyis egy adat csak akkor törlődik a kiszolgáló gépről, amikor az adatfeldolgozás helyére már megérkezett.
A rendszer innovációja, hogy egy olyan megosztott adatbázis keletkezett és olyan algoritmusokat fejlesztettek, ahol a folyamatok párhuzamosan futnak annak érdekében, hogy a lehető legtöbb interakció és kliens-oldali információ logolható legyen úgy, hogy ez nem lassítja a hirdetéskiszolgálás folyamatát, azaz továbbra is elegendő néhány tízezred másodperc egy-egy kreatív megjelenítéséhez.
Az új statisztika- és mérőrendszer fejlesztésével, a felhasználói igények figyelembevételével, meghatározott tetszőleges mérőpontok elhelyezésével testre szabott méréseket, hatékonysági vizsgálatokat is tud a rendszer biztosítani a korszerű statisztikai adatok szolgáltatása mellett.
Összegezve, a „hirdetéshatékonysági vizsgálatok” fejlesztésének legfőbb célja az volt, hogy egy olyan mérőeszköz kerüljön többek között a hazai tartalomszolgáltatók kezébe, melynek segítségével hatékonyan tervezhetik meg hirdetési felületeik hasznosítását.
Hazai és nemzetközi viszonylatban is kiemelkedő nagy adatmennyiség – naponta 80GB (500M esemény) – mozgatása, feldolgozása volt a cél. A rendszer tervezett kapacitása 100 ezer esemény/mp, tesztek alapján 300 ezer esemény/mp-t is képes tartani (több mint 25 Mrd esemény/nap). Az előkészítés során folyamatos konzultáció történt hazai és nemzetközi adatelemző cégekkel a megfelelő technológia kiválasztásához (SAS - AITIA – egyetemi szakértők). Mindezek mellett számos technológia tesztelése megtörtént (Cassandra, Couchbase, RabbitMQ, HBase, MongoDB stb.) a legmegfelelőbb kiválasztása előtt.
A kiválasztott technológiák
Adatok tárolására, feldolgozására:
· Hadoop (tároló + adatfeldolgozó)
· Accumulo (adatbázis)
· Twitter Storm (logfeldolgozás)
· Kafka (logok szállítása)
11 érintett komponens (8 teljesen új, 3 módosított)
· Logger
· LogTransfer
· CoreDataExport
· LogProc
· UniqueStore
· StatAPI
· StatADMIN
· RegD, Riport
· Goa3
· Core
A rendszer vizualizációja
Jelenleg egy hirdetéskiszolgálás kapcsán már nem elegendő az ADV és CT számok mérése, mivel egyre komplexebb kreatívok jelennek meg, így újfajta méréseket is lehetővé kell tenni a rendszerben, hogy az ügyfelek hatékonyan tudják tervezni felületeiket.
Interakció, esemény
Általános mérőpontokat kell definiálni a rendszerben, amelyek az ADV és CT-hez hasonlóan inkrementálódnak, amikor a kreatív, vagy a kiszolgáló rendszer egy esemény bekövetkeztét jelzi. Egy megjelenéshez több ilyen pont is tartozhat. Egy mérőpontnál megadható, hogy egy ADV-hoz mérhet-e egynél több interakciót. El kell gondolkozni egyes rendszerszintű eseménymérésnél, hogy miként lehetne az alapján vezérelni is (pl. Inscreen).
Időtartam / mennyiségmérés
Bizonyos eseményeknél nem elegendő információ az, hogy bekövetkezett-e vagy sem, hanem tartozik hozzá egy extra paraméter. Ez jellemzően idő, amelyet a későbbiekben átlagolni kell. Tehát nem az a kérdés, hogy hányan nézték a videót 5, 10 vagy éppen 35 másodpercig, hanem az átlaguk. Két, ugyanarra a mérőpontra érkező mérés összeadódik (pl. videó fut 35 másodpercig, leállítja, majd fut még 25 másodpercig, akkor az összesen 1 percnek tekintendő). Tartozhat hozzá egy maximum érték, amivel akkor számolunk, ha azt a küldött adat meghaladta. Elsősorban időmérésre használnánk ezt a funkciót, de igazából bármilyen numerikus értékkel jól kell működnie (pl. kor / költség stb. átlagra is jó lehet rich media kreatívoknál).
Időszakaszok mérése
Ez a mérőszám sokban hasonlít az időtartammérésre, viszont itt egy mérőpontra érkező mérés külön eseménynek tekintendő, tehát az előző példából kiindulva, nem egy 60 másodperces esemény lesz, hanem egy 25 és egy 35 másodperces, aminek az átlaga 30 másodperc, viszont duplán számít bele a teljes átlagba. Ez a mérés megvalósítható olyan módon, hogy az időtartammérést kiegészítjük egy súly paraméterrel, így már kliens oldalon elvégezhető az átlagolás, és elegendő egy adatot elküldeni, nem kell az összes szakaszt. Elképzelhető, hogy nem átlagolásra lesz szükség, hanem a teljes mérést és a szakaszok számát kell elküldeni.
Enum mérés
Az enum típusú mérés tulajdonképpen egy olyan interakció/eseménymérés, aminél egy extra paraméter is utazik, amely megmondja, hogy egy előre definiált halmaz mely elemére érkezett a kérés, itt a statisztikában a halmaz minden elemére külön kell tudni adatokat szolgáltatni (pl. egy autószínezős kreatívban lehet statisztika, hogy milyen színt hányan választottak). Ennek a mérésnek a létjogosultsága azért kérdőjelezhető meg, mert ez tulajdonképpen kiváltható több interakció / eseményméréssel.
Két merőszámból előállított érték
Bizonyos metrikáknál két érték arányára van szüksége a felhasználónak, nem feltétlenül csak a nyers számokra. Ilyen például a CTR, vagy rich media interaction rate.
Egyedi mérőszámok
A rich media kreatívoknál elengedhetetlen, hogy a kreatív készítője is definiálhasson extra mérési pontokat, amelyeket azután a statisztikában viszontláthat. Ez a felhasználó által egyedileg igényelhető a kreatívba építhető mérőpont jogosultságkezeléssel válik elérhetővé.
Új kezelőfelület készült kétféle lekérési lehetőséggel: egyszerű és egyedi statisztikafelület is elérhető.
Egyszerű statisztika felület
Az egyszerű esetében, a korábbi modulhoz hasonlóan csak a beállításokat kell elvégezni, és a lekérést követően a rendszer összeállítja az adatokat a megfelelő formában.
Nagyításhoz kattintson a képre!
Egyedi statisztika felület
Az egyedi statisztika összeállításkor egyszerre több adathalmazt is kezelhet a felhasználó, és eldöntheti, hogy milyen formában szeretné az adatokat prezentálni. Ezen a felületen keresztül kérhetőek le a post user action, valamint a keresztlátogatottsági adatok is.
Nagyításhoz kattintson a képre!