OLAP-kubussen
Gepubliceerd: juli 2016
Is van toepassing op: System Center 2012 SP1 - Service Manager, System Center 2012 R2 Service Manager, System Center 2012 - Service Manager
In de volgende afbeelding wordt een afbeelding van SQL Server BIDS (Business Intelligence Development Studio) weergegeven met de belangrijkste onderdelen die vereist zijn voor OLAP-kubussen (Online Analytical Processing). Deze onderdelen zijn de gegevensbron, gegevensbronweergave, kubussen en dimensies. Hieronder worden de OLAP-kubusonderdelen en de acties beschreven die gebruikers hiermee kunnen uitvoeren.
Gegevensbron
Een gegevensbron is de oorsprong van alle gegevens in een OLAP-kubus. Een OLAP-kubus kan worden verbonden met een gegevensbron om onbewerkte gegevens te lezen en te verwerken om aggregaties en berekeningen uit te voeren voor de gekoppelde metingen. De gegevensbronnen voor alle OLAP-kubussen in Service Manager zijn de datamarts, waaronder de datamarts voor Operations Manager en Configuration Manager. Verificatiegegevens over de gegevensbron moeten worden opgeslagen in SSAS (SQL Server Analysis Services) om het juiste machtigingsniveau vast te stellen.
Gegevensbronweergave
De gegevensbronweergave bestaat uit een verzameling weergaven die de dimensie-, feiten- en outrigger-tabellen uit de gegevensbron vertegenwoordigen, bijvoorbeeld de Service Manager-datamarts. De gegevensbronweergave bevat alle relaties tussen tabellen, zoals primaire en refererende sleutels. De gegevensbronweergave bepaalt dus hoe de SSAS-database wordt toegewezen aan het relationele schema. Daarnaast biedt de gegevensbronweergave een abstractielaag over de relationele database. Met deze abstractielaag kunnen er relaties tussen feiten- en dimensietabellen worden gedefinieerd, zelfs als er geen relaties binnen de relationele brondatabase bestaan. In de gegevensbronweergave kunnen ook benoemde berekeningen, aangepaste metingen en nieuwe kenmerken worden gedefinieerd die oorspronkelijk mogelijk niet aanwezig zijn in het dimensionale schema van het datawarehouse. Met een benoemde berekening waarmee een Booleaanse waarde voor Incidents Resolved wordt gedefinieerd, wordt de waarde bijvoorbeeld als waar berekend als de incidentstatus is opgelost of gesloten. Met de benoemde berekening Service Manager kunt u vervolgens een meting definiëren om nuttige informatie weer te geven, bijvoorbeeld het percentage opgeloste incidenten, het totale aantal opgeloste incidenten en het totale aantal incidenten dat niet is opgelost.
Een ander snel voorbeeld van een benoemde berekening is ReleasesImplementedOnSchedule. Deze benoemde berekening biedt een snelle statuscontrole met betrekking tot het aantal releaserecords waarin de werkelijke einddatum voor of op de geplande einddatum valt.
OLAP-kubussen
Een OLAP-kubus is een gegevensstructuur waarmee beperkingen van relationele databases worden overwonnen door snelle gegevensanalyses te bieden. Met OLAP-kubussen kunnen grote hoeveelheden gegevens worden weergegeven en verzameld terwijl gebruikers zoektoegang tot de gegevenspunten wordt geboden zodat de gegevens kunnen worden getotaliseerd en opgedeeld om de grootste verscheidenheid aan vragen te kunnen verwerken die mogelijk relevant zijn voor een gebruiker.
Dimensies
Een dimensie in SSAS verwijst naar een dimensie uit het Service Manager-datawarehouse. In System Center 2012 – Service Manager komt een dimensie min of meer overeen met een management pack-klasse. Elke management pack-klasse heeft een lijst met eigenschappen, terwijl elke dimensie een lijst met kenmerken heeft, waarbij elk kenmerk wordt toegewezen aan één eigenschap in een klasse. Met dimensies kunnen gegevens worden gefilterd, gegroepeerd en gelabeld. U kunt computers bijvoorbeeld filteren op het geïnstalleerde besturingssysteem en personen in categorieën groeperen op geslacht of leeftijd. De gegevens kunnen vervolgens worden weergegeven in een indeling waarbij de gegevens op natuurlijke wijze in deze hiërarchieën en categorieën worden gecategoriseerd om een grondigere analyse mogelijk te maken. Dimensies kunnen ook natuurlijke hiërarchieën hebben om gebruikers in staat te stellen in te zoomen op meer gedetailleerde informatie. De dimensie Datum heeft bijvoorbeeld een hiërarchie die vervolgens kan worden weergegeven op jaar, kwartaal, maand, week en dag.
In de volgende afbeelding wordt een OLAP-kubus met de dimensies Datum, Regio en Product weergegeven.
Microsoft-teamleden kunnen bijvoorbeeld een snel en eenvoudig overzicht van de verkoop van de Xbox 360-gameconsole in 2010 weergeven. Vervolgens kunnen ze ook inzoomen om de verkoopcijfers voor een specifiekere periode te bekijken. Bedrijfsanalisten kunnen onderzoeken hoe de verkoop van Xbox 360-consoles is beïnvloed door de introductie van het nieuwe consoledesign en de game-ervaring zonder controller van Kinect voor de Xbox 360. Hiermee kunnen ze verkooptrends identificeren en bepalen in welke opzichten de bedrijfsstrategie mogelijk moet worden herzien. Wanneer de gegevens worden gefilterd op basis van de datumdimensie, kunnen deze gegevens snel worden geleverd en gebruikt. Dit opdelen van gegevens is alleen mogelijk omdat de dimensies zijn ontworpen met kenmerken en gegevens die eenvoudig kunnen worden gefilterd en gegroepeerd door de klant.
In System Center 2012 – Service Manager delen alle OLAP-kubussen een gemeenschappelijk verzameling dimensies. Voor alle dimensies wordt de primaire datawarehouse-datamart als bron gebruikt, zelfs in scenario's met meerdere datamarts. In scenario's met meerdere datamarts kan dit leiden tot dimensiesleutelfouten tijdens het verwerken van de kubus.
Maateenheidgroep
Met betrekking tot datawarehouses komen de concepten maateenheidgroep en feit min of meer overeen. Zoals feiten metingen bevatten in een datawarehouse, bevat een maateenheidgroep metingen voor een OLAP-kubus. Alle metingen in een OLAP-kubus die zijn afgeleid van één feitentabel in een gegevensbronweergave kunnen worden beschouwd als een maateenheidgroep. Het kan echter voorkomen dat de metingen in een OLAP-kubus worden afgeleid van meerdere feitentabellen. Metingen met hetzelfde detailniveau worden verenigd in één maateenheidgroep. Op basis van maateenheidgroepen wordt gedefinieerd welke gegevens in het systeem worden geladen, hoe de gegevens worden geladen en hoe de gegevens worden gekoppeld aan de multidimensionale kubus.
Elke maateenheidgroep bevat ook een lijst met partities, waarin de werkelijke gegevens in afzonderlijke, niet-overlappende secties zijn opgenomen. Maateenheidgroepen bevatten tevens een ontwerp voor aggregatie waarmee de vooraf samengevatte gegevensverzamelingen worden gedefinieerd die voor elke maateenheidgroep worden berekend om de prestaties van gebruikersquery's te verbeteren.
Metingen
Metingen zijn de numerieke waarden die gebruikers willen opdelen, totaliseren en analyseren. Metingen zijn een van de fundamentele redenen waarom u OLAP-kubussen wilt maken met een datawarehouse-infrastructuur. Met SSAS kunt u OLAP-kubussen maken waarmee bedrijfsregels en berekeningen op de indeling worden toegepast en metingen in een aanpasbare indeling worden weergegeven. Bij het ontwikkelen van OLAP-kubussen hebt u vooral veel tijd nodig om te bepalen welke metingen moeten worden weergegeven en hoe deze worden berekend.
Metingen zijn waarden die doorgaans kunnen worden toegewezen aan numerieke kolommen in een datawarehouse-feitentabel, maar ze kunnen ook worden gemaakt voor kenmerken van dimensies en losstaande dimensies. Deze metingen zijn de belangrijkste waarden van een OLAP-kubus die worden geanalyseerd en vormen de belangrijkste bron van informatie voor eindgebruikers die de OLAP-kubus doorzoeken. Een voorbeeld van een meting in het datawarehouse is ActivityTotalTimeMeasure. ActivityTotalTimeMeasure is een meting uit ActivityStatusDurationFact die staat voor de tijd dat elke activiteit een bepaalde status heeft. Het detailniveau van een meting is afhankelijk van de dimensies waarnaar wordt verwezen. Het detailniveau van het relatiefeit ComputerHostsOperatingSystem bestaat bijvoorbeeld uit de dimensies Computer en Besturingssysteem.
Op basis van metingen worden aggregatiefuncties berekend om verdere gegevensanalyse mogelijk te maken. De meest voorkomende aggregatiefunctie is Som. Met een algemene OLAP-kubusquery kan bijvoorbeeld de totale tijd voor alle activiteiten met de status In Progress bij elkaar worden opgeteld. Enkele andere algemene aggregatiefuncties zijn Min, Max en Aantal.
Wanneer de onbewerkte gegevens zijn verwerkt in een OLAP-kubus, kunnen gebruikers complexere berekeningen en query's uitvoeren met MDX (Multidimensional Expressions) om hun eigen metingexpressies of berekende leden te definiëren. MDX is de industriestandaard voor het doorzoeken en openen van gegevens die zijn opgeslagen in OLAP-systemen. SQL Server is niet ontworpen om te werken met het gegevensmodel dat wordt ondersteund door multidimensionale databases.
Inzoomen
Wanneer een gebruiker inzoomt op de gegevens in een OLAP-kubus, analyseert de gebruiker de gegevens op een ander samenvattingsniveau. Het detailniveau van de gegevens wordt gewijzigd wanneer de gebruiker inzoomt om de gegevens op verschillende niveaus in de hiërarchie te bekijken. Wanneer de gebruiker inzoomt, schakelt hij of zijn van samenvattingsinformatie over naar meer gedetailleerde gegevens. Hier volgen enkele voorbeelden van inzoomen:
U kunt inzoomen op gegevens om te kijken naar demografische informatie over de bevolking van de Verenigde Staten en vervolgens kunt u inzoomen op de staat Washington, het grootstedelijke gebied van Seattle, de plaats Redmond en ten slotte het aantal werknemers bij Microsoft.
U kunt inzoomen op omzetcijfers voor Xbox 360-consoles in 2011 en vervolgens kunt u inzoomen op het vierde kwartaal van het jaar, de maand december, de week voor Kerstmis en ten slotte Kerstavond.
In detail analyseren
Wanneer gebruikers gegevens in detail analyseren, willen ze alle afzonderlijke transacties bekijken die hebben bijgedragen aan de geaggregeerde gegevens van de OLAP-kubus. De gebruiker kan de gegevens dus op een laagste detailniveau ophalen voor een bepaalde meetwaarde. Wanneer u de omzetcijfers voor een bepaalde maand en productcategorie krijgt, kunt u die gegevens bijvoorbeeld in detail analyseren om een lijst met elke tabelrij in die cel met gegevens te bekijken.
Inzoomen en in detail analyseren worden nog wel eens door elkaar gehaald. Het belangrijkste verschil tussen deze twee concepten is dat inzoomen wordt uitgevoerd op een vooraf gedefinieerde hiërarchie van gegevens, bijvoorbeeld Verenigde Staten, Washington, Seattle, in de OLAP-kubus. Bij in detail analyseren wordt direct naar het laagste detailniveau van gegevens gegaan en wordt een verzameling rijen uit de gegevensbron gehaald die zijn geaggregeerd in één cel.
KPI
Organisaties kunnen KPI's (Key Performance Indicators) gebruiken om de status en prestaties van hun onderneming te bepalen door hun progressie ten opzichte van hun doelstellingen te meten. KPI's zijn metrische bedrijfswaarden die kunnen worden gedefinieerd om de progressie met betrekking tot bepaalde vooraf gedefinieerde doelstellingen en doelen te controleren. Een KPI heeft doorgaans een doelwaarde en een werkelijke waarde. De doelwaarde is een kwantitatief doel dat essentieel is voor het succes van de organisatie. KPI's worden doorgaans in groepen in een scorecard weergegeven om de algehele status van het bedrijf in één snelle momentopname weer te geven.
Een voorbeeld van een KPI is om alle wijzigingsaanvragen binnen 48 uur te voltooien. Een KPI kan worden gebruikt om te meten welk percentage van de wijzigingsaanvragen binnen die periode wordt voltooid. U kunt dashboards maken om KPI's visueel te maken. U kunt bijvoorbeeld een KPI-doelwaarde van 75 procent definiëren voor de voltooiing van alle wijzigingsaanvragen binnen 48 uur.
Partities
Een partitie is een gegevensstructuur waarin enkele of alle gegevens in een maateenheidgroep worden opgenomen. Elke maateenheidgroep bestaat uit partities. Met een partitie wordt een subset gedefinieerd van de feitgegevens die worden geladen in de maateenheidgroep. In SSAS Standard Edition is slechts één partitie per maateenheidgroep toegestaan terwijl een maateenheidgroep in SSAS Enterprise Edition meerdere partities kan bevatten. Partities zijn zeer transparant voor de eindgebruiker, maar ze hebben veel invloed op de prestaties en schaalbaarheid van OLAP-kubussen. Alle partities voor een maateenheidgroep bevinden zich altijd in dezelfde fysieke database.
Met partities kan een beheerder een OLAP-kubus beter beheren en de prestaties van de OLAP-kubus verbeteren. U kunt de gegevens in een partitie van een maateenheidgroep bijvoorbeeld verwijderen of opnieuw verwerken zonder dat dit gevolgen heeft voor de rest van de maateenheidgroep. Als u nieuwe gegevens in een feitentabel laadt, worden alleen de partities beïnvloed waarin de nieuwe gegevens worden geladen.
Met partities kunt u ook de verwerking en queryprestaties van OLAP-kubussen verbeteren. SSAS kan meerdere partities parallel verwerken, waardoor de CPU- en geheugenresources op de server veel efficiënter worden gebruikt. Tijdens het uitvoeren van een query kan SSAS ook gegevens uit meerdere partities ophalen, verwerken en totaliseren. Alleen de partities met de gegevens die relevant zijn voor een query worden gescand, waardoor de totale hoeveelheid invoer en uitvoer kleiner wordt.
U kunt partities bijvoorbeeld gebruiken om de feitelijke gegevens voor elke maand in een maandelijkse partitie te plaatsen. Aan het einde van elke maand worden alle nieuwe gegevens in een nieuwe partitie geplaatst, zodat de gegevens op natuurlijke wijze worden verdeeld zonder overlappende waarden.
Aggregaties
Aggregaties in een OLAP-kubus zijn vooraf samengevatte gegevenssets. Ze zijn vergelijkbaar met een SQL SELECT-instructie en een GROUP BY-component. SSAS kan deze aggregaties gebruiken bij antwoorden op query's om het aantal benodigde berekeningen te verkleinen en de antwoorden sneller terug te sturen naar de gebruiker. Ingebouwde aggregaties in de OLAP-kubus verkleinen het aantal aggregaties dat SSAS moet uitvoeren bij de verwerking van query's. Met de juiste aggregaties kunt u queryprestaties aanzienlijk verbeteren. Dit is vaak een doorlopend proces tijdens de levensduur van de OLAP-kubus als de query's en het gebruik van de kubus worden gewijzigd.
U kunt een basisset aggregaties maken die bruikbaar is voor de meeste query's die worden uitgevoerd op de OLAP-kubus. Voor elke partitie van een OLAP-kubus in een maateenheidgroep worden aggregaties samengesteld. Bij de samenstelling van een aggregatie worden bepaalde kenmerken van dimensies opgenomen in de vooraf samengevatte gegevensset. Gebruikers kunnen snel gegevens opvragen op basis van deze aggregaties terwijl ze door de OLAP-kubus bladeren. U moet aggregaties zorgvuldig ontwerpen, omdat het aantal potentiële aggregaties zo groot is dat het onredelijk veel tijd en opslagruimte kost om ze allemaal samen te stellen.
Service Manager gebruikt de volgende twee opties bij het samenstellen en ontwerpen van aggregaties voor OLAP-kubussen in Service Manager:
Bereikte prestatieverbetering
Op gebruik gebaseerde optimalisatie
De optie Bereikte prestatieverbetering definieert welk percentage aggregaties wordt gebouwd. Als u deze optie instelt op de standaard- en aanbevolen waarde van 30 procent, worden er aggregaties samengesteld die een geschatte prestatieverbetering van 30 procent opleveren voor de OLAP-kubus. Dit betekent dus niet dat 30 procent van de mogelijke aggregaties worden samengesteld.
Met op gebruik gebaseerde optimalisatie kan SSAS de aanvragen voor gegevens vastleggen, zodat de gegevens worden opgenomen in het ontwerpproces voor de aggregaties als er een query wordt uitgevoerd. Vervolgens worden de gegevens door SSAS beoordeeld om te bepalen welke aggregaties er moeten worden samengesteld om de beste geschatte prestatieverbetering te bereiken.
Zie ook