Services en gegevensbronnen voor gegevensanalyse

Van toepassing op: SQL Server 2019 en eerder Analysis Services Azure Analysis Services Fabric/Power BI Premium

Belangrijk

Data mining werd verouderd verklaard in SQL Server 2017 Analysis Services en is nu stopgezet in SQL Server 2022 Analysis Services. Documentatie wordt niet bijgewerkt voor afgeschafte en stopgezette functies. Zie Analysis Services-compatibiliteit met eerdere versies voor meer informatie.

Voor gegevensanalyse is een verbinding met een exemplaar van SQL Server Analysis Services vereist. Gegevens uit een kubus zijn niet vereist voor gegevensanalyse en het gebruik van relationele bronnen wordt aanbevolen; Gegevensanalyse maakt echter gebruik van onderdelen die worden geleverd door de SQL Server Analysis Services-engine.

Dit onderwerp bevat informatie die u moet weten wanneer u verbinding maakt met een exemplaar van SQL Server SQL Server Analysis Services om modellen voor gegevensanalyse te maken, te verwerken, te implementeren of op te vragen.

Dataminingdiensten

Het serveronderdeel van Microsoft SQL Server SQL Server Analysis Services is de msmdsrv.exe toepassing, die gewoonlijk wordt uitgevoerd als een Windows-service. Deze toepassing bestaat uit beveiligingsonderdelen, een XML for Analysis-listeneronderdeel (XMLA), een queryprocessoronderdeel en tal van andere interne onderdelen die de volgende functies uitvoeren:

  • Parseren van instructies ontvangen van klanten

  • Metagegevens beheren

  • Transacties verwerken

  • Berekeningen verwerken

  • Dimensie- en celgegevens opslaan

  • Aggregaties maken

  • Queries inplannen

  • Objecten opslaan in cache

  • Serverresources beheren

XMLA-listener

Het XMLA-listeneronderdeel verwerkt alle XMLA-communicatie tussen SQL Server Analysis Services en de bijbehorende clients. De sql Server Analysis Services-poortconfiguratie-instelling in het msmdsrv.ini-bestand kan worden gebruikt om een poort op te geven waarop een SQL Server Analysis Services-exemplaar luistert. Een waarde van 0 in dit bestand geeft aan dat SQL Server Analysis Services luistert op de standaardpoort. Tenzij anders opgegeven, gebruikt SQL Server Analysis Services de volgende standaard TCP-poorten:

Porto Description
2383 Standaardexemplaar van SQL Server Analysis Services.
2382 Redirector voor andere exemplaren van SQL Server SQL Server Analysis Services.
Dynamisch toegewezen bij het opstarten van de server Benoemd exemplaar van SQL Server SQL Server Analysis Services.

Zie Windows Firewall configureren om Analysis Services-toegang toe te staan voor meer informatie over het beheren van de poorten die door deze service worden gebruikt.

Verbinding maken met gegevensbronnen

Wanneer u een gegevensanalysestructuur of -model maakt of bijwerkt, gebruikt u gegevens die zijn gedefinieerd door een gegevensbron. De gegevensbron bevat niet de gegevens, waaronder Excel-werkmappen, tekstbestanden en SQL Server-databases; hiermee worden alleen de verbindingsgegevens gedefinieerd. Een gegevensbronweergave (DSV) fungeert als een abstractielaag boven op die bron, voor het wijzigen of toewijzen van de gegevens die zijn verkregen uit de bron.

Het valt buiten het bereik van dit onderwerp om de verbindingsvereisten voor elk van deze bronnen te beschrijven. Zie de documentatie voor de provider voor meer informatie. In het algemeen moet u echter rekening houden met de volgende vereisten van Analysis Services wanneer u communiceert met providers:

  • Omdat gegevensanalyse een service is die wordt geleverd door een server, moet het SQL Server Analysis Services-exemplaar toegang krijgen tot de gegevensbron. Er zijn twee aspecten voor toegang: locatie en identiteit.

    Locatie betekent dat als u een model bouwt met behulp van gegevens die alleen op uw computer zijn opgeslagen en het model vervolgens op een server implementeert, het model niet kan worden verwerkt omdat de gegevensbron niet kan worden gevonden. Om dit probleem op te lossen, moet u mogelijk gegevens overdragen naar hetzelfde SQL Server-exemplaar waarop SQL Server Analysis Services wordt uitgevoerd of bestanden naar een gedeelde locatie verplaatsen.

    Identiteit betekent dat de services in SQL Server Analysis Services het gegevensbestand of de gegevensbron moeten kunnen openen met de juiste referenties. Wanneer u bijvoorbeeld het model hebt gemaakt, hebt u mogelijk onbeperkte machtigingen om de gegevens weer te geven, maar de gebruiker die de modellen op de server verwerkt en bijwerkt, heeft mogelijk beperkte of geen toegang tot de gegevens, waardoor de inhoud van een model niet kan worden verwerkt of beïnvloed. Het account dat wordt gebruikt voor het maken van verbinding met de externe gegevensbron, moet minimaal leesmachtigingen hebben voor de gegevens.

  • Wanneer u een model verplaatst, zijn dezelfde vereisten van toepassing: u moet de juiste toegang instellen tot de locatie van de oude gegevensbron, de gegevensbronnen kopiëren of een nieuwe gegevensbron configureren. U moet ook aanmeldingen en rollen overdragen of machtigingen instellen om gegevensanalyseobjecten te kunnen verwerken en bijwerken op de nieuwe locatie.

Machtigingen en servereigenschappen configureren

Voor gegevensanalyse zijn extra machtigingen vereist voor een SQL Server Analysis Services-database. De meeste eigenschappen voor gegevensanalyse kunnen worden ingesteld met behulp van het dialoogvenster Eigenschappen van Analysis Server (Analysis Services).

Zie Servereigenschappen in Analysis Services voor meer informatie over de eigenschappen die u kunt configureren.

De volgende servereigenschappen zijn van bijzonder belang voor gegevensanalyse:

  • AllowAdHocOpenRowsetQueries Hiermee bepaalt u ad-hoctoegang tot OLE DB-providers, die rechtstreeks in de geheugenruimte van de server worden geladen.

    Belangrijk

    Om de beveiliging te verbeteren, raden we u aan deze eigenschap in te stellen op false. De standaardwaarde is onwaar. Zelfs als deze eigenschap is ingesteld op false, kunnen gebruikers singleton-query's blijven maken en OPENQUERY gebruiken voor toegestane gegevensbronnen.

  • AllowedProvidersInOpenRowset Hiermee geeft u de provider op als ad-hoctoegang is ingeschakeld. U kunt meerdere providers opgeven door een door komma's gescheiden lijst met ProgID's in te voeren.

  • MaxConcurrentPredictionQueries Hiermee bepaalt u de belasting op de server die wordt veroorzaakt door voorspellingen. De standaardwaarde van 0 staat onbeperkte query's toe voor SQL Server Enterprise en maximaal vijf gelijktijdige query's voor SQL Server Standard. Query's boven de limiet worden geserialiseerd en er kan een time-out optreden.

De server biedt aanvullende eigenschappen waarmee wordt bepaald welke algoritmen voor gegevensanalyse beschikbaar zijn, inclusief eventuele beperkingen voor de algoritmen en de standaardinstellingen voor alle services voor gegevensanalyse. Er zijn echter geen instellingen waarmee u de toegang tot opgeslagen procedures voor gegevensanalyse kunt beheren. Zie Eigenschappen voor gegevensanalyse voor meer informatie.

U kunt ook eigenschappen instellen waarmee u de server kunt afstemmen en de beveiliging voor clientgebruik kunt beheren. Zie Functie-eigenschappen voor meer informatie.

Opmerking

Zie Functies die worden ondersteund door de edities van SQL Server 2012 (https://go.microsoft.com/fwlink/?linkid=232473) voor meer informatie over ondersteuning voor invoegtoepassingsalgoritmen van SQL Server.

Programmatische toegang tot gegevensanalyseobjecten

U kunt de volgende objectmodellen gebruiken om een verbinding met een Analysis Services-database te maken en te werken met gegevensanalyseobjecten:

ADO Maakt gebruik van OLE DB om verbinding te maken met een Analysis Services-server. Wanneer u ADO gebruikt, is de client beperkt tot schemarijsetquery's en DMX-instructies.

ADO.NET Communiceert beter met SQL Server-providers dan andere providers. Maakt gebruik van gegevensadapters voor het opslaan van dynamische rijensets. Maakt gebruik van het gegevenssetobject, een cache van de servergegevens die zijn opgeslagen als gegevenstabellen die kunnen worden bijgewerkt of opgeslagen als XML.

ADOMD.NET Een beheerde gegevensprovider die is geoptimaliseerd voor het werken met gegevensanalyse en OLAP. ADOMD.NET is sneller en geheugenefficiënter dan ADO.NET. ADOMD.NET kunt u ook metagegevens over serverobjecten ophalen. Aanbevolen voor clienttoepassingen, behalve wanneer .NET niet beschikbaar is.

Server ADOMD Objectmodel voor toegang tot Analysis Services-objecten rechtstreeks op de server. Wordt gebruikt door opgeslagen procedures van Analysis Services; niet voor clientgebruik.

AMO Beheerinterface voor Analysis Services die Decision Support Objects (DSO) vervangt. Voor bewerkingen zoals het herhalen van objecten zijn hogere machtigingen vereist bij het gebruik van AMO dan bij het gebruik van andere interfaces. Dat komt doordat AMO rechtstreeks toegang heeft tot metagegevens, terwijl ADOMD.NET en andere interfaces alleen toegang hebben tot de databaseschema's.

Bladeren en toegang tot servers voor het uitvoeren van queries

U kunt allerlei voorspellingen uitvoeren met behulp van een exemplaar van Analysis Services in de OLAP/Data Mining-modus, met de volgende beperkingen:

  • Als u server ADOMD gebruikt, kunt u DMX gebruiken voor toegang tot de server zonder verbinding te maken. Vervolgens kunt u de resultaten rechtstreeks naar een gegevenstabel kopiëren. U kunt server-ADOMD echter niet gebruiken met externe exemplaren; u kunt alleen een query uitvoeren op de lokale server.

  • ADO.NET biedt geen ondersteuning voor benoemde parameters voor gegevensanalyse. U moet ADOMD.NET gebruiken.

  • ADOMD.NET kunt u een hele tabel doorgeven voor gebruik als parameter; Daarom kunt u gegevens op de client gebruiken of gegevens die niet beschikbaar zijn voor de server. U kunt ook vormgegeven tabellen gebruiken als voorspellingsinvoer.

Opgeslagen procedures voor gegevensanalyse gebruiken

Een veelvoorkomend gebruik van opgeslagen procedures is het inkapselen van query's voor hergebruik. De client kan CALL gebruiken om opgeslagen procedures uit te voeren, waaronder opgeslagen procedures van het SQL Server Analysis Services-systeem.

Als de procedure een datataset retourneert, ontvangt de client een datataset of datatabel met een geneste tabel die de rijen bevat. Als u bijvoorbeeld een query maakt op basis van de modelinhoud, retourneert de query het hele model. Om te voorkomen dat u te veel rijen terugbrengt, kunt u opgeslagen procedures schrijven met behulp van het ADOMD+-objectmodel.

Als u een opgeslagen serverprocedure wilt schrijven, moet u verwijzen naar de naamruimte Microsoft.AnalysisServices.AdomdServer. Zie Door de gebruiker gedefinieerde functies en opgeslagen procedures voor meer informatie over het maken en gebruiken van opgeslagen procedures.

Opmerking

Opgeslagen procedures kunnen niet worden gebruikt om de beveiliging van gegevensserverobjecten te wijzigen. Wanneer u een opgeslagen procedure uitvoert, wordt de huidige context van de gebruiker gebruikt om de toegang tot alle serverobjecten te bepalen. Daarom moeten gebruikers over de juiste machtigingen beschikken voor databaseobjecten waartoe ze toegang hebben.

Zie ook

Fysieke architectuur (Analysis Services - multidimensionale gegevens)
Fysieke architectuur (Analysis Services - Gegevensanalyse)
Beheer van oplossingen en objecten voor gegevensanalyse