Otras clases y métodos de AMO

Se aplica a: SQL Server Analysis Services Azure Analysis Services Power BI Premium

Esta sección contiene clases comunes que no son específicas de OLAP o minería de datos, y que son útiles al administrar o administrar objetos en Analysis Services. Estas clases incluyen características como procedimientos almacenados, seguimientos, excepciones y copias de seguridad y restauración.

La ilustración siguiente muestra la relación de las clases que se explican en este tema.

AMO Other Classes

Objetos de ensamblado

Para crear un Assembly objeto, se agrega a la colección de ensamblados del servidor y, a continuación, se actualiza el Assembly objeto al servidor mediante el método Update.

Para quitar un Assembly objeto, debe quitarse mediante el método Drop del Assembly objeto . Quitar un Assembly objeto de la colección de ensamblados de la base de datos no quita el ensamblado, solo impide que lo vea en la aplicación hasta la próxima vez que ejecute la aplicación.

Para obtener más información sobre los métodos y las propiedades disponibles, vea Assembly en Microsoft.AnalysisServices .

Importante

Los ensamblados COM pueden suponer un riesgo para la seguridad. Debido a este riesgo y otras consideraciones, ya no se admiten ensamblados COM.

Métodos de copia de seguridad y restauración

Copia de seguridad y restauración son métodos que se pueden usar para crear copias de una base de datos y recuperar la base de datos mediante la copia. El método de copias de seguridad pertenece al objeto Database y el método de restauración pertenece al objeto Server.

Los administradores del servidor y bases de datos son los únicos que pueden realizar una copia de seguridad de una base de datos. Los administradores del servidor son los únicos que pueden restaurar una base de datos en un servidor distinto del servidor en el que se realizó la copia de seguridad. Los administradores de bases de datos pueden restaurar una base de datos sobrescribiendo la base de datos existente solo si son propietarios de la base de datos que se va a sobrescribir. Después de una restauración, puede que el administrador de bases de datos pierda el acceso a la base de datos restaurada si se restauró con sus definiciones de seguridad originales.

Los archivos de copia de seguridad de la base de datos deben tener extensiones .abf.

Método de copia de seguridad

Para realizar una copia de seguridad de una base de datos, use el método de copias de seguridad del objeto de la base de datos con el nombre del archivo de copia de seguridad como un parámetro.

Valores predeterminados

AllowOverwrite=false

BackupRemotePartitions=false

Security=CopyAll

ApplyCompression=true

Método de restauración

Para restaurar una base de datos a un servidor, use el método de restauración del servidor con el archivo de copia de seguridad como un parámetro.

Valores predeterminados

AllowOverwrite=false

DataSourceType=Remote

Security=CopyAll

Restricciones

  1. Una partición local no se puede restaurar como una partición remota.

  2. Una partición remota no se puede restaurar como una partición local, pero una partición remota se puede restaurar en un servidor distinto del servidor en el que se realizó la copia de seguridad.

Parámetros y propiedades comunes para los métodos Backup y Restore

  • El archivo es el nombre del archivo al que se va a realizar la copia de seguridad (nombre UNC) en y desde.

  • Location especifica información de copia de seguridad específica del servidor, como BackupFile. Esto le permite especificar un archivo de copia de seguridad independiente para una base de datos remota.

  • DatasourceID especifica el identificador de la base de datos subordinada en un servidor remoto.

  • ConnectionString permite ajustar el origen de datos remoto en caso de que el servidor remoto haya cambiado. DataSourceID siempre debe especificarse en el caso de que esté presente ConnectionString.

  • La carpeta permite reasignar las carpetas de las particiones en el disco duro local

  • Original es la carpeta original para las particiones locales.

  • New es la nueva ubicación para las particiones locales que se usan para residir en la carpeta anterior "Original" correspondiente.

  • Contraseña, si no está en blanco, especifica que el servidor cifrará el archivo de copia de seguridad.

Objetos de seguimiento

Trace es un marco que se usa para supervisar, reproducir y administrar una instancia de Analysis Services. Una aplicación cliente, como SQL Profiler, se suscribe a un seguimiento y el servidor envía eventos de seguimiento como se especifica en la definición de seguimiento.

Una clase de eventos describe cada evento. La clase de eventos describe el tipo de evento que se genera. En una clase de eventos, las subclases de eventos describen un nivel más concreto de clasificación. Varias columnas describen cada evento. Las columnas que describen un evento de seguimiento son coherentes para todos los eventos y siguen la estructura de Seguimiento de SQL. La información registrada en cada columna puede diferir dependiendo de la clase de eventos; es decir, se define un conjunto predefinido de columnas para cada seguimiento, pero el significado de la columna puede diferir dependiendo de la clase de eventos. Por ejemplo, la columna TextData se usa para registrar el ASSL original para todos los eventos de instrucción.

Una definición de seguimiento puede incluir una o más clases de evento para realizar un seguimiento de forma simultánea. En cada clase de eventos, se pueden agregar una o más columnas de datos a la definición de seguimiento, pero no se deben usar todas las columnas de seguimiento. El administrador de la base de datos puede decidir qué columnas disponibles se incluirán en un seguimiento. Además, se puede realizar un seguimiento de forma selectiva de las clases de evento en basado en los criterios de filtro de cualquier columna de seguimiento.

Los seguimientos se pueden iniciar y eliminar. Se pueden ejecutar varios seguimientos en cualquier un momento. Los eventos de seguimiento se pueden capturar activos o se pueden dirigir a un archivo para el posterior análisis o reproducción. SQL Profiler es la herramienta que se usa para analizar y reproducir eventos de seguimiento. Se permiten varias conexiones para recibir eventos del mismo seguimiento.

Los seguimientos se dividen en dos grupos: seguimientos del servidor y seguimientos de sesiones. Los seguimientos del servidor informarán de todos los eventos del servidor; los seguimientos de sesiones únicamente informarán de los eventos de la sesión actual.

Los seguimientos de la colección de seguimientos del servidor, se definen de la siguiente manera:

  1. Cree un Trace objeto y rellene sus datos básicos, incluidos el identificador de seguimiento, el nombre, el nombre del archivo de registro, append|overwrite y otros.

  2. Agregue eventos para supervisar la colección de eventos del objeto de seguimiento. Para cada evento, se agregan columnas de datos.

  3. Establezca filtros para excluir filas de datos innecesarias agregándolas a la colección de filtros.

  4. Inicie el seguimiento, creando el seguimiento que no inicia la recopilación de datos.

  5. Detenga el seguimiento.

  6. Revise el archivo de seguimiento con SQL Profiler.

Los seguimientos del objeto de sesión, se obtienen de la siguiente manera:

  1. Defina funciones para controlar los eventos de seguimiento generados por SessionTrace en la aplicación. Los posibles eventos son OnEvent y Stopped.

  2. Agregue sus funciones definidas al controlador de eventos.

  3. Inicie el seguimiento de la sesión.

  4. Realice su proceso y permita que los controladores de funciones capturen los eventos.

  5. Detenga el seguimiento de sesiones.

  6. Continúe con su aplicación.

Clase CaptureLog y atributo CaptureXML

Todas las acciones que ejecuta AMO se envían al servidor como mensajes XMLA. AMO proporciona los recursos para capturar todos estos mensajes sin los encabezados SOAP. Para obtener más información, vea Introducción a las clases de AMO. CaptureLog es el mecanismo de AMO para generar script de objetos y operaciones; los objetos y operaciones se incluyen en el script en XMLA.

Para empezar a capturar el XML, la propiedad del objeto de servidor CaptureXML debe establecerse en true. A continuación, todas las acciones que se enviarán al servidor se comenzarán a capturar en la clase CaptureLog, sin las acciones que se envían al servidor. CaptureLog se considera una clase porque tiene un método, Clear, que se usa para borrar el registro de captura.

Para leer el registro, consiga la colección de cadenas e inicie la iteración sobre las cadenas. Asimismo, puede concatenar todos los registros en una cadena mediante el método ConcatenateCaptureLog del objeto de servidor. ConcatenateCaptureLog debe tener tres parámetros, dos de los cuales son necesarios. Los parámetros necesarios son transaccionales, de tipo booleano y paralelos, de tipo booleano. Si la transacción se establece en true, indica que el archivo por lotes XML se creará como una única transacción en lugar de cada comando que se trata como una transacción separada. Si parallel se establece en true, indica que todos los comandos del archivo por lotes se registrarán para la ejecución simultánea en lugar de secuencialmente, ya que se registraron.

Clase de excepción AMOException

Use la clase de excepción AMOException para detectar con facilidad las excepciones que produce AMO en su aplicación.

AMO producirá excepciones en los diferentes problemas encontrados. En la tabla siguiente se enumera el tipo de excepciones que controla AMO. Las excepciones se derivan de la AmoException clase .

Excepción Origen Descripción
AmoException Clase base La aplicación recibe esta excepción cuando falta un objeto primario necesario o cuando no se encuentra en una colección un elemento solicitado.
OutOfSyncException Se deriva de AMOException La aplicación recibe esta excepción cuando AMO no está sincronizado con el motor y el motor devuelve una referencia de objeto que AMO no conoce.
OperationException Se deriva de AMOException Esta es una excepción importante que las aplicaciones reciben con frecuencia. Esta excepción contiene los detalles de un error originado en el servidor, probablemente debido a una operación AMO defectuosa como Actualizar o Procesar o Quitar.
ResponseFormatException Se deriva de AMOException Esta excepción se produce cuando el motor devuelve un mensaje en un formato que AMO no entiende.
ConnectionException Se deriva de AMOException Esta excepción se produce cuando no se puede establecer una conexión (con Server.Connect) o cuando se pierde la conexión mientras AMO se comunica con el motor (por ejemplo, durante una operación Actualizar o Procesar o Quitar).