Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
OLAP (Online Analytical Processing) is een technologie waarmee grote zakelijke databases complexe berekeningen en trendanalyses kunnen uitvoeren. Met deze methode kunt u complexe query's uitvoeren zonder transactionele systemen te verstoren.
Zakelijke transacties en records worden opgeslagen in databases die OLTP-databases (Online Transaction Processing) worden genoemd, die zijn geoptimaliseerd voor afzonderlijke recordvermeldingen. Deze databases bevatten waardevolle informatie, maar ze zijn niet ontworpen voor analyse, dus het ophalen van gegevens is tijdrovend en moeilijk.
Om dit probleem op te lossen, extraheren OLAP-systemen efficiënt business intelligence uit gegevens. OLAP-databases zijn geoptimaliseerd voor zware lees- en schrijftaken. Ze worden gemodelleerd en opgeschoond voor effectieve analyse. OLAP-databases bewaren vaak historische gegevens voor tijdreeksanalyse.
OLAP-systemen gebruiken traditioneel multidimensionale gegevenskubussen om gegevens te ordenen op een manier die ondersteuning biedt voor complexe query's en analyses. In het volgende diagram ziet u een traditionele OLAP-systeemarchitectuur.
Naarmate de technologie vordert en zowel gegevens- als rekenschalen toenemen, worden OLAP-systemen overgeschakeld naar MPP-architecturen (Massively Parallel Processing) die door Microsoft Fabric worden ondersteund. Zie Analytische gegevensopslag voor Fabric voor meer informatie.
In het volgende diagram ziet u een moderne OLAP-systeemarchitectuur.
Semantische modellering
Een semantisch gegevensmodel is een conceptueel model dat de betekenis beschrijft van de gegevenselementen die het bevat. Organisaties hebben vaak hun eigen termen voor items en soms hebben deze termen synoniemen. Organisaties kunnen ook verschillende betekenissen hebben voor dezelfde term. Een inventarisdatabase kan bijvoorbeeld een apparaat bijhouden met behulp van een asset-id en een serienummer. Maar een verkoopdatabase kan verwijzen naar het serienummer als de asset-id. Er is geen eenvoudige manier om deze waarden te relateren zonder een model dat de relatie beschrijft.
Semantische modellering biedt een abstractieniveau voor het databaseschema, zodat gebruikers de onderliggende gegevensstructuren niet hoeven te kennen. Eindgebruikers kunnen eenvoudig query's uitvoeren op gegevens zonder aggregaties en joins uit te voeren via het onderliggende schema. Kolommen worden vaak hernoemd naar meer gebruiksvriendelijke namen om de context en betekenis van de gegevens duidelijker te maken.
Semantische modellering is voornamelijk bedoeld voor scenario's met veel leesbewerkingen, zoals analyse en business intelligence (OLAP), in plaats van meer schrijfintensieve transactionele gegevensverwerking (OLTP). Semantische modellering past bij scenario's met veel leesbewerkingen vanwege de kenmerken van een typische semantische laag:
- Aggregatiegedrag wordt zo ingesteld dat rapportagehulpprogramma's deze correct weergeven.
- Bedrijfslogica en berekeningen worden gedefinieerd.
- Tijdgeoriënteerde berekeningen worden opgenomen.
- Gegevens worden vaak uit meerdere bronnen geïntegreerd.
- Realtime analyses worden ondersteund.
Traditioneel wordt de semantische laag om deze redenen over een datawarehouse geplaatst.
Er zijn twee primaire typen semantische modellen:
Tabellaire modellen maken gebruik van relationele modelleringsconstructies, zoals modellen, tabellen en kolommen. Intern worden metagegevens overgenomen van OLAP-modelleringsconstructies, zoals kubussen, dimensies en metingen. Code en script maken gebruik van OLAP-metagegevens.
Multidimensionale modellen maken gebruik van traditionele OLAP-modelleringsconstructies, zoals kubussen, dimensies en metingen.
Analysis Services en Fabric bieden de benodigde infrastructuur en hulpprogramma's om semantische modellering effectief te implementeren.
Voorbeeld van een toepassing
Een organisatie slaat gegevens op in een grote database. Het wil deze gegevens beschikbaar maken voor zakelijke gebruikers en klanten om hun eigen rapporten te maken en analyses uit te voeren.
Ze kunnen deze gebruikers rechtstreeks toegang geven tot de database, maar deze optie heeft nadelen, waaronder beveiligingsbeheer en toegangsbeheer. En gebruikers hebben mogelijk moeite om inzicht te krijgen in het ontwerp van de database, inclusief de namen van tabellen en kolommen. Voor deze optie moeten gebruikers weten welke tabellen moeten worden opgeslagen, hoe deze tabellen moeten worden samengevoegd en hoe ze andere bedrijfslogica moeten toepassen om de juiste resultaten te krijgen. Gebruikers moeten ook een querytaal zoals SQL kennen. Deze optie leidt doorgaans tot meerdere gebruikers die dezelfde metrische gegevens rapporteren, maar met verschillende resultaten.
Een betere optie is het inkapselen van alle informatie die gebruikers nodig hebben in een semantisch model. Gebruikers kunnen eenvoudiger query's uitvoeren op het semantische model met behulp van een rapportagehulpmiddel naar keuze. De gegevens die het semantische model biedt, zijn afkomstig uit een datawarehouse, waardoor alle gebruikers één bron van waarheid kunnen bekijken. Het semantische model biedt ook gebruiksvriendelijke tabel- en kolomnamen, definieert relaties tussen tabellen, bevat beschrijvingen en berekeningen en dwingt beveiliging op rijniveau af.
Typische kenmerken van semantische modellering
Semantische modellering en analytische verwerking hebben meestal de volgende eigenschappen.
Voorwaarde | Beschrijving |
---|---|
Schema | Schema bij schrijven, sterk gehandhaafd |
Gebruikt transacties | Nee. |
Vergrendelingsstrategie | Geen |
Kan worden bijgewerkt | Nee, normaal gesproken moet de kubus opnieuw worden herberekend. |
Toevoegbaar | Nee, normaal gesproken moet de kubus opnieuw worden herberekend. |
Werklast | Zware leesbewerkingen, alleen-lezen |
Indexeren | Multidimensionale indexering |
Datumgrootte | Klein tot zeer groot formaat |
Modelleren | Tabellair of multidimensionaal |
Gegevensshape | Kubus-, ster- of sneeuwvlokschema |
Flexibiliteit van query's | Zeer flexibel |
Schaal | Groot, van honderden gigabytes (GB) tot meerdere petabytes (PB) |
Wanneer u deze oplossing gebruikt
Overweeg OLAP te gebruiken voor de volgende scenario's:
U moet snel complexe analytische en on-demand query's uitvoeren, zonder dat dit van invloed is op uw OLTP-systemen.
U wilt zakelijke gebruikers een eenvoudige manier bieden om rapporten te genereren op basis van uw gegevens.
U wilt verschillende aggregaties bieden waarmee gebruikers snelle, consistente resultaten kunnen krijgen.
OLAP is vooral handig voor het toepassen van statistische berekeningen op grote hoeveelheden gegevens. OLAP-systemen zijn geoptimaliseerd voor scenario's met veel leesbewerkingen. Met OLAP kunnen gebruikers multidimensionale gegevens ook segmenteren in segmenten die ze in twee dimensies kunnen bekijken, zoals een draaitabel. Ze kunnen de gegevens ook filteren op specifieke waarden. Gebruikers kunnen deze processen uitvoeren, ook wel snijden en snipperen van de gegevens genoemd, ongeacht of de gegevens zijn gepartitioneerd in verschillende gegevensbronnen. Gebruikers kunnen de gegevens eenvoudig verkennen zonder de details van traditionele gegevensanalyse te kennen.
Semantische modellen kunnen zakelijke gebruikers helpen complexe relaties te abstraheren en het gemakkelijker maken om gegevens snel te analyseren.
Uitdagingen
OLAP-systemen produceren ook uitdagingen:
Transacties die vanuit verschillende bronnen binnenkomen, werken voortdurend gegevens bij in OLTP-systemen. OLAP-gegevensarchieven vernieuwen doorgaans met veel tragere intervallen, afhankelijk van de bedrijfsbehoeften. OLAP-systemen passen bij strategische zakelijke beslissingen in plaats van directe reacties op wijzigingen. U moet ook een bepaald niveau van gegevensopschoning en coördinatie plannen om de OLAP-gegevensarchieven up-to-date te houden.
In tegenstelling tot traditionele, genormaliseerde relationele tabellen in OLTP-systemen, zijn OLAP-gegevensmodellen meestal multidimensionaal. Het is dus moeilijk of onmogelijk om ze rechtstreeks toe te wijzen aan entiteitsrelaties of objectgeoriënteerde modellen, waarbij elk kenmerk overeenkomt met één kolom. In plaats daarvan gebruiken OLAP-systemen doorgaans een ster- of sneeuwvlokschema in plaats van traditionele normalisatie.
OLAP in Azure
In Azure worden gegevens in OLTP-systemen, zoals Azure SQL Database, gekopieerd naar OLAP-systemen zoals Fabric of Analysis Services. Hulpprogramma's voor gegevensverkenning en visualisatie, zoals Power BI, Excel en niet-Microsoft-opties, maken verbinding met Analysis Services-servers en bieden gebruikers zeer interactieve en visueel rijke inzichten in de gemodelleerde gegevens. U kunt SQL Server Integration Services gebruiken om de stroom van gegevens van OLTP-systemen naar OLAP-systemen te organiseren. Gebruik Azure Data Factory om SQL Server Integration Services te implementeren.
De volgende Azure-gegevensarchieven voldoen aan de kernvereisten voor OLAP:
SQL Server Analysis Services biedt OLAP- en data mining-functionaliteit voor business intelligence-toepassingen. U kunt SQL Server Analysis Services installeren op lokale servers of hosten binnen een virtuele machine (VM) in Azure. Analysis Services is een volledig beheerde service die dezelfde belangrijke functies biedt als SQL Server Analysis Services. Analysis Services ondersteunt het maken van verbinding met verschillende gegevensbronnen in de cloud en on-premises in uw organisatie.
Geclusterde columnstore-indexen zijn beschikbaar in SQL Server 2014 en hoger en in SQL Database. Deze indexen zijn ideaal voor OLAP-workloads. Vanaf SQL Server 2016, inclusief SQL Database, kunt u profiteren van hybride transactionele en analytische verwerking (HTAP) via updatebare niet-geclusterde columnstore-indexen. Gebruik HTAP om OLTP- en OLAP-verwerking uit te voeren op hetzelfde platform. Deze aanpak elimineert de noodzaak van meerdere kopieën van uw gegevens en afzonderlijke OLTP- en OLAP-systemen. Zie Columnstore voor realtime operationele analyses voor meer informatie.
Criteria voor sleutelselectie
Als u de keuzes wilt beperken, beantwoordt u de volgende vragen:
Wilt u een beheerde service in plaats van uw eigen servers beheren?
Hebt u Microsoft Entra ID nodig voor beveiligde verificatie?
Moet u gegevens uit verschillende bronnen integreren, buiten uw OLTP-gegevensarchief?
Wilt u realtime analyses uitvoeren?
Fabric Real-Time Intelligence is een krachtige service in Fabric die u kunt gebruiken om inzichten te extraheren en uw gegevens in beweging te visualiseren. Het biedt een end-to-end oplossing voor gebeurtenisgestuurde scenario's, streaminggegevens en gegevenslogboeken. Ongeacht of u GB's of PB's met gegevens beheert, komen alle organisatiegegevens in beweging samen in de Real-Time hub.
Moet u vooraf geaggregeerde gegevens gebruiken, bijvoorbeeld om semantische modellen te bieden die analyse eenvoudiger maken voor zakelijke gebruikers?
Zo ja, kies dan een optie die ondersteuning biedt voor multidimensionale kubussen of semantische modellen in tabelvorm.
Aggregaties bieden om gebruikers te helpen bij het consistent berekenen van gegevensaggregaties. Vooraf geaggregeerde gegevens kunnen ook een grote prestatieverbeteringen opleveren als u meerdere kolommen in veel rijen hebt. U kunt gegevens vooraf aggregeren in multidimensionale kubussen of semantische modellen in tabelvorm.
Mogelijkheidsmatrix
De volgende tabellen geven een overzicht van de belangrijkste verschillen in mogelijkheden tussen deze services:
- Stof
- Analyse diensten
- SQL Server Analysis Services
- SQL Server met columnstore-indexen
- SQL Database met columnstore-indexen
Algemene mogelijkheden
Vermogen | Stof | Analyse diensten | SQL Server Analysis Services | SQL Server met columnstore-indexen | SQL Database met columnstore-indexen |
---|---|---|---|---|---|
Is een beheerde service | Ja | Ja | Nee. | Nee. | Ja |
MPP | Ja | Nee. | Nee. | Nee. | Nee. |
Ondersteunt multidimensionale kubussen | Nee. | Nee. | Ja | Nee. | Nee. |
Ondersteunt semantische modellen in tabelvorm | Ja | Ja | Ja | Nee. | Nee. |
Eenvoudig meerdere gegevensbronnen integreren | Ja | Ja | Ja | Geen 1 | Geen 1 |
Biedt ondersteuning voor realtime analyses | Ja | Nee. | Nee. | Ja | Ja |
Vereist een proces voor het kopiëren van gegevens uit bronnen | Optioneel 3 | Ja | Ja | Nee. | Nee. |
Microsoft Entra-integratie | Ja | Ja | Nee. | Nr . 2 | Ja |
[1] SQL Server en SQL Database kunnen geen query's uitvoeren en meerdere externe gegevensbronnen integreren, maar u kunt een pijplijn bouwen om deze functies uit te voeren met behulp van SQL Server Integration Services of Azure Data Factory. Azure VM-gehoste SQL Server heeft meer opties, zoals gekoppelde servers en PolyBase. Zie Een technologie voor gegevenspijplijnindeling kiezen voor meer informatie.
[2] Een Microsoft Entra-account biedt geen ondersteuning voor het maken van verbinding met azure-VM-gehoste SQL Server. Gebruik in plaats daarvan een Windows Server Active Directory-domeinaccount.
[3] Fabric biedt de flexibiliteit om gegevensbronnen te integreren door gegevens naar OneLake te verplaatsen via Azure Data Factory-pijplijnen of spiegeling. U kunt ook snelkoppelingen maken of realtime analyses uitvoeren op gegevensstromen zonder de gegevens te verplaatsen.
Schaalbaarheidsmogelijkheden
Vermogen | Stof | Analyse diensten | SQL Server Analysis Services | SQL Server met columnstore-indexen | SQL Database met columnstore-indexen |
---|---|---|---|---|---|
Redundante regionale servers voor hoge beschikbaarheid | Ja | Ja | Nee. | Ja | Ja |
Ondersteunt uitschalen van query's | Ja | Ja | Nee. | Ja | Ja |
Dynamische schaalbaarheid, omhoog schalen | Ja | Ja | Nee. | Ja | Ja |
Volgende stappen
- Analytische infrastructuurgegevensopslag
- Columnstore-indexen
- Een Analysis Services-server maken
- Wat is Azure Data Factory?
- Wat is Power BI?