Tableau am Retail, wierklech?

D'Zäit fir an Excel ze berichten ass séier verschwannen - den Trend fir praktesch Tools fir Informatioun ze presentéieren an ze analyséieren ass an alle Beräicher ze gesinn. Mir hunn intern iwwer d'Digitaliséierung vum Berichterstattung fir eng laang Zäit diskutéiert an hunn den Tableau Visualiséierung a Selbstserviceanalysesystem gewielt. Alexander Bezugly, Chef vun der analytescher Léisungen a Berichterstattung vun der M.Video-Eldorado Group, huet iwwer d'Erfahrung an d'Resultater vum Bau vun engem Kampfdashboard geschwat.

Ech soen direkt datt net alles wat geplangt war realiséiert gouf, awer d'Erfahrung war interessant, ech hoffen et wäert Iech och nëtzlech sinn. A wann iergendeen Iddien huet wéi et besser gemaach ka ginn, wier ech ganz dankbar fir Är Rotschléi an Iddien.

Tableau am Retail, wierklech?

Ënnert dem Schnëtt ass iwwer dat wat mir begéint hunn a wat mir geléiert hunn.

Wou hu mer ugefaang?

M.Video-Eldorado huet e gutt entwéckelten Datemodell: strukturéiert Informatioun mat der erfuerderter Späichertiefe an eng riesech Unzuel u fixe Form Berichter (kuckt méi Detailer hei ass dësen Artikel). Vun dësen maachen Analysten entweder Pivottabellen oder formatéiert Newsletteren an Excel, oder schéi PowerPoint Presentatiounen fir Endbenotzer.

Virun ongeféier zwee Joer, amplaz vu fixe Form Berichter, hu mir ugefaang analytesch Berichter an der SAP Analyse ze kreéieren (en Excel Add-on, am Wesentlechen eng Pivot Tabell iwwer den OLAP Motor). Awer dëst Tool konnt net d'Bedierfnesser vun all de Benotzer erfëllen; d'Majoritéit huet weider Informatioun benotzt, déi zousätzlech vun Analysten veraarbecht ginn.

Eis Endbenotzer falen an dräi Kategorien:

Top Gestioun. Ufro Informatioun op eng gutt presentéiert a kloer verständlech Manéier.

Mëtt Gestioun, fortgeschratt Benotzer. Interesséiert an Datefuerschung a fäeg onofhängeg Berichter ze bauen wann Tools verfügbar sinn. Si goufen de Schlësselbenotzer vun analytesche Berichter an der SAP Analyse.

Mass Benotzer. Si sinn net interesséiert fir onofhängeg Daten ze analyséieren; si benotze Berichter mat enger limitéierter Fräiheet, am Format vun Newsletteren a Pivottabellen an Excel.

Eis Iddi war d'Bedierfnesser vun all de Benotzer ze decken an hinnen en eenzegt, praktescht Tool ze ginn. Mir hunn décidéiert mat Top Management unzefänken. Si brauche einfach ze benotzen Dashboards fir Schlësselgeschäftsresultater ze analyséieren. Also hu mir mam Tableau ugefaang an als éischt zwou Richtungen gewielt: Retail an Online Verkafsindikatoren mat limitéierter Tiefe a Breet vun der Analyse, déi ongeféier 80% vun den Donnéeën, déi vun der Topmanagement gefrot goufen, ofdecken.

Zënter datt d'Benotzer vun den Dashboards Topmanagement waren, erschéngt eng aner zousätzlech KPI vum Produkt - Äntwertgeschwindegkeet. Keen wäert 20-30 Sekonnen waarden fir d'Donnéeën ze aktualiséieren. Navigatioun sollt bannent 4-5 Sekonnen gemaach ginn, oder besser nach, direkt gemaach. A mir hunn dat leider net erreecht.

Dëst ass wéi de Layout vun eisem Haaptdashboard ausgesinn huet:

Tableau am Retail, wierklech?

D'Schlëssel Iddi ass d'Haapt KPI Chauffeuren ze kombinéieren, vun deenen et am Ganzen 19 waren, op der lénker Säit an hir Dynamik an Ënnerdeelung duerch Haaptattributer op der rietser Säit ze presentéieren. D'Aufgab schéngt einfach, d'Visualiséierung ass logesch a verständlech, bis Dir an d'Detailer daucht.

Detail 1. Datevolumen

Eis Haapttabelle fir alljährlechen Verkaf hëlt ongeféier 300 Millioune Reihen op. Well et néideg ass d'Dynamik fir d'lescht Joer an d'Joer virdrun ze reflektéieren, ass de Volume vun den Daten iwwer den aktuelle Verkaf eleng ongeféier 1 Milliard Linnen. Informatioun iwwer geplangten Donnéeën an den Online Verkafsblock ginn och getrennt gespäichert. Dofir, och wa mir d'Solumar-In-Memory DB SAP HANA benotzt hunn, war d'Geschwindegkeet vun der Ufro mat der Auswiel vun all Indikatoren fir eng Woch vun der aktueller Lagerung op der Flucht ongeféier 15-20 Sekonnen. D'Léisung fir dëse Problem proposéiert selwer - zousätzlech Materialiséierung vun Daten. Mä et huet och Falen, méi iwwer hinnen ënnert.

Detail 2. Net-additive Indicateuren

Vill vun eise KPIs sinn un d'Zuel vun den Empfang gebonnen. An dësen Indikator representéiert COUNT DISTINCT vun der Unzuel vun de Reihen (Check Header) a weist verschidde Betrag ofhängeg vun den ausgewielten Attributer. Zum Beispill, wéi dësen Indikator a seng Derivat solle berechent ginn:

Tableau am Retail, wierklech?

Fir Är Berechnungen richteg ze maachen, kënnt Dir:

  • Berechent esou Indikatoren op der Flucht am Stockage;
  • Berechnunge maachen op de ganze Volumen vun Daten am Tableau, d.h. op Ufro am Tableau, gitt all Daten no ausgewielte Filteren an der Granularitéit vun der Empfangspositioun;
  • Erstellt e materialiséierte Vitrine an deem all Indikatoren an all Probeoptioune berechent ginn, déi verschidden net-additive Resultater ginn.

Et ass kloer datt am Beispill UTE1 an UTE2 materiell Attributer sinn, déi d'Produkthierarchie representéieren. Dëst ass keng statesch Saach; Gestioun bannent der Firma fënnt duerch et statt, well Verschidde Manager si verantwortlech fir verschidde Produktgruppen. Mir haten vill global Versiounen vun dëser Hierarchie, wann all Niveau geännert, wann Relatiounen goufen iwwerschafft, a konstante Punkt Ännerungen, wann eng Grupp vun engem Node an en anert geplënnert. An der konventioneller Berichterstattung gëtt all dëst op der Flucht aus den Attributer vum Material berechent; am Fall vun der Materialiséierung vun dësen Donnéeën ass et néideg e Mechanismus z'entwéckelen fir sou Ännerungen ze verfolgen an automatesch historesch Daten nei ze lueden. Eng ganz net-trivial Aufgab.

Detail 3. Donnéeën Verglach

Dëse Punkt ass ähnlech wéi dee virdrun. Déi ënnescht Linn ass datt wann Dir eng Firma analyséiert, et üblech ass verschidde Niveaue vum Verglach mat der viregter Period ze bilden:

Verglach mat der viregter Period (Dag zu Dag, Woch zu Woch, Mount zu Mount)

An dësem Verglach gëtt ugeholl datt ofhängeg vun der Period déi vum Benotzer gewielt gëtt (zum Beispill déi 33. Woch vum Joer), mir d'Dynamik vun der 32. Woch solle weisen; wa mir Daten fir e Mount ausgewielt hunn, zum Beispill, Mee , da géif dëse Verglach d'Dynamik bis Abrëll weisen.

Verglach mam leschte Joer

D'Haaptnuance hei ass datt wann Dir mam Dag a vun der Woch vergläicht, Dir net de selwechten Dag vum leschte Joer hëlt, d.h. Dir kënnt net nëmmen dat aktuellt Joer minus eent setzen. Dir musst den Dag vun der Woch kucken, déi Dir vergläicht. Wann Dir Méint vergläicht, am Géigendeel, musst Dir genau dee selwechte Kalennerdag vum leschte Joer huelen. Et ginn och Nuancen mat Schaltjoer. An den urspréngleche Repositories gëtt all Informatioun vum Dag verdeelt; et gi keng separat Felder mat Wochen, Méint oder Joeren. Dofir, fir e komplette analytesche Querschnitt am Panel ze kréien, musst Dir net eng Period zielen, zum Beispill eng Woch, awer 4 Wochen, a vergläicht dann dës Donnéeën, reflektéieren d'Dynamik, Ofwäichungen. Deementspriechend kann dës Logik fir Vergläicher an der Dynamik ze generéieren och entweder am Tableau oder op der Storefront Säit ëmgesat ginn. Jo, an natierlech woussten a mir iwwer dës Detailer an der Design Etapp geduecht, mä et war schwéier hiren Impakt op d'Leeschtung vun der Finale Dashboard ze virauszesoen.

Beim Ëmsetzung vum Dashboard hu mir de laange Agile Wee gefollegt. Eis Aufgab war et fir en Aarbechtsinstrument mat den néidegen Donnéeën fir sou séier wéi méiglech ze testen. Dofir si mir an Sprint gaangen an ugefaang vun der Aarbecht op der Säit vun der aktueller Lagerung ze minimiséieren.

Deel 1: Glawen an Tableau

Fir IT-Ënnerstëtzung ze vereinfachen a séier Ännerungen ëmzesetzen, hu mir décidéiert d'Logik ze maachen fir net-additive Indikatoren ze berechnen a vergaange Perioden am Tableau ze vergläichen.

Etapp 1. Alles ass Live, keng Fënster Ännerungen.

Op dëser Etapp hu mir Tableau un déi aktuell Butteker verbonnen an decidéiert ze kucken wéi d'Zuel vun de Recetten fir ee Joer berechent gëtt.

Resultat:

D'Äntwert war depriméierend - 20 Minutten. Transfert vun Daten iwwer de Reseau, héich Laascht op Tableau. Mir hu gemierkt datt Logik mat net-additive Indikatoren op HANA implementéiert muss ginn. Dëst huet eis net vill Angscht gemaach, mir hate schonn ähnlech Erfahrung mat BO an Analyse a mir woussten wéi séier Vitrine an HANA bauen déi korrekt berechent net-additiv Indikatoren produzéieren. Elo bleift just nach se un den Tableau unzepassen.

Etapp 2. Mir stëmmen d'Vitrine, keng Materialiséierung, alles op der Flucht.

Mir hunn eng separat nei Vitrine erstallt déi déi erfuerderlech Donnéeën fir TABLEAU op der Flucht produzéiert huet. Am Allgemengen hu mir e gutt Resultat; mir hunn d'Zäit reduzéiert fir all Indikatoren an enger Woch op 9-10 Sekonnen ze generéieren. A mir hunn éierlech erwaart datt am Tableau d'Äntwertzäit vum Dashboard bei der éischter Ouverture 20-30 Sekonnen wier an dann duerch den Cache vun 10 op 12, wat eis am Allgemengen passt.

Resultat:

Éischt opgemaach Dashboard: 4-5 Minutten
All Klick: 3-4 Minutten
Keen huet esou eng zousätzlech Erhéijung vun der Aarbecht vum Storefront erwaart.

Deel 2. Daucht an Tableau

Etapp 1. Tableau Leeschtung Analyse a séier tuning

Mir hunn ugefaang ze analyséieren wou Tableau déi meescht Zäit verbréngt. An et gi ganz gutt Tools fir dëst, wat natierlech e Plus vum Tableau ass. Den Haaptproblem, dee mir identifizéiert hunn, waren déi ganz komplex SQL Ufroen déi Tableau gebaut huet. Si waren haaptsächlech verbonne mat:

- Daten Transpositioun. Zënter Tableau keng Tools huet fir Datensätz ze transposéieren, fir déi lénks Säit vum Dashboard mat enger detailléierter Representatioun vun all KPIs ze bauen, hu mir eng Tabell mat engem Fall erstallt. D'Gréisst vun SQL Ufroen an der Datebank erreecht 120 Zeechen.

Tableau am Retail, wierklech?

- Wiel vun Zäit Period. Sou eng Ufro um Datebankniveau huet méi Zäit gedauert fir ze kompiléieren wéi auszeféieren:

Tableau am Retail, wierklech?

Déi. Ufro Veraarbechtung 12 Sekonnen + 5 Sekonnen Ausféierung.

Mir hu beschloss, d'Berechnungslogik op der Tableau Säit ze vereinfachen an en aneren Deel vun de Berechnungen op de Storefront an den Datebankniveau ze réckelen. Dëst huet gutt Resultater bruecht.

Als éischt hu mir d'Transpositioun op der Flucht gemaach, mir hunn et duerch e komplette baussenzege Joint an der leschter Etapp vun der VIEW-Berechnung gemaach, no dëser Approche beschriwwen op der Wiki Transpose - Wikipedia, déi fräi Enzyklopedie и Elementar Matrix - Wikipedia, déi fräi Enzyklopedie.

Tableau am Retail, wierklech?

Dat ass, mir hunn e Kader Dësch gemaach - eng Transpositioun Matrixentgasung (21x21) a krut all d'Indicateuren an enger Zeil-fir-Zeil Decompte.

Et war:
Tableau am Retail, wierklech?

Et gouf:
Tableau am Retail, wierklech?

Bal keng Zäit gëtt un der Datebanktranspositioun selwer verbruecht. D'Ufro fir all Indikatoren fir d'Woch ass weider an ongeféier 10 Sekonnen veraarbecht ginn. Awer op der anerer Säit ass d'Flexibilitéit verluer gaangen wat d'Konstruktioun vun engem Dashboard baséiert op engem spezifesche Indikator, d.h. fir déi riets Säit vum Dashboard, wou d'Dynamik an den detailléierte Decompte vun engem spezifesche Indikator presentéiert ginn, virdrun huet d'Vitrine an 1-3 Sekonnen geschafft, well d'Ufro baséiert op engem Indikator, an elo huet d'Datebank ëmmer all Indicateuren ausgewielt an d'Resultat gefiltert ier d'Resultat op Tableau zréckkoum.

Als Resultat ass d'Geschwindegkeet vum Dashboard ëm bal 3 Mol erofgaang.

Resultat:

  1. 5 Sekonnen - Parsing Dashboards, Visualiséierungen
  2. 15-20 Sekonnen - Virbereedung fir Ufroen ze kompiléieren mat Virberechnungen am Tableau
  3. 35-45 sec - Kompilatioun vu SQL Ufroen an hir parallel-sequenziell Ausféierung an Hana
  4. 5 Sekonnen - Veraarbechtung vun Resultater, Zortéieren, neiberechent Visualiséierungen am Tableau
  5. Natierlech hunn esou Resultater dem Geschäft net gepasst, a mir hunn d'Optimiséierung weider gemaach.

Etapp 2. Minimum Logik am Tableau, komplett Materialiséierung

Mir hunn verstanen datt et onméiglech war en Dashboard mat enger Äntwertzäit vun e puer Sekonnen op engem Storefront ze bauen deen 10 Sekonnen leeft, a mir hunn d'Optiounen iwwerluecht fir Daten op der Datebanksäit speziell fir dat néidegt Dashboard ze materialiséieren. Awer mir hunn e globalen Problem uewe beschriwwen begéint - net additiv Indikatoren. Mir konnten net sécherstellen datt wann Dir Filteren oder Drilldowns ännert, den Tableau flexibel tëscht verschiddene Storefronten an Niveauen, déi fir verschidde Produkthierarchien pre-entworf sinn (am Beispill, dräi Ufroen ouni UTE, mat UTE1 an UTE2 generéiere verschidde Resultater). Dofir hu mir décidéiert den Dashboard ze vereinfachen, d'Produkthierarchie am Dashboard opzeginn a kucken wéi séier et an enger vereinfachter Versioun ka sinn.

Also, op dëser leschter Etapp, hu mir e separaten Repository versammelt an deem mir all KPIs an transposéierter Form bäigefüügt hunn. Op der Datebank Säit gëtt all Ufro un esou eng Lagerung an 0,1 - 0,3 Sekonnen veraarbecht. Am Dashboard hu mir folgend Resultater kritt:

Éischt Ouverture: 8-10 Sekonnen
All Klick: 6-7 Sekonnen

D'Zäit vum Tableau besteet aus:

  1. 0,3 sek. - Dashboard Parsing a Kompilatioun vu SQL Ufroen
  2. 1,5-3 Sek. - Ausféierung vu SQL Ufroen an Hana fir Haaptvisualiséierungen (läuft parallel mam Schrëtt 1)
  3. 1,5-2 Sek. - Rendering, Neiberechnung vu Visualiséierungen
  4. 1,3 sek. - Ausféierung vun zousätzlech SQL Ufroen fir relevant Filterwäerter ze kréien (Mark, Divisioun, Stad, Store), Parsing Resultater

Fir et kuerz ze resuméieren

Mir hunn den Tableau Tool aus enger Visualiséierungsperspektiv gär. Op der Prototypingstadium hu mir verschidde Visualiséierungselementer berücksichtegt an se all a Bibliothéiken fonnt, dorënner komplex Multi-Level Segmentatioun a Multi-Driver Waasserfall.

Wärend Dashboards mat Schlësselverkeefsindikatoren ëmgesat goufen, hu mir Leeschtungsschwieregkeeten begéint déi mir nach net konnten iwwerwannen. Mir hunn méi wéi zwee Méint verbruecht a krut e funktionell onkomplett Dashboard, d'Äntwertgeschwindegkeet vun deem op der Grenz vun akzeptabel ass. A mir hunn Conclusiounen fir eis selwer gezunn:

  1. Tableau kann net mat grousse Quantitéiten un Daten schaffen. Wann Dir am ursprénglechen Datemodell méi wéi 10 GB vun Daten hutt (ongeféier 200 Milliounen X 50 Zeilen), da wäert d'Dashboard eescht verlangsamen - vun 10 Sekonnen op e puer Minutten fir all Klick. Mir hunn experimentéiert mat Live-Connect an Extrait. D'Betribsgeschwindegkeet ass vergläichbar.
  2. Begrenzung wann Dir verschidde Späichere benotzt (Datesets). Et gëtt kee Wee fir d'Relatioun tëscht Datesätz mat Standardmëttelen unzeginn. Wann Dir Léisunge benotzt fir Datesätz ze verbannen, wäert dëst d'Leeschtung staark beaflossen. An eisem Fall hu mir d'Optioun iwwerluecht fir Daten an all erfuerderleche Sektioun ze materialiséieren a Schalter op dës materialiséierter Datesätz ze maachen, wärend déi virdru gewielte Filtere behalen - dëst huet sech als onméiglech am Tableau gemaach.
  3. Et ass net méiglech dynamesch Parameteren am Tableau ze maachen. Dir kënnt net e Parameter ausfëllen deen benotzt gëtt fir en Dataset an engem Extrait ze filteren oder während enger Live-Connecte mam Resultat vun enger anerer Selektioun aus dem Dataset oder dem Resultat vun enger anerer SQL Ufro, nëmmen gebierteg Benotzerinput oder eng Konstant.
  4. Aschränkungen verbonne mam Bau vun engem Dashboard mat OLAP|PivotTable Elementer.
    An MSTR, SAP SAC, SAP Analyse, wann Dir en Dataset an e Bericht bäidréit, da sinn all Objekter op et par défaut matenee verbonnen. Tableau huet dëst net; d'Verbindung muss manuell konfiguréiert ginn. Dëst ass wahrscheinlech méi flexibel, awer fir all eis Dashboards ass dëst eng obligatoresch Fuerderung fir Elementer - also ass dëst zousätzlech Aarbechtskäschte. Ausserdeem, wann Dir verwandte Filtere maacht, sou datt zum Beispill, wann Dir eng Regioun filtert, d'Lëscht vun de Stied nëmmen op d'Stied vun dëser Regioun limitéiert ass, kënnt Dir direkt mat successive Ufroen un d'Datebank oder Extrait ophalen, wat d'Regelen däitlech verlangsamt. Dashboard.
  5. Aschränkungen an Funktiounen. Mass Transformatiounen kënnen net entweder um Extrait gemaach ginn oder, SPECIAL, op der Dataset vu Live-connecta. Dëst kann duerch Tableau Prep gemaach ginn, awer et ass zousätzlech Aarbecht an en anert Tool fir ze léieren an z'erhalen. Zum Beispill kënnt Dir Daten net transposéieren oder se mat sech selwer verbannen. Wat ass zougemaach duerch Transformatiounen op eenzel Kolonnen oder Felder, déi musse gewielt ginn duerch Fall oder wann, an dëst generéiert ganz komplex SQL Ufroen, an deenen d'Datebank déi meescht Zäit verbréngt fir den Ufrotext ze kompiléieren. Dës Inflexibilitéit vum Tool muss um Vitrineniveau geléist ginn, wat zu méi komplexe Späicheren, zousätzlech Downloads an Transformatiounen féiert.

Mir hunn den Tableau net opginn. Awer mir betruechten Tableau net als Tool dat fäeg ass industriell Dashboards ze bauen an en Tool mat deem de ganze Firmeberichterstattungssystem vun enger Firma ersat an digitaliséiert gëtt.

Mir entwéckelen elo aktiv en ähnlechen Dashboard an engem aneren Tool a probéieren gläichzäiteg d'Dashboardarchitektur am Tableau ze iwwerschaffen fir se nach méi ze vereinfachen. Wann d'Gemeng interesséiert ass, wäerte mir Iech iwwer d'Resultater soen.

Mir waarden och op Är Iddien oder Rotschléi wéi Dir am Tabeau séier Dashboards iwwer esou grouss Datenvolumen bauen kënnt, well mir eng Websäit hunn wou et vill méi Daten gëtt wéi am Handel.

Source: will.com

Setzt e Commentaire