Analysis Services-klientbibliotek
gäller för: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
Klientbibliotek är nödvändiga för att klientprogram och verktyg ska kunna ansluta till Analysis Services. Microsoft-klientprogram som Power BI Desktop, Excel, SQL Server Management Studio (SSMS) och Analysis Services-projekttillägget för Visual Studio installerar alla tre klientbiblioteken och uppdaterar dem tillsammans med regelbundna programuppdateringar. Anpassade klientprogram för Analysis Services kan också kräva att ett eller flera av dessa klientbibliotek installeras. Nya versioner av klientbiblioteken uppdateras ungefär varje månad.
Viktigt: Innan du hämtar de senaste versionerna bör du se Överväganden och begränsningar.
Ladda ned den senaste
Windows Installer
Ladda ned | Version |
---|---|
MSOLAP (amd64) | 17.0.4.15 |
MSOLAP (x86) | 17.0.4.15 |
AMO | 19.84.1.0 |
ADOMD | 19.84.1.0 |
Obs! Windows Installer-nedladdningar för Analysis Services Management Objects (AMO/TOM) och ADOMD uppdateras inte längre och kommer inte att vara tillgängliga efter den 31 december 2024. Program som förlitar sig på dessa Windows Installer-nedladdningar ska migreras till NuGet-paket.
NuGet-paket
Analysis Services Management Objects (AMO/TOM) och ADOMD-klientbibliotek är tillgängliga som installationsbara paket från NuGet.org. Vi rekommenderar starkt att du migrerar till NuGet-referenser i stället för att använda Windows Installer.
NuGet-paketets samlingar AssemblyVersion följer semantisk versionshantering: MAJOR.MINOR.PATCH. NuGet-referenser läser in den förväntade versionen även om det finns en annan version i GAC (till följd av MSI-installationen). PATCH ökas för varje version. AMO- och ADOMD-versioner hålls synkroniserade.
Från och med juli 2024 innehåller AMO- och ADOMD-paketen versioner med flera körningar för alla målkörningar som stöds, både .NET FX och .NET Core. tidigare versioner av paketen som endast riktar sig mot en enda körning, antingen .NET FX eller .NET Core, är tillgängliga för bakåtkompatibilitet, men uppdateras inte längre.
Från och med september 2022, AMO (AMO/TOM) och ADOMD .Net Core (version 19.48.0.0) förbättras HTTP-baserad kommunikation med molntjänster som Power BI och Azure Analysis Services avsevärt. Vi rekommenderar att du uppdaterar till den senaste versionen för att dra nytta av prestandaförbättringarna.
Från och med februari 2021 är .NET Core runtime-stöd tillgängligt för AMO- och ADOMD-klientpaketen. Det finns dock några scenarier som inte stöds av .NET Core-versionerna. Mer information finns i överväganden och begränsningar senare i den här artikeln.
AMO och ADOMD
Paket | Version |
---|---|
AMO | 19.87.7.0 |
ADOMD | 19.87.7.0 |
Obs!
De nya multi-runtime-paketen har inte längre suffixet ".retail.amd64" i paketidentiteten och kallas nu helt enkelt Microsoft.AnalysisServices och Microsoft.AnalysisServices.AdomdClient.
De äldre .NET Framework- och .NET Core-paketen är fortfarande tillgängliga i nuget.org för bakåtkompatibilitet under den gamla identiteten med suffixet ".retail.amd64" för .NET Framework och ". NetCore.retail.amd64" suffix för .NET Core.
Lägsta nödvändiga versioner
TLS-protokollet (Transport Layer Security) version 1.0/1.1 var inaktuell i Microsoft Entra-ID den 30 juni 2021. TLS 1.2 eller senare krävs nu. TLS 1.2 stöds inte i tidigare versioner av Analysis Services-klientbiblioteken. Nyare klientbiblioteksversioner omfattar stöd för TLS 1.2 och senare utöver andra viktiga säkerhetsförbättringar.
För att minimera risker och potentiella säkerhetsrisker, från och med 30 juni 2021, kräver förbättrad säkerhet i Azure Analysis Services och Power BI följande eller högre versioner:
Klient-lib | Filversion | Version |
---|---|---|
MSOLAP | 2018.151.61.21 | 15.1.61.21 |
AMO | 15.1.61.21 | 19.12.3.0 |
ADOMD | 15.1.61.21 | 19.12.3.0 |
Överväganden och begränsningar
AMO och ADOMD
Från och med version 19.84.6 är stödet för .NET FX 4.5 och .NET Core 3.0 i de hanterade sammansättningarna inte längre tillgängligt. AS-sammansättningar på klientsidan släpps nu med stöd endast för .NET FX 4.7.2, samt .NET 6.0 och .NET 8.0.
Från och med version 19.82.0.0 stöder AMO och ADOMD Service Principal-profiler för autentisering, som i följande exempel på en anslutningssträng. För mer information, se Använd tjänstehuvudprofiler för att hantera kunddata i multitenant-appar. Användare kan inte ansluta till arbetsytor som är associerade med en Premium-Per-User-licens med hjälp av tjänstens huvudnamnsprofiler via XMLA-slutpunkten.
Data Source=powerbi://api.powerbi.com/v1.0/myorg/<WorkspaceName>;User ID=app:<service principal id>@<tenant id>;SPN Profile=<service-principal profile id>;Password=<service-principal's secret>
Från och med version 19.67.0 stöder anslutningsobjekt som Microsoft.AnalysisServices.AdomdClient.AdomdConnection och Microsoft.AnalysisServices.Server en ny AccessToken egenskap som gör det möjligt att skicka externa OAuth-token som ska användas av XMLA-anslutningsskiktet. Mer information finns i Egenskaper för anslutningssträng – Användar-ID=...; Password=.
Från och med version 19.42.0.4 använder ADOMD.NET och AMO/TOM MSAL (Microsoft.Identity.Client) version 4.43.0 eller senare i stället för ADAL för att autentisera användare med Microsoft Entra-ID när du upprättar en anslutning till molnbaserade tjänster som Power-BI och Azure Analysis Services. Om programmet eller en annan komponent som programmet är beroende av använder MSAL kan det vara nödvändigt att uppdatera programmets omdirigeringsinställningar för bindning om det finns konflikter mellan de versioner av MSAL som läses in av komponenterna.
AMO och ADOMD .Net Core
Scenarier som stöds är anslutningar till Azure Analysis Services, Power BI Premium och SQL Server Analysis Services. TCP-baserad anslutning stöds endast för Windows-datorer.
Interaktiv inloggning med Microsoft Entra-ID stöds endast för Windows-datorer. .NET Core Desktop-körmiljö krävs.
Beroende i MSAL kräver version 4.43.0 eller senare.
Version 19.14.0 av .Net Core-klientbiblioteken lanserade förhandsversionsstöd för Self-Contained-utgivning (både i en publicerad katalog och i enfilsläge), utöver stöd för användning av .NET 5.0-projekt. Flera problem som rör anslutning till SQL Server Analysis Services som identifierades i den tidigare versionen har åtgärdats.
Version 19.12.7.2 av .Net Core-klientbiblioteken har infört stöd för SQL Server Analysis Services. Lägre förhandsversioner stödde endast Azure Analysis Services och semantiska Power BI-modeller.
AMO
Från och med version 19.84.6 betraktas stödet för TMDL i AMO\TOM som i General-Availability status, och det kommer inte att finnas några bakåtkompatibla ändringar i API-ytan.
Version 19.12.3.0 av AMO-klientbiblioteket introducerar en ny uppräkning Microsoft.AnalysisServices.DataType. Den tidigare uppräkningen, Microsoft.AnalysisServices.Tabular.DataType, kvarstår fortfarande. Om koden refererar till den tidigare uppräkningen som DataType- i en kodfil med instruktioner till båda namnrymderna (Microsoft.AnalysisServices, Microsoft.AnalysisServices.Tabular), på grund av tvetydigheten, kan du få ett fel när du kompilerar. Lös felet genom att fullständigt kvalificera referensen till uppräkningen.
Version 19.61.1.4 av AMO-klientbiblioteket introducerar en ändring i transaktionsåterställningsbeteendet för Microsoft.AnalysisServices.Server. I tidigare versioner skickar ett anrop till Server.RollbackTransaction() en begäran till motorn om att återställa transaktionen och sedan försöka återställa lokala ändringar. Till skillnad från tidigare versioner, i 19.61.1.4 och senare, om lokala ändringar inte kan återställas på ett säkert sätt, blockerar tabelldatabaser som ingår i transaktionen ytterligare ändringar tills de kan synkroniseras helt och de föråldrade ändringarna från transaktionen som återställdes tas bort. En InvalidOperationException- utlöses när en ändring görs i den relevanta tabelldatabasen. Om koden anropar Server.RollbackTransaction()rekommenderar vi att du följer det anropet med en fullständig synkronisering [Database.Refresh(true)] för alla tabelldatabaser som ändras som en del av transaktionen.
Från och med version 19.77.0, när du klonar eller kopierar ett MetadataObject till en annan instans av ett MetadataObject med hjälp av Tabular Object Model (TOM), returnerar TOM null för egenskaper som korsrefererar objekt utanför MetadataObjects direkta träd av underordnade objekt. Du måste lägga till den klonade MetadataObject-instansen i den semantiska modellen så att korsreferenser till objekt utanför MetadataObject-trädet kan matchas.
När du till exempel klonar en tabell med en partition som refererar till ett namngivet uttryck i en EntityPartitionSource returnerar egenskapen ExpressionSource för EntityPartitionSource null tills den klonade tabellen läggs till i den semantiska modellen som i kodfragmentet nedan så att den klonade ExpressionSource-referensen kan matchas. Klonen måste läggas till i modellen eftersom det namngivna uttryck som korsrefereras är medlem i modellens samling av uttryck och inte en del av tabellens hierarki av underordnade objekt.
Table tableClone = model.Tables[0].Clone();
anotherModel.Tables.Add(tableClone);
ADOMD
Från och med ADOMD (både .NET Framework och .NET Core) version 19.61.1.4 är komprimering fullt tillgänglig i XMLA-transportskiktet. Tidigare versioner efter version 19.55.3.1 implementerade delvis stöd för komprimering. Rapporter om problem med dessa versioner togs emot. Dessa problem har åtgärdats som en del av 16.61.1.4-versionen. Se till att uppgradera till 19.61.1.4 eller senare om du har problem med komprimering.
MSOLAP
Från och med version 16.0.139.27 stöder MSOLAP tjänsthuvudnamnsprofiler för autentisering, som i följande exempel på anslutningssträngar. För mer information, se Använd tjänstehuvudprofiler för att hantera kunddata i multitenant-appar.
Data Source=powerbi://api.powerbi.com/v1.0/myorg/<WorkspaceName>;User ID=app:<service principal id>@<tenant id>;SPN Profile=<service-principal profile id>;Password=<service-principal's secret>
Från och med version 16.0.134.22 har MSOLAP stöd för tyst enkel Sign-On (SSO) med hjälp av Web Account Manager (WAM), som är tillgängligt på Windows 10 och senare samt Windows Server 2019 och senare. När en ny HTTP-anslutning öppnas hämtar MSOLAP en åtkomsttoken på följande sätt:
- Om cachelagring av token är aktiverat och en lämplig token är tillgänglig i cacheminnet använder MSOLAP den cachelagrade token.
- Om en lämplig cachelagrad token inte är tillgänglig försöker MSOLAP hämta en åtkomsttoken tyst via WAM.
- Om enkel inloggning med WAM misslyckades återgår MSOLAP till interaktiv autentisering och öppnar inloggningsfönstret.
Användare kan kringgå det tysta SSO-flödet och omedelbart starta den interaktiva autentiseringsupplevelsen genom att ange ett "tomt" användar-ID i anslutningssträngen (användar-ID=').
Från och med version 16.0.43.20 använder MSOLAP MSAL (Microsoft.Identity.Client) version 4.43.0 eller senare i stället för ADAL för att autentisera användare med Microsoft Entra-ID när du upprättar en anslutning till molnbaserade tjänster som Power-BI och Azure Analysis Services. Om ditt program eller en annan komponent som programmet är beroende av använder MSAL kan det vara nödvändigt att uppdatera programmets omdirigeringsinställningar för bindning om det finns konflikter mellan de versioner av MSAL som läses in av komponenterna
En regression relaterad till anslutningar till molnbaserade system med Microsoft Entra-ID upptäcktes i 16.0.4.17-versionen av OLEDB (MSOLAP). Den har åtgärdats i versionen 16.0.20.201. På grund av problemets art kan inte en installerad version av 16.0.4.17, samt någon annan version före 16.0.20.201, korrigeras genom att ersätta providern, även om installationen körs i reparationsläge. Vi rekommenderar att du helt avinstallerar versionen 16.0.4.17 [eller något annat problematiskt] och sedan installerar versionen 16.0.20.201 eller senare.
I en tidigare version uppdaterades MSOLAP för att ansluta till molnbaserade Analysis Services med hjälp av det hanterade Microsoft Authentication Library (MSAL). Från och med version 16.0.87.16 installerar MSOLAP-installationen inte längre den ursprungliga ursprungliga ADAL-komponenten (Azure Active Directory Authentication Library).
Förstå klientbibliotek
Analysis Services använder tre klientbibliotek. ADOMD.NET och Analysis Services Management Objects (AMO) är hanterade klientbibliotek. Och Analysis Services OLE DB Provider (MSOLAP DLL) är ett internt klientbibliotek. Normalt installeras alla tre samtidigt.
Microsoft-klientprogram som Power BI Desktop och Excel installerar alla tre klientbiblioteken och uppdaterar dem när nya versioner är tillgängliga. Beroende på version eller frekvens för uppdateringar kanske vissa klientbibliotek inte är de senaste versionerna som krävs av Azure Analysis Services och Power BI. Samma sak gäller för anpassade program eller andra gränssnitt som AsCmd, TOM ADOMD.NET. Dessa program kräver att biblioteken installeras manuellt eller programmatiskt. Klientbiblioteken för manuell installation ingår i SQL Server-funktionspaket som distributionsbara paket. Dessa klientbibliotek är dock knutna till SQL Server-versionen och kanske inte är de senaste. Se till att du alltid installerar den senaste nedladdningsbara versionen från den här artikeln.
Typer av klientbibliotek
Analysis Services OLE DB-provider (MSOLAP)
Analysis Services OLE DB Provider (MSOLAP) är det interna klientbiblioteket för Analysis Services-databasanslutningar. Den används indirekt av både ADOMD.NET och AMO och delegerar anslutningsbegäranden till dataprovidern. Du kan också anropa OLE DB-providern direkt från programkoden.
Analysis Services OLE DB-providern installeras automatiskt av de flesta verktyg och klientprogram som används för att komma åt Analysis Services-databaser. Den måste vara installerad på datorer som används för att komma åt Analysis Services-data.
OLE DB-providers anges ofta i anslutningssträngar. En Analysis Services-anslutningssträng använder en annan nomenklatur för att referera till OLE DB-providern: MSOLAP.<version>.dll.
AMO
AMO är ett hanterat klientbibliotek som används för serveradministration och datadefinition. Den installeras och används av verktyg och klientprogram. Till exempel använder SQL Server Management Studio (SSMS) AMO för att ansluta till Analysis Services. En anslutning med AMO är vanligtvis minimal och består av "data source=\<servername>"
. När en anslutning har upprättats använder du API:et för att arbeta med databassamlingar och huvudobjekt. Både Visual Studio och SSMS använder AMO för att ansluta till en Analysis Services-instans.
ADOMD
ADOMD.NET är ett klientbibliotek för hanterade data som används för att köra frågor mot Analysis Services-data. Den installeras och används av verktyg och klientprogram.
När du ansluter till en databas liknar egenskaperna för anslutningssträngen för alla tre biblioteken. Nästan alla anslutningssträngar som du definierar för ADOMD.NET med hjälp av Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectionString fungerar även för AMO och Analysis Services OLE DB Provider (MSOLAP). Mer information finns i Egenskaper för anslutningssträngar.
Kontrollera installerade versioner
OLEDDB (MSOLAP)
Gå till
C:\Program Files\Microsoft Analysis Services\AS OLEDB\
. Om du har fler än en mapp väljer du det högre talet.Högerklicka på msolap.dll>Egenskaper>Detaljer. Kontrollera egenskapen produktversion. Obs! Om filnamnet är msolap140.dllär det äldre än den senaste versionen och bör uppgraderas.
dialogrutan
AMO
Gå till
C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices\
. Om du har fler än en mapp väljer du det högre talet.Högerklicka på Microsoft.AnalysisServices>Egenskaper>Detaljer.
dialogrutan
ADOMD
Gå till
C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices.AdomdClient\
. Om du har fler än en mapp väljer du det högre talet.Högerklicka på Microsoft.AnalysisServices.AdomdClient>Egenskaper>Detaljer.
dialogrutan
Uppdatera manuellt
Klientbibliotek installeras och uppdateras vanligtvis automatiskt tillsammans med verktyg och klientprogram som använder dem. I vissa fall kanske dock klientbiblioteken inte uppdateras automatiskt och var och en måste uppdateras manuellt. Om du vill uppdatera manuellt laddar du ned och kör Paketet Windows Installer (.msi) för varje klientbibliotek.
Så här laddar du ned och uppdaterar
Klicka:
I Nedladdningarklickar du på ett Windows Installer-paket för att köra installationsprogrammet.
I inställningarna klickar du på Nästa.
Läs licensavtalet. Om du godkänner väljer du jag godkänner villkoren i licensavtaletoch klickar sedan på Nästa.
Klicka Installera.
När du är klar klickar du på Slutför.