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


Установка, распространение табличной модели объемов и ссылки на нее

Применимо к: SQL Server 2016 и более поздних версий Analysis Services Azure Analysis Services Fabric/Power BI Premium

В этой статье описывается, как скачать, ссылаться на табличную объектную модель (TOM), библиотеку C# для создания табличных моделей и баз данных в управляемом коде и управления ими.

TOM — это расширение клиентской библиотеки AMO (Microsoft.AnalysisServices.dll). Чтобы использовать TOM, модель и база данных должны быть на уровне совместимости 1200 или выше.

Сборки AMO-TOM

AMO включает новые сборки Core, Tabular и JSON. Он также включает в себя исходную сборку AMO, Microsoft.AnalysisServices.dll, которая была частью служб Analysis Services с момента их первого выпуска. Реструктурированный объект AMO разгружает общие классы в одну сборку и обеспечивает логическое разделение между табличными и многомерными API с помощью дополнительных сборок.

В следующей таблице описана каждая сборка:

Сборка Функциональность Важные классы
Основные сведения
Microsoft.AnalysisServices.Core.dll
Общие для табличных и многомерных баз данных.

Обеспечивает обработку исключений, универсальные подключения к экземпляру сервера и базе данных, а также доступ к общим свойствам и методам для объектов Server и Database.
Основной сервер
Базовая база данных
AmoException
ТОМ
Microsoft.AnalysisServices.Tabular.dll версии 13.0.1601.5 или более поздней.
Создание табличных объектов метаданных и управление ими. Сервер TOM
База данных TOM
Моделирование
Таблица
Столбец
Связь
AMO
Microsoft.AnalysisServices.dll
Создание объектов многомерных метаданных и управление ими, включая табличные базы данных 1050–1103. Сервер AMO
База данных AMO
Куб
Измерение
Группа мер
Json
Microsoft.AnalysisServices.Tabular.Json.dll
Вспомогающая библиотека DLL, которая упаковывает NewtonSoftJson.dll (JSON.NET) для управления обновлениями, устраняя риск внесения функциональных изменений в сериализацию JSON в серверных рабочих нагрузках.

Эта библиотека DLL существует как зависимость в TOM и не предназначена для использования непосредственно в коде.
Нет.

Основные сведения о зависимостях сборок

Для программирования на основе AMO ваше решение должно включать ссылки на зависимые библиотеки DLL. И AMO, и TOM зависят от Core, так как они предоставляют базовые классы.

AMO зависит от TOM, так как некоторые классы в AMO ссылают классы из TOM. Например, объект Базы данных AMO имеет свойство Model типа Model, реализованное в библиотеке DLL TOM.

Зависимости AMO TOM

Вы не можете распространять Microsoft.AnalysisServices.dll без Microsoft.AnalysisServices.Tabular.dll, но вы можете ссылаться на соответствующие пространства имен без другого.

Выбор пространства имен для использования в коде

В иерархии объектов любой объект под базой данных является либо табличной конструкцией метаданных с помощью объекта Model, либо многомерной конструкцией метаданных с помощью объекта Cube, Dimension или MeasureGroup. Для высокоуровневых операций на уровне сервера, базы данных, роли или трассировки выбор пространства имен для ссылки будет зависеть от рабочих нагрузок, которые должен поддерживать код.

  • Используйте Tabular.Server или Tabular.Database, если ваше решение имеет уровень совместимости 1200 или выше, а объект Database, с которым вы работаете, должен предоставлять доступ к model, table, columns и другим объектам, выраженным в виде табличных метаданных.
  • Используйте AnalysisServices.Server или AnalysisServices.Database, если нижестоящий код ссылается на многомерные объекты, такие как Cubes, DataSources, DataSourceViews и Dimensions.

Вам потребуются оба пространства имен для инструментов и приложений, поддерживающих сочетание баз данных и типов моделей.

Ссылка на пространство имен Core в коде не требуется; Классы в Core являются базовыми классами, созданными с целью предоставления общих свойств, таких как Name и Description, для основных объектов.

Скачивание и установка AMO

  1. Перейдите в раздел Клиентские библиотеки.

  2. Выберите и скачайте AMO с помощью установщика Windows или пакетов NuGet.

Добавление ссылок

  1. В Обозреватель решений>Добавить обзор ссылок>.

  2. Перейдите в папку C:\Program Files\Microsoft SQL Server\140\SDK\Assemblies и выберите:

    • Microsoft.AnalysisServices.Core
    • Microsoft.AnalysisServices.Tabular
    • Microsoft.AnalysisSerivces.Tabular.Json
  3. Нажмите кнопку ОК. В Обозреватель решений убедитесь, что сборки существуют в папке Ссылки.

  4. На кодовой странице добавьте пространство имен Microsoft.AnalysisServces.Tabular, если базы данных и модели имеют табличный уровень совместимости 1200 или выше.

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

    При включении пространств имен, имеющих общие классы для объектов Server, Database, Role и Trace, избегайте неоднозначных ссылок, определяя пространство имен, которое вы хотите использовать (например, Microsoft.AnalysisServices.Tabular.Server создает экземпляр объекта Server с помощью табличного пространства имен).

Повторное распространение AMO и TOM с приложением

Распространение AMO и TOM осуществляется через пакет установкиsql_as_amo.msi или пакеты NuGet. Если вы создаете программу установки для клиентского приложения, которое вызывает AMO или TOM, добавьте sql_as_amo.msi в исполняемый файл.

Пакет является автономным и предоставляет все сборки, необходимые для вызова AMO и TOM в коде. Другие пакеты, такие как SQL_AS_OLEDB.msi или SQL_AS_ADOMD.msi, специально не требуются для сценариев программирования TOM.