Cognos Auditing Blog - Tips en trúkjes foar omjouwings mei grut en heech folume

by Mei 17, 2021Auditing0 comments

In blog fan John Boyer en Mike Norris.

Ynlieding

It is wichtich dat de Cognos Auditing -mooglikheid wurket om te witten en te begripen hoe't Cognos wurdt brûkt troch jo brûkersmienskip en help te beantwurdzjen fan fragen lykas:

    • Wa brûkt it systeem?
    • Hokker rapporten rinne se?
    • Wat binne de rintiden fan it rapport?
    • Mei help fan oare ark, lykas MotioCI, hokker ynhâld is net brûkt?

Yn betinken nommen hoe kritysk it is om sûne Cognos Analytics -omjouwingen te behâlden, is ferrassend net folle skreaun oer har auditingdatabase bûten de standert produktdokumintaasje. Miskien wurdt it as fanselssprekkend nommen, mar organisaasjes dy't it brûke witte dat nei ferrin fan tiid it freegjen fan 'e tafels fan Audit Database sil begjinne te fertragen - foaral as jo organisaasje in protte brûkers hat dy't in protte rapporten útfiere en in protte skiednis hat. Wat mear is, is dat it oanmelden fan de auditaktiviteit sels kin wurde fertrage, om't it yn 'e wachtrige is as it bygelyks net fluch genôch kin wurde tafoege oan de database. Dat is wannear jo begjinne te tinken oer databankprestaasjes lykas jo soene dwaan mei elke operasjonele databank dy't rapportaazjeasken hat.

Grutte tabellen typysk trage fraachprestaasjes. Hoe grutter de tafel, hoe langer it duorret om yn te foegjen en te freegjen. Unthâld dat dizze tabellen en de Audit Database yn prinsipe in operasjonele databank binne; skriuwen komme faak foar en wurkje tsjin ús, om't wy se net kinne rjochtsje op allinich lêsoperaasjes lykas jo soene dwaan mei in data mart.

Lykas de ynhâldsopslach, moat de sûnens fan 'e Cognos -omjouwing ek rekken hâlde mei de sûnens fan' e Audit Database. Unbegrinze groei fan 'e Audit Database kin oer tiid in probleem wurde en kin úteinlik sels ynfloed hawwe op de algemiene prestaasjes fan in Cognos -omjouwing. Yn in protte organisaasjes mei eksterne regeljouwing dy't op har wurde droegen, kin it net hawwen fan in folslein auditrekord se yn in net-neilibjen situaasje bringe mei swiere gefolgen. Dat hoe moatte wy omgean mei it behâld fan safolle gegevens foar histoaryske auditsdoelen - yn guon gefallen oant 10 jier - mar dochs de rapportaazje krije dy't wy nedich binne om it miljeu te behâlden en brûkers bliid te hâlden mei de prestaasjes?

De útdaging

    • Unbegrinze groei fan 'e Audit Database hat negative gefolgen foar de sûnens fan' e Cognos -omjouwing
    • It rapportearjen fan 'e Audit Database is traach as net brûkber wurden
    • Cognos belibbet fertragingen yn records dy't wurde skreaun nei de Audit Database
    • De Audit Database rint op mei skiifromte

Dit alles betsjuttet dat it net allinich de rapporten binne dy't fertrouwe op 'e Audit Database, mar faaks it heule systeem. As de Audit Database op deselde server is as de Cognos -ynhâldwinkel, sil de prestaasjes fan alle dingen Cognos wurde beynfloede yn dy omjouwing.

De opset

Wy nimme oan:

    1. Cognos Analytics is ynstalleare en draait
    2. Cognos is konfigureare om oan te melden by in Audit Database
        • Hawwe in Audit Database yn plak
        • Stel passende Audit -oanmeldnivo's yn yn Cognos -administraasje
        • Rekord wurdt skreaun yn 'e database troch Cognos
    3. De Audit Database is mear dan in jier yn gebrûk
    4. De omjouwing is heul aktyf mei brûkers en útfieringen
    5. It Audit -pakket wurdt brûkt om Cognos -gebrûksgegevens te iepenjen
    6. Wy binne op syk nei it ferbetterjen fan de rapportaazjeprestaasjes fan Audit Database
    7. Opnij opnij starte of wiskje fan âlde records is net altyd in opsje

As jo ​​dat noch net hawwe, hawwe Cognos Audit ynstalleare en konfigureare, Lodestar Solutions, a Motio partner, hat in poerbêst peal oer it ynskeakeljen fan Audit yn Cognos BI /CA.

de Solution

D'r binne wat mooglike oplossingen dy't harsels fluch presintearje:

    1. Ferminderje it folume fan gegevens troch:
        • Guon fan 'e âldere gegevens ferpleatse nei in oare database
        • Guon fan 'e âldere gegevens ferpleatse nei in oare tabel yn deselde database
    2. Gewoan wiskje of bôgehive guon fan 'e gegevens en meitsje jo der gjin soargen oer
    3. Libje dermei. Skop it blik del road en triuwe de databankbehearder foar prestaasjes
      ferbetterings by it ynboeien troch it net tastean fan feroaringen fan it skema of
      indexes

Wy geane net omgean mei opsje 3. Opsje 2, wiskjen fan de gegevens, is gjin goede opsje en ik soe oanrikkemandearje op syn minst 18 moannen 'wearde minimaal te hâlden. Mar, as jo sa oanstriid hawwe, biedt IBM in hulpprogramma, AuditDBcleanup (Cognos BI) of a skrift (Cognos Analytics) dy't dat krekt sil dwaan. It hulpprogramma foar Cognos BI wisket records basearre op in tiidstempel, wylst de skripts foar Cognos Analytics de yndeksen en tabellen gewoan wiskje.

De oanbefellingen dy't wy hjirfoar oan kliïnten hawwe makke wiene te skieden yn twa databases:

    1. Audit - Live: befettet de wearde fan 'e lêste wike fan gegevens
    2. Audit - Histoarysk: befettet histoaryske gegevens (oant N jier)

Koartsein, it proses rint wykliks om de meast resinte records fan Audit Live nei Audit History te ferpleatsen. Audit Live begjint opnij as in lege leisteen nei't dit proses is útfierd.

    1. De Live DB is fluch en strak, wêrtroch ynserts sa rap mooglik kinne barre
    2. Auditfragen binne eksklusyf rjochte op de Histoaryske DB

Troch dizze oanpak te brûken, is d'r gjin ymplisyt "gearwurkjen" fan 'e Live -gegevens en de Histoaryske gegevens. Ik soe beweare dat jo it wierskynlik sa wolle hâlde.

Yn Cognos -administraasje kinne jo twa ferskate ferbiningen tafoegje foar de Auditgegevensboarne. As in brûker in rapport útfiert tsjin it Audit -pakket, wurde se frege foar hokker ferbining se wolle brûke:

Auditdatabases

Op 'e kâns dat jo live auditgegevens wolle sjen ynstee fan histoaryske auditgegevens, selektearje jo gewoan de "Audit - Live" -ferbining as jo wurde frege (moat de útsûndering wêze, net de noarm.)

As jo ​​ECHT ek in konsolideare werjefte wolle leverje fan sawol Live as Histoarysk, kinne jo dat dwaan, mar it soe ynfloed hawwe op prestaasjes.

Jo kinne bygelyks in 3e database meitsje mei de namme "Audit - Konsolidearre werjefte" en dan, foar elke tabel yn it Audit -skema: meitsje in identike neamde werjefte dy't in SQL -uny is tusken de tabel yn 'e live DB en de tabel yn' e histoaryske DB. Lykwols koe dit ek wurde berikt yn it Framework Manager -model, mar, opnij, soe prestaasjes in wichtige oerweging wêze.

Guon fan ús kliïnten hawwe in konsolideare werjefte makke. It is ús miening dat dit wierskynlik te folle is. Prestaasjes soene altyd slimmer wêze yn dizze konsolideare werjefte en wy binne net in protte gebrûksgefallen tsjinkommen dy't sawol de Live datasets as Histoarysk brûke. De Live wurdt brûkt foar probleemoplossing en de Histoaryske foar trendrapportaazje.

Mei yngong fan Cognos Analytics 11.1.7 is de Audit Database útgroeid ta 21 tabellen. Jo kinne earne oars mear ynformaasje fine oer de Audit Database, sample auditrapporten en it Framework Manager -model. It standert oanmeldnivo is Minimal, mar jo wolle miskien it folgjende nivo, Basis, brûke om fersiken foar gebrûk, brûkersaccountbehear en runtime -gebrûk op te nimmen. Ien manier wêrop jo de systeemprestaasjes kinne behâlde is troch it oanmeldnivo te hâlden oant it leechste fereaske nivo. Fansels, hoe mear oanmelden dat wurdt dien troch de server, hoe mear algemiene serverprestaasjes kinne wurde beynfloede.

De toetsetabellen wêryn de measte behearders ynteressearre sille wêze, binne de 6 tabellen dy't de brûkersaktiviteit en rapporteaktiviteit yn it systeem registrearje.

  • COGIPF_USERLOGON: Opslach fan brûkers oanmelden (ynklusyf ôfmelde) ynformaasje
  • COGIPF_RUNREPORT: Bewarret ynformaasje oer rapportútfieringen
  • COGIPF_VIEWREPORT: Bewarret ynformaasje oer fersiken foar rapportwerjefte
  • COGIPF_EDITQUERY: Bewarret ynformaasje oer query -rinnen
  • COGIPF_RUNJOB: Bewarret ynformaasje oer taakoanfragen
  • COGIPF_ACTION: Registrearret brûkersaksjes yn Cognos (dizze tabel kin folle rapper groeie dan de oaren)

De out-of-the-box-konfiguraasje sjocht d'r sa út:

Standert Audit Konfiguraasje

Oanbefelle konfiguraasje:

Oanbefelle Audit -konfiguraasje

De Cognos Audit Database - Live befettet 1 wike auditgegevens. Gegevens âlder dan 1 wike wurde ferpleatst nei de Cognos Audit Database - Histoarysk.

De line fan 'e Cognos Audit Database - Live nei Cognos Audit Database - Histoarysk yn it diagram is ferantwurdlik foar:

  • Gegevens kopiearje fan Live Audit nei Histoarysk Audit
  • Ferwiderje alle rigen yn 'e Live Audit dy't âlder binne dan 1 wike
  • Ferwiderje alle rigen yn Histoaryske Audit dy't âlder dan x jier binne
  • Fuortsmite alle rigen yn COGIPF_ACTION dy't âlder binne dan 6 moannen

Yndeksen

Ferskate databasetypen hawwe ferskate yndekseringstypen. In database -yndeks is in datastruktuer, assosjeare mei in tabel (as werjefte), brûkt om de útfieringstiid fan queries te ferbetterjen by it opheljen fan de gegevens fan dy tabel (as werjefte). Wurkje mei jo DBA om de optimale strategy te meitsjen. Se sille de antwurden wolle witte op fragen lykas dizze om de bêste besluten te nimmen oer hokker kolommen moatte yndeksearje. Fansels koe de databankbehearder de antwurden fine op guon of al dizze fragen sûnder jo help, mar it soe wat ûndersyk en wat tiid kostje:

  • Hoefolle records hawwe de tabellen en nei hokker grutte ferwachtsje jo dat se sille groeie? (In tabel yndeksearje sil net nuttich wêze, útsein as de tafel in grut oantal records hat.)
  • Witte jo hokker kolommen unyk binne? Stean se NULL -wearden ta? Hokker kolommen hawwe datatype fan gehiel of grut gehiel? (De kolommen mei numerike datatypen en dy't UNIQUE en NOT NULL binne, binne sterke kandidaten om diel te nimmen oan 'e yndekskaai.)
  • Wêr binne jo haadprestaasjeproblemen hjoed? Binne se by it opheljen fan de gegevens? Binne d'r spesifike fragen as rapporten dy't mear in probleem binne? (Dit kin de databankbehearder liede ta guon spesifike kolommen dy't kinne wurde optimalisearre.)
  • Hokker fjilden wurde brûkt by tafoegjen fan tabellen foar rapportaazje?
  • Hokker fjilden wurde brûkt foar filterjen, sortearjen, groepearjen en aggregearjen?

Net ferrassend binne dit deselde fragen dy't moatte wurde beantwurde foar it ferbetterjen fan de prestaasjes fan alle databasetabellen.

IBM Support rekommandearret it meitsjen fan in yndeks op kolommen "COGIPF_REQUESTID", "COGIPF_SUBREQUESTID", en "COGIPF_STEPID" foar de folgjende tabellen om prestaasjes te ferbetterjen:

  • COGIPF_NATIVEQUERY
  • COGIPF_RUNJOB
  • COGIPF_RUNJOBSTEP
  • COGIPF_RUNREPORT
  • COGIPF_EDITQUERY

Plus op oare minder brûkte tabellen:

  • COGIPF_POWERPLAY
  • COGIPF_HUMANTASKSERVICE
  • COGIPF_HUMANTASKSERVICE_DETAIL

Jo kinne dit as útgongspunt brûke, mar ik soe de oefening trochgean om de boppesteande fragen te beantwurdzjen om te kommen ta it bêste antwurd foar jo organisaasje.

oare Oandachtspunten

  1. Audit FM -model. Unthâld dat it Framework Manager -model dat IBM leveret is modeleare op de standerttabellen en fjilden. Elke wizigingen dy't jo meitsje oan 'e rapportetabellen sille moatte wurde wjerspegele yn it model. It gemak as de kompleksiteit fan dizze feroaringen - as jo organisatoaryske kompetinsje om dizze feroaringen te meitsjen - kin ynfloed hawwe op de oplossing dy't jo kieze.
  2. Oanfoljende fjilden. As jo ​​it sille dwaan, is it no de tiid om ekstra fjilden ta te foegjen foar kontekst- as referinsjegegevens om auditrapportaazje te ferbetterjen.
  3. Gearfetting tabellen. Ynstee fan gewoan de gegevens te kopiearjen nei jo histoaryske tabel, komprimearje se. Jo koenen de gegevens aggregearje oant it deinivo om it effisjinter te meitsjen foar rapportearjen.
  4. Views ynstee fan tabellen. Oaren sizze, "Dat, ynstee fan in 'hjoeddeistige' databank en in 'histoaryske' databank te hawwen, soene jo mar ien database moatte hawwe, en alle tabellen dêre moatte wurde foarheaksel mei 'histoarysk'. Dan moatte jo in set werjeften oanmeitsje, ien foar elke tabel dy't jo wolle sjen as 'aktueel', en elke werjefte moatte filterje de histoaryske rigen dy't jo net wolle sjen en allinich de aktuele trochlitte litte litte.
    https://softwareengineering.stackexchange.com/questions/276395/two-database-architecture-operational-and-historical/276419#276419

Konklúzje

De konklúzje is dat mei de hjir levere ynformaasje jo goed tariede moatte op in produktyf petear mei jo DBA. De kâns is goed dat se earder sokke problemen hat oplost.

De foarstelde feroarings yn 'e Cognos Audit Database-arsjitektuer sille de prestaasjes ferbetterje yn sawol direkte rapportaazje as applikaasjes fan tredden dy't derop fertrouwe, lykas Motio's ReportCard en Ynventarisaasje.

Trouwens, as jo dat petear hawwe hân mei jo DBA, wolle wy d'r graach oer hearre. Wy wolle ek graach hearre as jo it probleem hawwe oplost fan in min útfierende Audit Database en hoe't jo it dien hawwe.

AuditingBI/Analytics
Binne jo audit klear?

Binne jo audit klear?

Binne jo audit-klear? Auteurs: Ki James en John Boyer As jo ​​​​de titel fan dit artikel foar it earst lêze, skodden jo wierskynlik en tocht fuortendaliks oan jo finansjele kontrôle. Dat kinne eng wêze, mar hoe sit it mei neilibjenkontrôles? Binne jo klear foar in...

Lês mear