Udostępnij za pośrednictwem


Co to jest konstruktor interfejsu API danych dla usługi Azure Databases?

Konstruktor interfejsu API danych zastępuje wszystkie niestandardowe interfejsy API wykonujące operacje CRUD (tworzenie, odczyt, aktualizacja, usuwanie) względem bazy danych. Język DAB jest międzyplatformowy, open source i niezależny od języka, technologii i struktur. Wymaga to zera kodu i pojedynczego pliku konfiguracji. Co najlepsze, jest to bezpłatne, bez warstwy Premium i może działać w dowolnej chmurze.

Ilustracja maskotki konstruktora interfejsu API danych, która jest bazą danych z kapeluszem konstrukcyjnym z logo chmury.

Konstruktor interfejsu API danych jest przeznaczony dla deweloperów. Konstruktor interfejsu API danych oferuje międzyplatformowy interfejs wiersza polecenia, natywny interfejs OpenAPI, program Swagger dla punktów końcowych REST i narzędzie Banana Cake Pop dla punktów końcowych GraphQL. Kontener przyjazny dla platformy Docker bezstanowy można zabezpieczyć za pomocą rozwiązania EasyAuth, tożsamości Microsoft Entra Identity lub dowolnego serwera tokenu internetowego JSON (JWT) wybranego przez przedsiębiorstwo. Ma elastyczny aparat zasad, szczegółowe mechanizmy kontroli zabezpieczeń i automatycznie przekazuje dane oświadczeń do kontekstu sesji SQL.

Konstruktor interfejsu API danych (DAB) obsługuje jednocześnie wiele źródeł danych zaplecza, w tym źródeł relacyjnych i NoSQL. DaB integruje się również bezproblemowo z usługą Application Insights. Plik konfiguracji może odzwierciedlać relacje w bazie danych lub definiować nowe, wirtualne. Punkty końcowe GraphQL umożliwiają korzystanie z wielu zagnieżdżonych instrukcji Create w ramach jednej transakcji, natomiast punkty końcowe REST obsługują buforowanie w pamięci i obsługują słowa kluczowe ciągu zapytania przypominające dane OData.

Język DAB natywnie integruje się z usługą Azure Static Web Apps. Język DAB doskonale współpracuje również z usługami Azure Container Apps, Azure Container Instances, Azure Kubernetes Services i Azure Web Apps for Containers. DaB współpracuje z tymi usługami, jednocześnie w pełni obsługując niestandardowe wdrożenia lokalne.

Język DAB obsługuje:

  • SQL Server
  • Azure SQL
  • Azure Cosmos DB for NoSQL
  • PostgreSQL
  • Azure Database for PostgreSQL
  • Azure Cosmos DB for PostgreSQL
  • MySQL
  • Azure Database for MySQL
  • Azure SQL Data Warehouse

DaB może zmniejszyć typową bazę kodu o jedną trzecią, wyeliminować zestawy testów jednostkowych, skrócić potoki ciągłej integracji/ciągłego wdrażania oraz wprowadzić standardy i zaawansowane możliwości zwykle zarezerwowane dla największych zespołów programistycznych. Jest ona bezpieczna i bogata w funkcje, a jednocześnie pozostaje niezwykle prosta, skalowalna i obserwowalna.

Architektura

Ten diagram dzieli relację między wszystkimi składnikami konstruktora interfejsu API danych.

Diagram przedstawiający przegląd architektury narzędzia Data API Builder. Diagram zawiera pliki schematu, abstrakcje, pliki konfiguracji i wynikowe punkty końcowe GraphQL+REST.

Najważniejsze funkcje

  • Obsługa kolekcji NoSQL
  • Obsługa tabel, widoków i procedur składowanych
  • Obsługa wielu jednoczesnych źródeł danych
  • Obsługa uwierzytelniania za pośrednictwem protokołu OAuth2/JWT
  • Obsługa usług EasyAuth i Microsoft Entra Identity
  • Autoryzacja oparta na rolach przy użyciu odebranych oświadczeń
  • Zabezpieczenia na poziomie elementu za pośrednictwem wyrażeń zasad
  • Punkty końcowe REST
    • POST, GET, PUT, PATCH, DELETE
    • Filtrowanie, sortowanie i stronicowanie
    • Pamięć podręczna w pamięci
    • Obsługa interfejsu OpenAPI
  • Punkty końcowe GraphQL
    • Zapytania i mutacje
    • Filtrowanie, sortowanie i stronicowanie
    • Nawigacja po relacji
    • Schematy dynamiczne
  • Łatwe programowanie za pomocą dedykowanego interfejsu wiersza polecenia
  • Integracja dla usługi Static Web Apps za pośrednictwem połączenia z bazą danych
  • Bezpłatne & open source

Technologia open source

Konstruktor interfejsu API danych jest oprogramowaniem open source i wydanym w ramach licencji MIT. Repozytorium jest dostępne w usłudze GitHub w witrynie azure/data-api-builder.