Что такое построитель API данных для баз данных Azure?
Построитель API данных заменяет любой пользовательский API, выполняющий операции CRUD (создание, чтение, обновление, удаление) в базе данных. DAB является кроссплатформенным, с открытым исходным кодом и не зависит от языка, технологий и платформ. Для этого требуется нулевой код и один файл конфигурации. Лучше всего, это бесплатная служба без уровня "Премиум" и может работать в любом облаке.
Построитель 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 данных.
Основные возможности
- Поддержка коллекций NoSQL
- Поддержка реляционных таблиц, представлений и хранимых процедур
- Поддержка нескольких одновременных источников данных
- Поддержка проверки подлинности через OAuth2/JWT
- Поддержка EasyAuth и удостоверений Microsoft Entra
- Авторизация на основе ролей с использованием полученных утверждений
- Безопасность на уровне элементов с помощью выражений политики
- Конечные точки REST
- POST, GET, PUT, PATCH, DELETE
- Фильтрация, сортировка и разбиение на страницы
- Кэш в памяти
- Поддержка OpenAPI
- Конечные точки GraphQL
- Запросы и изменения
- Фильтрация, сортировка и разбиение на страницы
- Навигация по связям
- Динамические схемы
- Простая разработка с помощью выделенного интерфейса командной строки
- Интеграция статических веб-приложений через подключение к базе данных
- & с открытым исходным кодом бесплатно
Открытый код
Построитель API данных имеет открытый код и выпускается по лицензии MIT. Репозиторий доступен на сайте GitHub по адресу azure/data-api-builder.