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


Требования к архитектуре клиента для разработки служб Analysis Services

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

Microsoft SQL Server SQL Server Analysis Services поддерживает архитектуру тонкого клиента. Подсистема вычислений SQL Server Analysis Services полностью основана на сервере, поэтому все запросы разрешаются на сервере. В результате для каждого запроса требуется только одно перемещение данных от клиента к серверу и обратно, что позволяет масштабировать производительность по мере роста сложности запросов.

Собственный протокол для SQL Server Analysis Services — XML для анализа (XML/A). SQL Server Analysis Services предоставляет несколько интерфейсов доступа к данным для клиентских приложений, но все эти компоненты взаимодействуют с экземпляром SQL Server Analysis Services с помощью XML для анализа.

Несколько разных поставщиков предоставляют SQL Server Analysis Services для поддержки различных языков программирования. Поставщик взаимодействует с сервером SQL Server Analysis Services, отправляя и получая XML-код для анализа в пакетах SOAP по протоколу TCP/IP или по протоколу HTTP через службы IIS. Http-подключение использует COM-объект, созданный службами IIS, который называется насосом данных, который выступает в качестве канала для SQL Server Analysis Services данных. Средство переноса данных никак не просматривает базовые данные, которые содержатся в HTTP-потоке, и никакие структуры базовых данных не доступны никакому коду в самой библиотеке данных.

Архитектура логического клиента для служб Analysis Services

Клиентские приложения Win32 могут подключаться к серверу SQL Server Analysis Services с помощью OLE DB для интерфейсов OLAP или объектной модели Объектов данных Microsoft® ActiveX® (ADO) для языков автоматизации COM, таких как Microsoft Visual Basic®. Приложения, закодированные на языках .NET, могут подключаться к серверу SQL Server Analysis Services с помощью ADOMD.NET.

Существующие приложения могут взаимодействовать с SQL Server Analysis Services без изменений с помощью одного из поставщиков SQL Server Analysis Services.

Язык программирования Интерфейс доступа к данным
C++ OLE DB для OLAP
Visual Basic 6 ADO MD
Языки платформы .NET ADO MD.NET
Любой язык с поддержкой SOAP XML для аналитики

SQL Server Analysis Services имеет веб-архитектуру с полностью масштабируемым средним уровнем для развертывания как в малых, так и в крупных организациях. SQL Server Analysis Services обеспечивает широкую поддержку среднего уровня для веб-служб. Поддержка приложений ASP реализована в OLE DB для OLAP, а приложений ADO MD, ASP.NET — в ADOMD.NET. Средний уровень, проиллюстрированный на приведенном ниже рисунке, масштабируется для одновременной поддержки большого количества пользователей.

Логическая схема для архитектуры среднего уровня

Клиентские и средние приложения могут взаимодействовать напрямую с SQL Server Analysis Services без использования поставщика. Клиентские приложения и приложения промежуточного уровня могут отправлять данные XML для аналитики в SOAP-пакетах по протоколам TCP/IP, HTTP или HTTPS. Клиент может быть написан на любом языке, поддерживающем SOAP. В этом случае сообщением проще всего управлять посредством служб IIS, используя протокол HTTP, хотя также можно запрограммировать прямое соединение с сервером по протоколу TCP/IP. Это самое тонкое клиентское решение для SQL Server Analysis Services.

Службы Analysis Services в табличном режиме или режиме интеграции с SharePoint.

В SQL Server 2017 г. сервер можно запустить в режиме модуля аналитики VertiPaq в памяти (VertiPaq) для табличных баз данных и книг Power Pivot, опубликованных на сайте SharePoint.

Power Pivot для Excel и SQL Server Data Tools — это единственные клиентские среды, которые поддерживаются для создания баз данных в памяти и запросов к ним, использующих SharePoint или табличный режим соответственно. Внедренная база данных Power Pivot, созданная с помощью инструментов Excel и Power Pivot, содержится в книге Excel и сохраняется как часть файла .xlsx Excel.

Однако книга Power Pivot может использовать данные, хранящиеся в традиционном кубе, если импортировать данные куба в книгу. Вы также можете импортировать данные из другой книги Power Pivot, если они были опубликованы на сайте SharePoint.

Примечание

При использовании куба в качестве источника данных для книги Power Pivot данные, полученные из куба, определяются как запрос многомерных выражений; однако данные импортируются в виде плоских snapshot. Нельзя ни работать с данными в интерактивном режиме, ни обновлять их из куба.

Интерфейсы для клиента Power Pivot

Power Pivot взаимодействует с подсистемой хранилища подсистемы аналитики VertiPaq в памяти в книге с помощью установленных интерфейсов и языков для служб Analysis Services: AMO и ADOMD.NET, многомерных выражений и XMLA. В надстройке меры определяются с помощью языка формул, аналогичного языку формул Excel и DAX (выражения анализа данных). Выражения анализа данных внедряются в сообщения XMLA, отправляемые внутрипроцессному серверу.

Поставщики

Для обмена данными между Power Pivot и Excel используется поставщик OLEDB MSOLAP (версия 11.0). В поставщике MSOLAP имеется четыре модуля (также называемых транспортами), которые можно использовать для пересылки сообщений между клиентом и сервером.

TCP/IP Используется для обычных подключений "клиент-сервер".

HTTP Используется для HTTP-подключений через службу насоса данных SSAS или путем вызова компонента веб-службы SharePoint Power Pivot (WS).

INPROC Используется для подключений к подсистеме внутрипроцессного процесса.

КАНАЛ Зарезервировано для взаимодействия с системной службой PowerPivot в ферме SharePoint.

См. также:

Серверные компоненты ядра OLAP