Delen via


Succesmethodologie voor Synapse-implementatie: Ontwerp van ontwikkelomgeving voor oplossingen evalueren

Notitie

Dit artikel maakt deel uit van het succes van de Azure Synapse-implementatie door ontwerpreeksen . Zie Azure Synapse-implementatie geslaagd voor een overzicht van de reeks.

Oplossingsontwikkeling en de omgeving waarin deze wordt uitgevoerd, is essentieel voor het succes van uw project. Ongeacht uw geselecteerde projectmethodologie (zoals waterval, Agile of Scrum), moet u meerdere omgevingen instellen ter ondersteuning van ontwikkeling, testen en productie. U moet ook duidelijke processen definiëren voor het bevorderen van wijzigingen tussen omgevingen.

Het instellen van een moderne datawarehouseomgeving voor zowel productie- als preproductiegebruik kan complex zijn. Houd er rekening mee dat een van de belangrijkste ontwerpbeslissingen automatisering is. Automatisering helpt de productiviteit te verhogen terwijl het risico op fouten wordt geminimaliseerd. Verder moeten uw omgevingen toekomstige flexibele ontwikkeling ondersteunen, waaronder het toevoegen van nieuwe workloads, zoals data science of realtime. Tijdens de ontwerpbeoordeling maakt u een ontwerp voor een ontwikkelomgeving voor oplossingen die niet alleen uw oplossing ondersteunt voor het huidige project, maar ook voor doorlopende ondersteuning en ontwikkeling van uw oplossing.

Ontwerp van oplossingsontwikkelingsomgeving

Het ontwerp van de omgeving moet de productieomgeving bevatten die als host fungeert voor de productieoplossing en ten minste één niet-productieomgeving. De meeste omgevingen bevatten twee niet-productieomgevingen: één voor ontwikkeling en een omgeving voor testen, kwaliteitscontrole (QA) en UAT (User Acceptance Testing). Omgevingen worden doorgaans gehost in afzonderlijke Azure-abonnementen. Overweeg om een productieabonnement en een niet-productieabonnement te maken. Deze scheiding biedt een duidelijke beveiligingsgrens en afbakening tussen productie en niet-productie.

In het ideale geval moet u drie omgevingen tot stand brengen.

  • Ontwikkeling: De omgeving waarin uw gegevens- en analyseoplossingen worden gebouwd. Bepaal of sandboxes moeten worden geboden voor ontwikkelaars. Sandboxes kunnen ontwikkelaars in staat stellen hun wijzigingen in isolatie aan te brengen en te testen, terwijl een gedeelde ontwikkelomgeving geïntegreerde wijzigingen van het hele ontwikkelteam host.
  • Test/QA/UAT: de productie-achtige omgeving voor het testen van implementaties vóór de release naar productie.
  • Productie: De uiteindelijke productieomgeving.

Synapse-werkruimten

Voor elke Synapse-werkruimte in uw oplossing moet de omgeving een productiewerkruimte en ten minste één niet-productiewerkruimte voor ontwikkeling en test/QA/UAT bevatten. Gebruik dezelfde naam voor alle pools en artefacten in verschillende omgevingen. Consistente naamgeving vereenvoudigt de promotie van werkruimten naar andere omgevingen.

Het promoveren van een werkruimte naar een andere werkruimte is een tweedelige procedure:

  1. Gebruik een AZURE Resource Manager-sjabloon (ARM-sjabloon) om werkruimteresources te maken of bij te werken.
  2. Migreer artefacten zoals SQL-scripts, notebooks, Spark-taakdefinities, pijplijnen, gegevenssets en gegevensstromen met behulp van Azure Synapse-hulpprogramma's voor continue integratie en levering (CI/CD) in Azure DevOps of op GitHub.

Azure DevOps of GitHub

Zorg ervoor dat de integratie met Azure DevOps of GitHub juist is ingesteld. Ontwerp een herhaalbaar proces waarmee wijzigingen worden uitgebracht in ontwikkel-, test-/QA-/UAT- en productieomgevingen. 

Belangrijk

We raden u aan gevoelige configuratiegegevens altijd veilig op te slaan in Azure Key Vault. Gebruik Azure Key Vault om een centrale, veilige locatie te onderhouden voor gevoelige configuratiegegevens, zoals database-verbindingsreeks s. Op die manier hebben de juiste services toegang tot configuratiegegevens vanuit elke omgeving.

Volgende stappen

In het volgende artikel in de azure Synapse-serie voor succes per ontwerp leert u hoe u uw team van ervaren resources evalueert waarmee uw Azure Synapse-oplossing wordt geïmplementeerd.