Compartir a través de


Instalar, distribuir y hacer referencia al modelo de objetos tabulares

Se aplica a: SQL Server 2016 y versiones posteriores Analysis Services Azure Analysis Services Fabric/Power BI Premium

En este artículo se describe cómo descargar, hacer referencia y redistribuir el modelo de objetos tabulares (TOM), una biblioteca de C# para crear y administrar modelos tabulares y bases de datos en código administrado.

TOM es una extensión de la biblioteca cliente de AMO (Microsoft.AnalysisServices.dll). Para usar TOM, el modelo y la base de datos deben estar en el nivel de compatibilidad 1200 o superior.

Ensamblados AMO-TOM

AMO incluye nuevos ensamblados Core, Tabular y JSON. También incluye el ensamblado AMO original, Microsoft.AnalysisServices.dll, que ha sido parte de Analysis Services desde su primera versión. Un AMO reestructurado descarga clases comunes en un ensamblado y proporciona una división lógica entre las API tabulares y multidimensionales a través de ensamblados adicionales.

En la tabla siguiente se describe cada ensamblado:

Ensamblado Funcionalidad Clases importantes
Core
Microsoft.AnalysisServices.Core.dll
Común a las bases de datos tabulares y multidimensionales.

Proporciona control de excepciones, conexiones genéricas a una instancia y base de datos de servidor, y acceso a propiedades y métodos comunes para objetos Server y Database.
Core Server
Base de datos principal
AmoException
TOM
Microsoft.AnalysisServices.Tabular.dll, versión 13.0.1601.5 o posterior.
Crear y administrar objetos de metadatos tabulares. Servidor TOM
TOM Database
Modelo
Tabla
Columna
Relación
AMO
Microsoft.AnalysisServices.dll
Cree y administre objetos de metadatos multidimensionales, incluidas las bases de datos tabulares 1050-1103. Servidor AMO
Base de datos de AMO
Cubo
Dimensión
MeasureGroup
Json
Microsoft.AnalysisServices.Tabular.Json.dll
Un archivo DLL auxiliar que encapsula el NewtonSoftJson.dll (JSON.NET) para controlar las actualizaciones, lo que elimina el riesgo de introducir cambios funcionales en la serialización json en cargas de trabajo de servidor.

Este archivo DLL existe como una dependencia en TOM y no está pensado para usarse directamente en el código.
Ninguno.

Descripción de las dependencias de ensamblado

Para programar con AMO, la solución debe incluir referencias a archivos DLL dependientes. Tanto AMO como TOM dependen de Core porque proporciona clases base.

AMO depende de TOM porque algunas clases de clases de referencia de AMO de TOM. Por ejemplo, el objeto Database de AMO tiene una propiedad Model de tipo Model, implementada en el archivo DLL de TOM.

Dependencias de TOM de AMO

No puede distribuir Microsoft.AnalysisServices.dll sin Microsoft.AnalysisServices.Tabular.dll, pero puede hacer referencia a sus respectivos espacios de nombres sin el otro.

Elección del espacio de nombres que se va a usar en el código

En la jerarquía de objetos, cualquier objeto debajo de Database es una construcción de metadatos tabulares a través del objeto Model o una construcción de metadatos multidimensionales a través de un objeto Cube, Dimension o MeasureGroup. En el caso de las operaciones de alto nivel en el nivel servidor, base de datos, rol o seguimiento, la elección del espacio de nombres al que hacer referencia dependerá de las cargas de trabajo que el código necesite admitir.

  • Use Tabular.Server o Tabular.Database si la solución es de nivel de compatibilidad 1200 o superior, y el objeto Database con el que trabaja debe proporcionar acceso a Model, Table, Columns y otros objetos expresados como construcciones de metadatos tabulares.
  • Use AnalysisServices.Server o AnalysisServices.Database si el código de bajada hace referencia a objetos multidimensionales como Cubes, DataSources, DataSourceViews y Dimensions.

Necesitará espacios de nombres para herramientas y aplicaciones que admitan una combinación de bases de datos y tipos de modelo.

No es necesario hacer referencia al espacio de nombres Core en el código; las clases de Core son clases base creadas con el fin de proporcionar propiedades comunes, como Name y Description, para los objetos principales.

Descarga e instalación de AMO

  1. Vaya a Bibliotecas cliente.

  2. Seleccione y descargue AMO mediante Windows Installer o paquetes NuGet.

Agregar referencias

  1. En Explorador de soluciones>Agregar exploración de referencia>.

  2. Vaya a C:\Archivos de programa\Microsoft SQL Server\140\SDK\Assemblies y seleccione:

    • Microsoft.AnalysisServices.Core
    • Microsoft.AnalysisServices.Tabular
    • Microsoft.AnalysisSerivces.Tabular.Json
  3. Haga clic en OK. En Explorador de soluciones, confirme que los ensamblados existen en la carpeta Referencias.

  4. En la página de códigos, agregue el espacio de nombres Microsoft.AnalysisServces.Tabular si las bases de datos y los modelos son de nivel de compatibilidad tabular 1200 o superior.

    using Microsoft.AnalysisServices; 
    using Microsoft.AnalysisServices.Tabular;
    

    Al incluir espacios de nombres que tienen clases en común para objetos Server, Database, Role y Trace, evite referencias ambiguas mediante la cualificación del espacio de nombres que desea usar (por ejemplo, Microsoft.AnalysisServices.Tabular.Server crea una instancia de un objeto Server mediante el espacio de nombres tabular).

Redistribuir AMO y TOM con la aplicación

La redistribución de AMO y TOM se realiza a través del paquete de instalación desql_as_amo.msi o paquetes NuGet. Si va a compilar un programa de instalación para una aplicación cliente que llama a AMO o TOM, agregue sql_as_amo.msi al archivo ejecutable.

El paquete es independiente y proporciona todos los ensamblados necesarios para llamar a AMO y TOM en el código. Otros paquetes, como SQL_AS_OLEDB.msi o SQL_AS_ADOMD.msi, no son necesarios específicamente para escenarios de programación de TOM.