Поделиться через


Основные понятия и объектная модель AMO

Применимо к: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

В этой статье описываются объекты AMO, сведения о связи объектов AMO с другими средствами и библиотеками, предоставляемыми в архитектуре служб Analysis Services, а также концептуальное объяснение всех основных объектов в AMO.

AMO — это полная коллекция классов управления, которые можно использовать программным способом в пространстве Microsoft.AnalysisServicesимен в управляемой среде. Классы включены в файл AnalysisServices.dll, который обычно находится там, где программа установки устанавливает файлы, в папке \100\SDK\Assemblies\. Для работы с классами AMO укажите в своем проекте ссылку на эту сборку.

С помощью объектов AMO можно создавать, изменять и удалять такие объекты, как кубы, измерения, структуры интеллектуального анализа данных и базы данных; По всем этим объектам действия можно выполнять из приложения в платформа .NET Framework. Вы также можете обрабатывать и обновлять сведения, хранящиеся в базах данных.

Объекты AMO в архитектуре служб Analysis Services

Объекты AMO предназначены только для управления объектами, а не для выполнения запросов к данным. Если пользователю необходимо запрашивать данные из клиентского приложения, клиентское приложение должно использовать ADOMD.NET.

Архитектура AMO

AMO — это полная библиотека классов, предназначенная для управления экземпляром служб Analysis Services из клиентского приложения в управляемом коде в платформа .NET Framework версии 2.0 и выше.

Библиотека классов AMO содержит иерархию классов, где для использования в коде сначала создаются экземпляры одних классов, а затем других. Существуют также дополнительные классы, экземпляры которых могут быть в любой момент созданы в коде, однако сначала, вероятно, потребуется создать экземпляры одного или нескольких классов иерархии.

Приведенная ниже иллюстрация является представлением иерархии AMO высокого уровня, содержащей основные классы. На иллюстрации показано размещение классов среди контейнеров и одноранговых узлов. Объект Dimension принадлежит к Database и Server, и может быть создан одновременно с DataSource и MiningStructure. Необходимо создать экземпляры некоторых одноранговых узлов перед тем, как можно будет пользоваться остальными. Например, необходимо создать экземпляр DataSource перед добавлением нового Dimension или MiningStructure.

Общий обзор классов AMO

Основной объект — это класс, представляющий полный объект как сущность целиком, а не как часть другого объекта. К основным объектам относятся Server, Cube, Dimensionи MiningStructure, так как они сами по себе являются сущностями. Однако Level объект не является основным объектом, так как он является составной частью Dimension. Основные объекты можно создавать, удалять, изменять или обрабатывать, независимо от других объектов. Второстепенными называются объекты, которые могут быть созданы только в рамках создания родительского основного объекта. Обычно второстепенные объекты создаются после создания основного объекта. Значения для второстепенных объектов следует задавать во время создания, поскольку значения по умолчанию для них не существуют.

На следующем рисунке показаны основные объекты, содержащиеся в Server объекте .

Главные объекты AMO

Главные объекты AMO (2)

При программировании с помощью объектов AMO связь между классами и автономными классами использует атрибуты типа коллекции, например Server и Dimension. Для работы со вложенным экземпляром класса необходимо сначала получить ссылку на объект коллекции, в которой он содержится или может содержаться. Затем в коллекции необходимо найти нужный объект и получить ссылку на него, чтобы начать с ним работу.

Классы AMO

AMO — это библиотека классов, предназначенная для управления экземпляром служб Analysis Services из клиентского приложения. Библиотеку объектов AMO можно описать как логически связанные группы объектов, используемых для выполнения определенной задачи. Классы AMO можно разбить на категории следующим образом.

Набор классов Назначение
Основные классы объектов AMO Классы, необходимые для работы с любым другим набором классов.
Классы OLAP объектов AMO Классы, позволяющие управлять объектами OLAP.
Классы интеллектуального анализа данных объектов AMO Классы, позволяющие управлять объектами интеллектуального анализа данных.
Классы безопасности объектов AMO Классы для управления доступом к другим объектам и поддержки безопасности.
Другие классы и методы объектов AMO Классы и методы, помогающие администраторам OLAP и интеллектуального анализа данных выполнять свои повседневные задачи.

Использование объектов AMO

Объекты AMO особенно полезны для автоматизации часто выполняемых задач (например, для создания новых секций в группе мер при появлении новых данных в таблице фактов или для повторного обучения модели интеллектуального анализа при появлении новых данных). Обычно эти задачи, которые создают новые объекты, выполняются ежемесячно, еженедельно или ежеквартально, а приложение может легко именовать эти новые объекты на основе новых данных.

Администраторы служб Analysis Services

Администраторы могут использовать AMO для автоматизации обработки баз данных. Для проектирования и развертывания баз данных используйте Visual Studio.

Разработчикам

Разработчикам объекты AMO дают возможность создавать интерфейсы администрирования для определенных наборов пользователей. Эти интерфейсы могут ограничивать доступ к объектам и ограничивать пользователей определенными задачами. Например, с помощью объекта AMO можно создать приложение резервного копирования, которое позволит пользователю просматривать все объекты базы данных, выбирать любую из баз данных и создавать резервную копию на любом из указанных устройств.

Разработчики также могут внедрять логику в свои приложения. Это возможно благодаря созданию кубов, измерений, структур и моделей интеллектуального анализа на основе пользовательского ввода и других факторов.

Опытные пользователи OLAP

Опытными пользователями OLAP обычно являются специалисты по анализу данных и другие опытные пользователи баз данных, обладающие обширными знаниями в программировании, которые хотят повысить качество анализа данных за счет более глубокого использования объектов данных. Пользователям, которым необходимо работать в режиме «вне сети», объекты AMO могут пригодиться для автоматизации создания локальных кубов перед переходом в режим «вне сети».

Опытные пользователи интеллектуального анализа данных

Для опытных пользователей интеллектуального анализа данных объекты AMO наиболее полезны в тех случаях, когда необходимо периодически переобучать большие наборы моделей.

Автоматизация задач администрирования с помощью AMO

Большинство повторяющихся задач лучше всего проектируются, развертываются и обслуживаются, если они разрабатываются с помощью служб Integration Services, чем если они разрабатываются в качестве приложения на любом языке по вашему выбору. Однако для повторяющихся задач, которые невозможно автоматизировать с помощью служб Integration Services, можно использовать объект AMO.

Автоматическое управление объектами

С помощью объектов AMO можно легко создавать, обновлять или удалять объекты (например Database, , Dimension, Cube, интеллектуальный анализ MiningStructureи MiningModel, или Role) на основе введенных пользователем данных или новых полученных данных. Объекты AMO идеально подходят для приложений установки, целью которых является развертывание разработанного решения (от независимого поставщика программного обеспечения до конечного потребителя). Приложение может проверить наличие предыдущей версии и обновить структуру, удалить устаревшие объекты и создать новые. При отсутствии предыдущей версии приложение может создать установку с нуля.

Объект AMO может быть эффективным при создании новых секций на основе новых данных и может удалять старые секции, которые вышли за область проекта. Например, в решении для финансового анализа, которое работает с данными за 36 месяцев, после получения данных за новый месяц все данные за старый тридцать седьмой месяц можно удалить. Для оптимизации производительности можно спроектировать новые агрегаты на основе использования и применить их к последним 12 месяцам.

Автоматическая обработка объектов

Обработка объектов и обновленная доступность могут быть достигнуты с помощью объекта AMO для реагирования на определенные события, выходящие за рамки обычных данных потока и запланированных задач, использующих службы Integration Services.

Автоматическое управление безопасностью

Автоматизация управления безопасностью подразумевает включение в роли новых пользователей и разрешений, а также удаление из них пользователей по истечении срока действия. Возможность создания новых интерфейсов позволяет упростить управление безопасностью для администраторов безопасности. Это может быть проще, чем использовать Visual Studio.

Автоматическое управление резервным копированием

Автоматическое управление резервным копированием можно выполнить с помощью задач служб Integration Services или путем создания специализированных приложений AMO, которые выполняются автоматически. Объекты AMO дают возможность разрабатывать интерфейсы резервного копирования для операторов, чтобы помочь им в выполнении ежедневных задач.

Объект AMO задач не предназначен для запроса данных

Объекты AMO не могут быть использованы для выполнения запросов к данным. Чтобы запросить данные, включая кубы и модели интеллектуального анализа данных, используйте ADOMD.NET из пользовательского приложения. Дополнительные сведения см. в разделе Разработка с помощью ADOMD.NET.