By user: Laurens | On date: May 16, 2013
|
Microstrategy is een rapportage tool met een eigen sql-engine.
Een van de makkelijkste methodes om meetwaardes te groeperen is op basis van custom groups.
|
 |
.Custom groups zijn erg gemakkelijk om snel met behulp van filters snel een groepering te maken.
Denk hierbij aan Productgroep x en productgroep y. Met consolidations kan je 1 element per attribuut selecteren en hier meetwaardes op te groeperen waarbij het wel mogelijk is om meerdere attributen te gebruiken.
| |
Custom group |
Consolidation |
| Group by |
Flexibele filtering |
filtering op een element per attribuut |
| Type |
Per group minimaal een pass |
probeert te werken met case when statements |
Wat ik met de tabel hierbvoen duidelijk probeert te maken is dat consolidations voor standaard rapporten een betere snelheid hebben dan custom groups doordat er minder passes (aparte sql statements) worden afgevuurd op de database.
In een extreem rapport heb ik de hoeveelheid passes van 60 naar 12 zien afnemen en dit merkt een eindgebruiker (qua performance). Om consolidations effectief te gebruiken dient het datamodel vaak wel aangepast te worden (de custom groups dienen elementen te worden).
Succes met tweaken.
By user: Laurens | On date: April 26, 2013
Datawarehousing maakt het mogelijk om grote hoeveelheden data 'gestructureerd' klaar te zetten in de vorm van een ster schema. Complexere analyses (regressie/ chaid) hebben liever 0/1 velden.
Dit betekend dat de data op een andere manier verwerkt moet worden.
De uitgangspunten hierbij zijn:
- Er zijn meetwaardes die niet al berekend zijn op een bepaald niveau en hoeven dus niet te worden `omgeklapt`.
- Er zijn meetwaardes die omgezet moeten worden naar 0/1 velden.
- Er zijn meetwaardes waarbij de rijen naar kolommen moeten worden omgezet waarbij de meetwaarde moet worden overgenomen
- Eindgebruikers moeten zelf nieuwe meetwaardes kunnen introduceren.
- Nieuwe producten/ groeperingen e.d. moet automatisch nieuwe kolommen tot gevolg hebben.
Om het bovenstaande mogelijk te maken dient de etl een stuurtabel te hebben.
Waarbij per stap de sql bepaalde statements uitgevoerd worden.
Hierna kunnen de rijen naar kolommen worden omgeklapt voor zover van toepassing.
De stuurtabel bevat dan de volgende kolommen:
- Id
- Sql naam
- Sql text
- Sql actief
- Sql key col
- Sql omklappen ja/nee
By user: Admin | On date: April 15, 2013
Niemand in de Business Intelligence gemeenschap kan om excel heen.
Veelal vervloekt door de bi specialisten en geprezen door de ontvangers.
Leuk zo'n rapport in die nieuwe rapportage tool; maar kan ik het ook exporteren naar excel?
Wanneer de organisatie niet beschikt over een sql-server met powerpivot ondersteuning is er alsnog een simpele manier om de data alsnog beschikbaar te maken aan de eindgebruikers; zeg maar een compromis tussen de excel gebruikers en de business intelligence specialisten.
 |
De meest simpele methode is dit:
- Schrijf een correcte sql.
- Gebruik Php om de output van de sql weg te schrijven in een csv format met " om de text velden (voor de zekerheid alle velden maar).
- Link Excel / Open office naar deze databron.
- Maak het rapport verder op in excel/ open office en sla deze op.
- Upload de Excel / Open office file naar een plek waar de gebruiker bij kan.
Op het moment dat het bestand wordt ge-opend wordt de data opgehaald vanuit de database dmv php en excel/ open office zorgt voor de verdere opmaak.
|
Klinkt simpel en dat is het ook.
Het vereist wel dat de data redelijk is voorgekauwd (ETL ivm performance issues) en dat er niet teveel data opgevraagd wordt (het blijft een webserver); qua methode is dit gelijkwaardig aan de powerpivot methode.
Binnenkort zal op bietl hier een demo te bewonderen zijn.
ps.
Natuurlijk kan het ook geavanceerder er kan er in combinatie met php gebruik gemaakt worden van prompts (reportdata.php?input1="waarde").
By user: Admin | On date: April 13, 2013
Momenteel ben ik bezig om de webpagina opnieuw form te geven zodat het voor mij en anderen hopelijk wat praktischer wordt.

Een van de belangrijkste redenen is dat lists, quotes en en paar andere effecten niet langer lekker lopen.
Naast de nodige cosmetische ingrepen worden er aardig wat nieuwe classes bijgeschreven en probeer ik alle sql uit de php code te halen.
Verder komt er een sectie projecten waar ik de nieuwe acties tbv bietl kan uitzetten.
Voor nu zijn dit:
- Redesign
- Excel based reporting example.
- Rss / trends reporting
- Etl back up and running.
By user: Admin | On date: February 24, 2013
Microstrategy is een geweldige tool om rapportages mee te maken.
In essenties genereert microstratey sql code die deze vervolgens tegen een database afvuurt.
De laatste sql die microstrategy afvuurt is een select query die de data overbrengt naar de intelligent server; deze select is ALTIJD zonder where clause.
In de intelligent server vinden de laatste olap berekeningen plaats (smart metrics, running sums e.d.).
Hier zit nu precies de crux in. Running sum wordt gedefinieerd als een olap functie; dit maak je expliciet door deze op te nemen als een derrived metric (niet doen dus).
Stel je wilt een running sum van het gehele jaar over de weken maar je wilt alleen de laatste 10 regels opnemen in de dataset.
Zeg maar een view filter maar dan op de dataset.
Stappen:
- Maak metric over de te summen waarde. verander de sum in Runningsum .. en bij de properties order by week (break by gebruiken indien je meerdere waardes in de pageby, kolommen hebt).
- Filter de data op het rapport voor het huidige jaar.
- Opende de vldb properties van het rapport.
- Ga naar het tabel post select properties.
Hier kun je een stukje sql code toevoegen; bijvoorbeeld ' where Year_week >= 2013-01'
Met de view sql optie kun je vrij gemakkelijk zien of dit het resultaat oplevert wat je wilt.
Meer documentatie omtrent microstratey vldb:
http://mstr4ed.blogspot.nl/2011/12/comprehensive-list-of-vldb-properties.html
google books: Microstrategy engine