DAB(데이터 API 작성기)는 데이터베이스를 통해 REST API를 제공합니다. 또한 GraphQL API를 제공합니다. SQL Server뿐만 아니라 Azure SQL Database, Azure Cosmos DB, PostgreSQL, MySQL 및 SQL Data Warehouse도 지원합니다. DAB는 모든 클라우드 또는 온-프레미스에서 실행되며 오픈 소스이며 무료로 사용할 수 있습니다. Microsoft Fabric은 안전하고 기능이 풍부하며 기본 구성 요소이며, 고성능이며 대규모 데이터 작업을 처리할 수 있다고 말하는 또 다른 방법입니다.
데이터 API 작성기에서는 데이터베이스에 대해 제네릭 CRUD(만들기, 읽기, 업데이트, 삭제) 작업을 수행하는 대부분의 사용자 지정 데이터 API를 대체합니다. DAB는 언어, 기술 및 프레임워크와 독립적입니다. 0개의 코드와 단일 구성 파일이 필요합니다. 가장 좋은 점은 프리미엄 계층이 없는 진정한 무료이며 어디서나 무상태로 실행된다는 점입니다.
데이터 API 작성기는 개발자를 위해 설계되었습니다. DAB에는 네이티브 OpenAPI를 사용하는 플랫폼 간 CLI, Open Telemetry 및 상태 검사, REST 엔드포인트용 Swagger 및 GraphQL 엔드포인트용 Nitro(이전에는 바나나 케이크 팝이라고 함)가 있습니다. 무상태, Docker에 친화적인 컨테이너는 EasyAuth, Microsoft Entra Identity, 또는 엔터프라이즈에서 선택하는 JWT(JSON 웹 토큰) 서버로 보안이 강화될 수 있습니다. 유연한 정책 엔진, 세분화된 보안 컨트롤이 있으며 클레임 데이터를 SQL 세션 컨텍스트에 자동으로 전달합니다.
DAB(데이터 API 작성기)는 관계형 및 NoSQL 원본을 비롯한 여러 백 엔드 데이터 원본을 동시에 지원합니다. 또한 DAB는 Application Insights와 원활하게 통합됩니다. 구성 파일은 데이터베이스의 관계를 반영하거나 핫 다시 로드를 지원하는 새 가상 파일을 정의할 수 있습니다. GraphQL 엔드포인트는 단일 트랜잭션 내에서 여러 개의 중첩된 Create 문을 허용하는 반면 REST 엔드포인트는 메모리 내 캐싱 및 OData와 유사한 쿼리 문자열 키워드를 다양하게 지원합니다.
DAB는 기본적으로 Azure Static Web Apps와 통합됩니다. 또한 Azure Container Apps, Azure Container Instances, Azure Kubernetes Services 및 Azure Web Apps for Containers에서도 잘 작동합니다. DAB는 사용자 지정 온-프레미스 배포를 완벽하게 지원하면서 이러한 서비스와 함께 작동합니다.
DAB는 다음을 지원합니다.
- SQL 서버
- Azure SQL
- NoSQL용 Azure Cosmos DB
- PostgreSQL
- PostgreSQL용 Azure 데이터베이스
- Azure Cosmos DB for PostgreSQL (아주르 코스모스 DB 포스트그레SQL용)
- MySQL
- Azure Database for MySQL (MySQL을 위한 Azure 데이터베이스)
- Azure SQL Data Warehouse
DAB는 일반적인 코드베이스를 3분의 1로 줄이고, 단위 테스트 제품군을 제거하고, CI/CD 파이프라인을 단축하고, 가장 큰 개발 팀을 위해 일반적으로 예약된 표준 및 고급 기능을 도입할 수 있습니다. 매우 간단하고 확장 가능하며 관찰 가능한 상태로 유지되는 동안 안전하고 기능이 풍부합니다.
건축학
이 다이어그램은 데이터 API 작성기의 모든 구성 요소 간의 관계를 분석합니다.
주요 기능
- NoSQL 컬렉션 지원
- 관계형 테이블, 뷰 및 저장 프로시저 지원
- 여러 동시 데이터 원본 지원
- OAuth2/JWT를 통한 인증 지원
- EasyAuth 및 Microsoft Entra ID 지원
- 수신된 클레임을 사용하는 역할 기반 권한 부여
- 정책 식을 통한 항목 수준 보안
- REST 엔드포인트
- POST, GET, PUT, PATCH, DELETE
- 필터링, 정렬 및 페이지 매김
- 메모리 내 캐시
- OpenAPI 지원
- GraphQL 엔드포인트
- 쿼리 및 변형
- 필터링, 정렬 및 페이지 매김
- 관계 탐색
- 동적 스키마
- 전용 CLI를 통한 간편한 개발
- 데이터베이스 연결을 통한 Static Web Apps 통합
- 오픈 소스 (무료)
오픈 소스
데이터 API 작성기는 오픈 소스이며 MIT 라이선스에 따라 릴리스됩니다. 리포지토리는 Azure/data-api-builder의 GitHub에서 사용할 수 있습니다.