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


Что такое построитель API данных для баз данных Azure?

Построитель API данных заменяет любой пользовательский API, выполняющий операции CRUD (создание, чтение, обновление, удаление) в базе данных. DAB является кроссплатформенным, с открытым исходным кодом и не зависит от языка, технологий и платформ. Для этого требуется нулевой код и один файл конфигурации. Лучше всего, это бесплатная служба без уровня "Премиум" и может работать в любом облаке.

Иллюстрация талисмана конструктора API данных, который представляет собой базу данных со строительной шляпой с логотипом облака.

Построитель API данных предназначен для разработчиков. В построителе API данных есть кроссплатформенный интерфейс командной строки, собственный OpenAPI, Swagger для конечных точек REST и Banana Cake Pop для конечных точек GraphQL. Его контейнер без отслеживания состояния, удобный для Docker, можно защитить с помощью EasyAuth, Microsoft Entra Identity или любого сервера JSON Web Token (JWT), выбранного предприятием. Он имеет гибкий механизм политик, детализированные элементы управления безопасностью и автоматически передает данные утверждений в контекст сеанса SQL.

Построитель API данных (DAB) поддерживает одновременно несколько внутренних источников данных, включая реляционные источники и источники NoSQL. DAB также легко интегрируется с Application Insights. Файл конфигурации может отражать связи в базе данных или определять новые виртуальные. Конечные точки GraphQL позволяют использовать несколько вложенных инструкций Create в одной транзакции, а конечные точки REST поддерживают кэширование в памяти и ключевые слова строки запроса, подобные OData.

DAB изначально интегрируется со статическими веб-приложениями Azure. DAB также отлично работает с контейнерными приложениями Azure, экземплярами контейнеров Azure, службами Azure Kubernetes и веб-приложениями Azure для контейнеров. DAB работает с этими службами, полностью поддерживая пользовательские локальные развертывания.

DAB поддерживает:

  • SQL Server
  • Azure SQL
  • Azure Cosmos DB for NoSQL
  • PostgreSQL
  • База данных Azure для PostgreSQL
  • Azure Cosmos DB for PostgreSQL
  • MySQL
  • База данных Azure для MySQL
  • Хранилище данных SQL Azure

DAB может сократить типичную базу кода на треть, исключить набор модульных тестов, сократить конвейеры CI/CD, а также внедрить стандарты и расширенные возможности, которые обычно зарезервированы для крупнейших команд разработчиков. Она безопасна и многофункциональна, но остается невероятно простой, масштабируемой и наблюдаемой.

Архитектура

Эта схема разбивает связь между всеми компонентами построителя API данных.

Схема, на которую показан обзор архитектуры конструктора API данных. Схема включает файлы схемы, абстракции, файлы конфигурации и конечные точки GraphQL+REST.

Основные возможности

  • Поддержка коллекций NoSQL
  • Поддержка реляционных таблиц, представлений и хранимых процедур
  • Поддержка нескольких одновременных источников данных
  • Поддержка проверки подлинности через OAuth2/JWT
  • Поддержка EasyAuth и удостоверений Microsoft Entra
  • Авторизация на основе ролей с использованием полученных утверждений
  • Безопасность на уровне элементов с помощью выражений политики
  • Конечные точки REST
    • POST, GET, PUT, PATCH, DELETE
    • Фильтрация, сортировка и разбиение на страницы
    • Кэш в памяти
    • Поддержка OpenAPI
  • Конечные точки GraphQL
    • Запросы и изменения
    • Фильтрация, сортировка и разбиение на страницы
    • Навигация по связям
    • Динамические схемы
  • Простая разработка с помощью выделенного интерфейса командной строки
  • Интеграция статических веб-приложений через подключение к базе данных
  • & с открытым исходным кодом бесплатно

Открытый код

Построитель API данных имеет открытый код и выпускается по лицензии MIT. Репозиторий доступен на сайте GitHub по адресу azure/data-api-builder.