Hívásprofit elemzése a UPC-nél
A UPC-ről
A UPC Magyarország a Liberty Global vezető nemzetközi kábelszolgáltató száz százalékos tulajdonú leányvállalata. A Liberty Global 12 európai országban, valamint Chilében nyújt fejlett televíziós, hang- és szélessávú internet-szolgáltatásokat. A UPC Magyarország a legfrissebb, 2013. július 31-i adatok szerint 1,5 millió háztartást elérő hálózatain összesen 276 ezer analóg kábeltelevíziós, 350 ezer digitális kábeltelevíziós, 498 ezer szélessávú internetes és 415 ezer telefonos szolgáltatást üzemeltet előfizetői számára.
Kiinduló üzleti probléma
A UPC Magyarország Kft. lakossági, üzleti és nagykereskedelmi telefonszolgáltatást nyújt, melynek elemzése a távközlési adó bevezetésének hatására még nagyobb hangsúlyt kapott. A számlázási rendszereiből csak a hívásokhoz tartozó bevételek és a költségek egymástól elválasztott nyomon követésére volt lehetőség.
A BI fejlesztés célja egy olyan szoftvermegoldás kifejlesztése volt, amely tetszőleges összesítésben, akár elemi hívások szintjén is képes a költségek, illetve bevételek összerendelésére a teljes telefonforgalmat feldolgozva, alapját képezve ezzel az üzleti területek riportjainak, ad-hoc elemzéseinek.
Hardver- és szoftverválasztás
A BI bevezetése előtt a hívásprofit meghatározásához használt rendszer tapasztalataiból, illetve előzetes igény- és követelményelemzésekből tudtuk, hogy nagymennyiségű, napi 5-10 millió rekordot kell majd a BI rendszerben tárolnunk több évre visszamenőleg.
A tervezés során gondolkodtunk adattárházra optimalizált célhardverek beszerzésében, amelyhez bevontuk a szállítók szakembereit is. Így találtunk a BI projektre, aki az üzleti és technikai igények megismerése után ajánlatot adtak a probléma megoldására a vállalat birtokában lévő szoftver- és hardverkomponensekkel felhasználásával.
A szükséges szoftverek meglétének köszönhetően a UPC-nek nem kellett szoftver és hardverberuházást eszközölnie és ami még fontosabb: a munka azonnal kezdődhetett: Nem kellett megvárni amíg jóváhagyják a beszerzést és megérkezik az új hardver, telepítésre kerül az új szoftver, stb.
A szakmai hitelesség és leghamarabbi használatba vételi lehetőség miatt így a BI projektet bíztuk meg a kivitelezéssel.
A megoldás
A korábbi megoldás neve után Profit táblának nevezett rendszert egy klasszikus, többrétegű adattárház architektúrával valósítottuk meg. Az 5 számlázó rendszer napi átlagosan 30 millió új vagy visszafejtett hívásrekordját (CDR) egy úgynevezett stage területen állomásoztatjuk addig, amíg az árazó rendszerek be nem fejezik az árazást illetve a számlázó rendszerek be nem fejezik a számlázást.
A forrásrendszerek leválogatását követően az adatokat csillagsémás alakra transzformáljuk és a hívásadatok pároztatása és aggregálása után az adatpiac adatbázisába töltjük. E több mint egy terabájtos adatpiacra gyors es felhasználóbarát lekérdezések megvalósulása érdekében OLAP adatbázist építettünk.
BI architektúra a UPC-nél
Az OLAP adatbázisba már csak a hívás részletes adataiból előállított "szuperrekordot" töltjük amely hívásonkánt, a hívás elemzési szempontjai szerint aggregálva tartalmazza a hívás összes bevétel és költségelemet.
A többszázmillió hívás bevételeit es költségeit illetve az ebből kalkulált profitot az üzleti felhasználok Excel Pivot tábláján keresztül kérdezik le es elemzik. Excelen keresztül történik az egyéb költségek rögzítése és szétosztása is, melynek eredményeképp jelentősen pontosítottuk a hívások profittartalmának meghatározását.
Hardver architektúra
Kezdetben egy klasszikus konszolidált környezetet építettünk fel ahol az adatpiac összes komponense egy szerveren futott. Később, - amikor a UPC Oracle alapokon futó adattárháza fölé is Analysis Services OLAP kockákat ültettünk - a környezeteket szeparáltuk, es az Analysis Services OLAP szervert egy külön Windows klaszterre tettük és az Analysis Services 2008-as szoftverkörnyezetet migráltuk a 2012-es verzióra.
Az aktív-aktív klaszterbe fűzött két Analysis Services egyik lábát felösszegzésre, másik lábát pedig lekérdezésre használjuk és a sikeres betöltések es felösszegzések után a két szervert szinkronizáljuk egymással. Az így kialakított környezettel két legyet ütöttünk egy csapásra: létrehoztunk egy hibatűrő, magas rendelkezésre állású architektúrát és ezzel párhuzamosan elértük, hogy a lekérdezések válaszidejének növekedése és a felhasználói munka korlátozása nélkül tudjuk a felösszegzéseket akár napon belül többször is futtatni. Ennek következtében a felhasználókat sokkal hamarabb tudjuk friss adattal kiszolgálni, mint eddig valaha.
Nehézségek, problémák
Tartottunk a nagy adatmennyiségtől, de a nehézséget végül nem ez jelentette. Mivel tudtuk, hogy egy kis teljesítményű, öreg szerverrel kell dolgoznunk, ezért erre fel tudtunk készülni és a mindenre kiterjedő gondos tervezéssel a buktatókat el tudtuk kerülni. Voltak nehézségeink az időben es térben eltoltan jelentkező bevételek es költségek néha sztochasztikus módszerekkel történő összepárosításában, de erre fel voltunk készülve.
Ugyanakkor a tesztelés megtervezésére nem fordítottunk kellő figyelmet. Hogyan fogják az üzleti felhasználók a többszázmillió hívást tartalmazó adatpiacot kitesztelni? Mik az elfogadás üzleti kritériumai? Mind-mind olyan kérdések, amiket túl későn tettünk fel, és emiatt a tesztidőszak a tervezettnél hosszabbra nyúlt.
Eredmények
A legnagyobb eredmény, hogy a Profit tábla segítségével az üzleti felhasználók az Excelen keresztül tudják a teljes telefonforgalmat elemezni. Többszázmillió hívás áll ehhez rendelkezésükre, melyeket hívások attribútumai szerint tetszőlegesen tudják összesíteni, saját maguk tudnak szegmenseket képezni, „mi lenne ha" típusú elemzéseket futtatni.
A projekt tényadatai:
- A projekt teljes átfutási ideje: 6 hónap
- Az adatpiac mérete: több mint 1 terabájt (tömörítve)
- Rekordszám: többszáz millió
- Válaszidők: Lekérdezések 90%-a 10 másodperc alatt
- Technológia: Microsoft SQL Server 2008 és 2012
- Kivitelező: BI projekt
|