Открыть сервис

Common Data Service

Common Data Service (CDS) — это облачная платформа хранения и управления данными, входящая в состав экосистемы Microsoft Power Platform. Представляет собой реляционную базу данных, предоставляемую как сервис (Database as a Service), которая позволяет безопасно хранить и управлять бизнес-данными, используемыми в приложениях, созданных на платформах Power Apps, Power Automate, Power BI и Dynamics 365. Данные в CDS организованы в виде сущностей (аналогов таблиц в реляционных базах данных) и атрибутов (столбцов), что обеспечивает единую, стандартизированную схему для бизнес-приложений.

История и развитие

Платформа Common Data Service была представлена компанией Microsoft в 2016 году как развитие технологии Common Data Model (CDM) — стандартизированной семантической модели данных, предназначенной для унификации бизнес-данных в различных приложениях. Первоначально CDS был тесно связан с Dynamics 365 и служил основой для хранения данных в этой CRM-системе. В 2018 году, с выходом Power Platform, CDS стал центральным компонентом для всех низко-кодовых (low-code) приложений, создаваемых в Power Apps.

В 2020 году Microsoft объявила о переименовании Common Data Service в Microsoft Dataverse (в рамках ребрендинга Power Platform). Однако термин «Common Data Service» продолжает использоваться в технической документации и в контексте устаревших версий. В 2021 году Dataverse получил поддержку виртуальных таблиц, интеграцию с Azure Synapse Analytics и возможность работы с большими объёмами данных. По состоянию на 2024 год Dataverse является основным хранилищем данных для Power Platform, обеспечивая единую среду для разработки, развёртывания и управления бизнес-приложениями.

Архитектура и ключевые характеристики

Сущности и атрибуты

Данные в CDS (Dataverse) организованы в виде сущностей (entities), которые соответствуют бизнес-объектам (например, «Клиент», «Заказ», «Товар»). Каждая сущность содержит атрибуты (поля), определяющие её структуру: текстовые строки, числа, даты, ссылки на другие сущности, файлы, изображения и т.д. Встроенные сущности (например, «Account», «Contact») поставляются с Dynamics 365 и Power Apps, а пользователи могут создавать собственные кастомные сущности.

Типы сущностей

  • Стандартные (out-of-the-box) — предустановленные Microsoft, например, «Контакт», «Задача», «Возможность».
  • Кастомные — создаваемые разработчиками или администраторами для специфических бизнес-нужд.
  • Виртуальные — сущности, которые не хранят данные в Dataverse, а подключаются к внешним источникам (например, SQL Server, SharePoint, Dynamics 365 Finance) через коннекторы.

Безопасность и управление доступом

CDS использует многоуровневую модель безопасности на основе ролей (security roles). Права доступа настраиваются на уровне:

  • Организации — глобальные права для всей среды.
  • Бизнес-единицыразделение данных по организационным подразделениям.
  • Пользователя — индивидуальные права.
  • Команды — групповые права, объединяющие нескольких пользователей.

Каждая роль определяет, какие действия (чтение, создание, изменение, удаление) разрешены для конкретных сущностей. Поддерживается наследование прав и иерархическая структура.

Связи между сущностями

Поддерживаются три типа связей:

  • 1:N (один-ко-многим) — например, один клиент может иметь много заказов.
  • N:1 (многие-к-одному)обратная связь.
  • N:N (многие-ко-многим) — например, товары могут быть связаны с несколькими категориями.

Связи могут быть обязательными или необязательными, с каскадным удалением или блокировкой.

Бизнес-логика

В CDS можно реализовать бизнес-правила и автоматизацию без написания кода:

  • Бизнес-правила — проверка данных на уровне сущности (например, «Если поле Статус = "Закрыт", то поле Дата завершения обязательно»).
  • Плагины — код на C#, выполняемый при событиях (создание, обновление, удаление записи).
  • Рабочие процессы (Workflows) — последовательность действий, запускаемых по триггеру.
  • Power Automate — интеграция с внешними сервисами через потоки данных.

Применение

Power Apps

CDS является основным источником данных для приложений, создаваемых в Power Apps (как Canvas-приложений, так и Model-driven приложений). Model-driven приложения автоматически генерируют пользовательский интерфейс на основе структуры сущностей CDS, что ускоряет разработку. Canvas-приложения могут подключаться к CDS через коннектор, используя данные для отображения и редактирования.

Dynamics 365

Все приложения Dynamics 365 (Sales, Customer Service, Marketing, Finance, Supply Chain Management) используют CDS в качестве единого хранилища. Это обеспечивает бесшовную интеграцию между модулями: например, данные о клиенте из Sales автоматически доступны в Service.

Power BI

CDS может служить источником данных для отчётов Power BI. Прямое подключение к Dataverse (через соединитель Dataverse) позволяет строить интерактивные дашборды без необходимости копирования данных в другие хранилища.

Power Automate

Потоки Power Automate могут читать, создавать, обновлять и удалять записи в CDS, а также запускать триггеры при изменениях. Это позволяет автоматизировать бизнес-процессы, такие как отправка уведомлений, создание задач или обновление записей.

Интеграция с внешними системами

CDS поддерживает импорт и экспорт данных через:

  • DataflowsETL-процессы для загрузки данных из внешних источников (SQL Server, Excel, Azure Blob Storage).
  • API — RESTful и OData-интерфейсы для программного доступа.
  • Power Query — встроенный инструмент для трансформации данных.
  • Azure Synapse Link — репликация данных в Azure Synapse Analytics для аналитики.

Преимущества и ограничения

Преимущества

  • Единая модель данных — стандартизированная схема, устраняющая дублирование и несогласованность.
  • Низкий порог входа — создание приложений и автоматизации без глубоких знаний программирования.
  • Безопасность на уровне записи — детальная настройка прав доступа.
  • Интеграция с экосистемой Microsoft — бесшовное взаимодействие с Office 365, Azure, Dynamics 365.
  • Масштабируемость — поддержка до 4 ТБ данных на среду (в зависимости от лицензии).

Ограничения

  • Привязка к платформе Microsoft — не поддерживает прямую интеграцию с не-Microsoft системами без коннекторов.
  • Стоимость — лицензирование Power Platform может быть дорогим для крупных организаций.
  • Ограничения по объёму — максимальный размер базы данных для одной среды ограничен (от 10 ГБ до 4 ТБ в зависимости от плана).
  • Сложность кастомизации — для сложной бизнес-логики требуется написание плагинов на C#.

Примеры использования

  1. CRM-система для малого бизнеса — компания использует Power Apps с CDS для управления клиентами, заказами и задачами. Данные автоматически синхронизируются с Dynamics 365 Sales.
  2. Управление проектами — в Model-driven приложении на основе CDS создаются сущности «Проект», «Задача», «Ресурс». Бизнес-правила проверяют сроки и бюджет.
  3. Автоматизация отчётности — Power Automate каждую ночь загружает данные из SQL Server в CDS, а Power BI строит отчёты для руководства.
  4. Интеграция с SharePoint — документы, загруженные в SharePoint, автоматически создают записи в CDS через Power Automate.

Критика и альтернативы

Основные замечания к CDS (Dataverse) связаны с его зависимостью от экосистемы Microsoft и высокой стоимостью лицензирования для небольших организаций. В качестве альтернатив рассматриваются:

  • Salesforce — собственная платформа хранения данных с аналогичными возможностями.
  • Google Cloud Spanner — облачная реляционная база данных с глобальной репликацией.
  • Amazon DynamoDB — NoSQL-база данных для приложений с высокой нагрузкой.
  • Airtable — низко-кодовая платформа с визуальным интерфейсом, но без встроенной бизнес-логики.

Источники

  1. Microsoft Docs: «What is Microsoft Dataverse?» (2023).
  2. Microsoft Power Platform Documentation: «Common Data Service overview» (2020).
  3. Gartner: «Magic Quadrant for Low-Code Application Platforms» (2022).
  4. Официальный блог Microsoft: «Introducing Microsoft Dataverse» (2020).
  5. TechCommunity: «Common Data Service vs Dataverse: What’s the difference?» (2021).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →