Modelo de objetos y conceptos de AMO
En este tema se facilita una definición de AMO (Objetos de administración de análisis), la relación de AMO con otras herramientas y bibliotecas que se proporcionan en la arquitectura de Microsoft SQL Server Analysis Services, así como una explicación conceptual de todos los objetos principales en AMO.
AMO es una colección completa de clases de administración de Analysis Services que se puede usar mediante programación, bajo el espacio de nombres de Microsoft.AnalysisServices, en un entorno administrado. Las clases están incluidas en el archivo AnalysisServices.dll, que normalmente se encuentra donde el programa de instalación de SQL Server instala los archivos, en la carpeta \100\SDK\Assemblies\. Para usar clases de AMO, incluya una referencia a este ensamblado en sus proyectos.
Mediante AMO puede crear, modificar y eliminar objetos tales como cubos, dimensiones, estructuras de minería de datos y bases de datos de Analysis Services; se pueden realizar acciones desde su aplicación en .NET Framework sobre todos estos objetos. Además, puede procesar y actualizar la información almacenada en las bases de datos de Analysis Services.
Con AMO no se pueden consultar datos. Para consultar datos, use ADOMD.NET.
Este tema contiene las siguientes secciones:
AMO en la arquitectura de Analysis Services
Arquitectura de AMO
Usar AMO
Automatizar tareas administrativas con AMO
AMO en la arquitectura de Analysis Services
Por diseño, AMO está pensado únicamente para administrar objetos, no para consultar datos. Si el usuario necesita consultar datos de Analysis Services de una aplicación cliente, ésta aplicación debería usar ADOMD.NET.
Arquitectura de AMO
AMO es una biblioteca completa de clases diseñada para administrar una instancia de Analysis Services de una aplicación cliente en código administrado en la versión 2.0 de .NET Framework.
La biblioteca de clases AMO está diseñada como una jerarquía de clases, donde se deben crear instancias de ciertas clases antes que otras para poder utilizarlas en su código. También se pueden crear en su código instancias de clases auxiliares en cualquier momento, aunque probablemente habrá creado una o más instancias de las clases de jerarquía antes de usar cualquiera de las clases auxiliares.
La ilustración siguiente es una vista de alto nivel de la jerarquía AMO que incluye las clases principales. La ilustración muestra la posición de las clases entre sus contenedores y sus elementos del mismo nivel. Dimension pertenece a Database y Server, y se puede crear al mismo tiempo como DataSource y MiningStructure. Se deben crear instancias de ciertas clases del mismo nivel antes de poder usar otras. Por ejemplo, tiene que crear una instancia de DataSource antes de agregar un nuevo Dimension o MiningStructure.
Un objeto principal es una clase que representa un objeto completo como toda una entidad y no como parte de otro objeto. Los objetos principales incluyen Server, Cube, Dimension y MiningStructure, porque éstas son entidades por sí solas. Sin embargo, Level no es un objeto principal porque es una parte constituyente de Dimension. Los objetos principales se pueden crear, eliminar, modificar o procesar independientemente de otros objetos. Los objetos secundarios son objetos que únicamente se pueden crear como parte de la creación de un objeto principal primario. Los objetos secundarios normalmente se crean en la creación del objeto principal. Los valores de los objetos secundarios se deberían definir en el momento de su creación, porque no hay ninguna creación predeterminada para objetos secundarios.
La ilustración siguiente muestra los objetos principales que contiene un objeto Server.
Al programar con AMO, la asociación entre clases y clases contenidas usa atributos de tipo de colección, por ejemplo Server y Dimension. Para trabajar con una instancia de una clase contenida, adquiera en primer lugar una referencia a un objeto de colección que contenga o pueda tener la clase contenida. Después, encuentre el objeto concreto que está buscando en la colección y, a continuación, obtendrá una referencia al objeto para empezar a trabajar con él.
Clases AMO
AMO es una biblioteca de clases diseñada para administrar una instancia de Analysis Services de una aplicación cliente. La biblioteca AMO se puede considerar como grupos de objetos relacionados de forma lógica que se utilizan para lograr una tarea específica. Las clases AMO se pueden clasificar de la manera siguiente:
Conjunto de clases |
Finalidad |
---|---|
Clases necesarias para trabajar con cualquier otro conjunto de clases. |
|
Clases que permiten administrar objetos OLAP en Analysis Services. |
|
Clases que permiten administrar objetos de minería de datos en Analysis Services. |
|
Clases que permiten controlar el acceso a otros objetos y mantener la seguridad. |
|
Clases y métodos que sirven de ayuda a los administradores de OLAP o de la minería de datos para completar sus tareas cotidianas. |
Usar AMO
AMO es especialmente útil a la hora de automatizar tareas repetitivas, por ejemplo al crear nuevas particiones en un grupo de medida basado en nuevos datos de la tabla de hechos, o al volver a entrenar un modelo de minería de datos basado en nuevos datos. Normalmente, estas tareas que crean nuevos objetos se realizan por meses, semanas o trimestres y la aplicación puede denominar a los nuevos objetos con facilidad, a partir de los nuevos datos.
Administradores de Analysis Services
Los administradores de Analysis Services pueden usar AMO para automatizar el procesamiento de bases de datos de Analysis Services. Para diseñar e implementar las bases de datos de Analysis Services, debería utilizar Business Intelligence Development Studio.
Programadores
Los programadores pueden usar AMO para desarrollar interfaces administrativas para conjuntos de usuarios especificados. Estas interfaces pueden restringir el acceso a los objetos Analysis Services y limitar a los usuarios a ciertas tareas. Por ejemplo, con AMO podría crear una aplicación de copia de seguridad para permitir que un usuario pueda ver todos los objetos de la base de datos, seleccionar cualquiera de las bases de datos y realizar una copia de seguridad de la misma en cualquier conjunto de dispositivos especificado.
Los programadores también pueden incrustar la lógica de Analysis Services en sus aplicaciones. Para esto, pueden crear cubos, dimensiones, estructuras de minería de datos y modelos de minería basados en datos proporcionados por el usuario u otros factores.
Usuarios avanzados OLAP
Los usuarios avanzados OLAP normalmente son analistas de datos u otros usuarios de datos con experiencia que tienen amplios conocimientos en programación y que desean mejorar el análisis de datos mediante un uso más cercano de los objetos de datos. Para aquellos usuarios que necesitan trabajar sin conexión, AMO puede ser muy útil a la hora de automatizar la creación de cubos locales antes de desconectarse.
Usuarios avanzados de minería de datos
Para los usuarios avanzados de minería de datos, AMO es muy útil si se tienen conjuntos grandes de modelos que hay que volver a entrenar periódicamente.
Automatizar tareas administrativas con AMO
Mediante Integration Services, la mayoría de las tareas repetitivas se diseñan, implementan y mantienen mejor que si se programan como una aplicación en cualquier lenguaje de su elección. Sin embargo, para tareas repetitivas que no se pueden automatizar mediante Integration Services, se puede usar AMO. AMO también es útil cuando se desea programar una aplicación especializada de Business Intelligence mediante Analysis Services.
Administración automática de objeto
Con AMO es muy sencillo crear, actualizar o eliminar objetos Analysis Services (por ejemplo Database, Dimension, Cube, minería de datos MiningStructure y MiningModel o Role) a partir de entradas de usuario o de nuevos datos adquiridos. AMO es ideal para aplicaciones de instalación que tienen que implementar una solución desarrollada de un fabricante de software independiente a un cliente final. La aplicación de instalación puede comprobar si existe una versión anterior y actualizar la estructura, quitar objetos que ya no son útiles y crear otros nuevos. Si no hay ninguna versión anterior, entonces puede crear todo desde el principio.
AMO puede ser eficaz para crear nuevas particiones basadas en nuevos datos y puede quitar particiones anteriores que se hayan excedido del ámbito del proyecto. Por ejemplo, para una solución de análisis financiero que funciona con los datos de los últimos 36 meses, en cuanto se reciben los datos de un nuevo mes, se puede quitar el mes antiguo 37. Para optimizar el rendimiento, las nuevas agregaciones se pueden diseñar en función del uso y aplicación de los últimos 12 meses.
Procesamiento de objetos automático
El procesamiento de objetos y la disponibilidad actualizada se pueden lograr mediante AMO como respuesta a ciertos eventos más allá de los datos de flujo normal y de las tareas programadas que usan Integration Services.
Administración de seguridad automática
La administración de seguridad se puede automatizar para incluir nuevos usuarios a las funciones y permisos, o bien para quitar a otros usuarios en cuanto expira su tiempo. Se pueden crear nuevas interfaces para simplificar la administración de seguridad para los administradores de seguridad. Esto puede resultar más sencillo que mediante Business Intelligence Development Studio.
Administración de copia de seguridad automática
La administración de copia de seguridad automática se puede realizar mediante las tareas de Integration Services o creando aplicaciones AMO especializadas que se ejecutan de forma automática. Mediante AMO puede desarrollar interfaces de copia de seguridad para operadores que les servirá de ayuda en su trabajo diario.
Limitaciones de las tareas AMO
AMO no se puede usar para consultar datos. Para consultar datos de Analysis Services, incluidos cubos y modelos de minería, use ADOMD.NET de una aplicación de usuario. Para obtener más información, vea ADOMD.NET.