Succesmethodologie voor Synapse-implementatie: Werkruimteontwerp 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.
Synapse-werkruimte is een uniforme grafische gebruikerservaring die samen uw analytische en gegevensverwerkingsengines, data lakes, databases, tabellen, gegevenssets en rapportageartefacten combineert met code en procesindeling. Gezien het aantal technologieën en services dat is geïntegreerd in de Synapse-werkruimte, moet u ervoor zorgen dat de belangrijkste onderdelen in uw ontwerp worden opgenomen.
Ontwerpbeoordeling synapse-werkruimte
Bepaal of uw oplossingsontwerp één Synapse-werkruimte of meerdere werkruimten omvat. Bepaal de stuurprogramma's van dit ontwerp. Hoewel er verschillende redenen kunnen zijn, is in de meeste gevallen de reden voor meerdere werkruimten beveiligingsscheiding of factureringsscheiding. Houd er rekening mee dat er bij het bepalen van het aantal werkruimten en databasegrenzen een limiet van 20 werkruimten per abonnement is.
Bepaal welke elementen of services binnen elke werkruimte moeten worden gedeeld en met welke resources. Resources kunnen data lakes, integratieruntimes (IR's), metagegevens of configuraties en code bevatten. Bepaal waarom dit specifieke ontwerp is gekozen in termen van potentiële synergieën. Vraag uzelf of deze synergieën de extra kosten- en beheeroverhead rechtvaardigen.
Ontwerpbeoordeling van Data Lake
We raden u aan om de Data Lake (indien onderdeel van uw oplossing) goed te gelaagd te maken. U moet uw data lake verdelen in drie belangrijke gebieden die betrekking hebben op bronzen, zilveren en gouden gegevenssets. Brons - of de onbewerkte laag - kan zich op een eigen afzonderlijk opslagaccount bevinden, omdat het strengere toegangsbeheer heeft vanwege ontmaskerde gevoelige gegevens die mogelijk worden opgeslagen.
Beoordeling van beveiligingsontwerp
Controleer het beveiligingsontwerp voor de werkruimte en vergelijk het met de informatie die u tijdens de evaluatie hebt verzameld. Zorg ervoor dat aan alle vereisten wordt voldaan en dat alle beperkingen in aanmerking zijn genomen. Voor eenvoudiger beheer is het raadzaam dat gebruikers worden ingedeeld in groepen met de juiste machtigingenprofilering: u kunt het toegangsbeheer vereenvoudigen door gebruik te maken van beveiligingsgroepen die zijn afgestemd op rollen. Op die manier kunnen netwerkbeheerders gebruikers toevoegen aan of verwijderen uit de juiste beveiligingsgroepen om de toegang te beheren.
Serverloze SQL-pools en Apache Spark-tabellen slaan hun gegevens op in een Azure Data Lake Gen2-container (ADLS Gen2) die is gekoppeld aan de werkruimte. Door de gebruiker geïnstalleerde Apache Spark-bibliotheken worden ook beheerd in hetzelfde opslagaccount. Als u deze use cases wilt inschakelen, moeten zowel gebruikers als de door de werkruimte beheerde service-identiteit (MSI) worden toegevoegd aan de rol Inzender voor opslagblobgegevens van de ADLS Gen2-opslagcontainer. Controleer deze vereiste op basis van uw beveiligingsvereisten.
Toegewezen SQL-pools bieden een uitgebreide set beveiligingsfuncties voor het versleutelen en maskeren van gevoelige gegevens. Zowel toegewezen als serverloze SQL-pools maken het volledige oppervlak van SQL Server-machtigingen mogelijk, waaronder ingebouwde rollen, door de gebruiker gedefinieerde rollen, SQL-verificatie en Microsoft Entra-verificatie. Bekijk het beveiligingsontwerp voor de toegewezen SQL-pool en serverloze SQL-pool en gegevens van uw oplossing.
Bekijk het beveiligingsplan voor uw Data Lake en alle ADLS Gen2-opslagaccounts (en andere) die deel uitmaken van uw Azure Synapse Analytics-oplossing. ADLS Gen2-opslag is zelf geen rekenengine en heeft dus geen ingebouwde mogelijkheid om gegevenskenmerken selectief te maskeren. U kunt ADLS Gen2-machtigingen toepassen op opslagaccount- of containerniveau met behulp van op rollen gebaseerd toegangsbeheer (RBAC) en/of op map- of bestandsniveau met behulp van toegangsbeheerlijsten (ACL's). Controleer het ontwerp zorgvuldig en probeer onnodige complexiteit te voorkomen.
Hier volgen enkele punten die u moet overwegen voor het beveiligingsontwerp.
- Zorg ervoor dat de ingestelde vereisten voor Microsoft Entra-id's zijn opgenomen in het ontwerp.
- Controleer op scenario's tussen tenants. Dergelijke problemen kunnen zich voordoen omdat sommige gegevens zich in een andere Azure-tenant bevinden, of moeten worden verplaatst naar een andere tenant of moeten worden geopend door gebruikers van een andere tenant. Zorg ervoor dat deze scenario's in uw ontwerp worden overwogen.
- Wat zijn de rollen voor elke werkruimte? Hoe gebruiken ze de werkruimte?
- Hoe is de beveiliging ontworpen binnen de werkruimte?
- Wie kunt u alle scripts, notebooks en pijplijnen bekijken?
- Wie kunt scripts en pijplijnen uitvoeren?
- Wie kunt u SQL- en Spark-pools maken/onderbreken/hervatten?
- Wie kunt u wijzigingen in de werkruimte publiceren?
- Wie kunt u wijzigingen doorvoeren in broncodebeheer?
- Krijgen pijplijnen toegang tot gegevens met behulp van opgeslagen referenties of de beheerde identiteit van de werkruimte?
- Hebben gebruikers de juiste toegang tot de data lake om door de gegevens in Synapse Studio te bladeren?
- Wordt de Data Lake goed beveiligd met behulp van de juiste combinatie van RBAC en ACL's?
- Zijn de gebruikersmachtigingen voor de SQL-pool correct ingesteld voor elke rol (data scientist, ontwikkelaar, beheerder, zakelijke gebruiker en anderen)?
Beoordeling van netwerkontwerp
Hier volgen enkele punten die u moet overwegen voor het netwerkontwerp.
- Is de connectiviteit tussen alle resources ontworpen?
- Wat is het netwerkmechanisme dat moet worden gebruikt (Azure ExpressRoute, openbaar internet of privé-eindpunten)?
- Moet u veilig verbinding kunnen maken met Synapse Studio?
- Is rekening gehouden met gegevensexfiltratie?
- Moet u verbinding maken met on-premises gegevensbronnen?
- Moet u verbinding maken met andere cloudgegevensbronnen of compute-engines, zoals Azure Machine Learning?
- Zijn Azure-netwerkonderdelen, zoals netwerkbeveiligingsgroepen (NSG's), gecontroleerd op de juiste connectiviteit en gegevensverplaatsing?
- Is rekening gehouden met de integratie met de privé-DNS-zones?
- Moet u vanuit Synapse Studio door de data lake kunnen bladeren of gewoon query's uitvoeren op gegevens in de data lake met serverloze SQL of PolyBase?
Identificeer ten slotte al uw gegevensgebruikers en controleer of hun connectiviteit in het ontwerp is verantwoordelijk. Controleer of netwerk- en beveiligingsposten ervoor zorgen dat uw service toegang heeft tot vereiste on-premises bronnen en dat de bijbehorende verificatieprotocollen en -mechanismen worden ondersteund. In sommige scenario's moet u mogelijk meer dan één zelf-hostende IR of gegevensgateway hebben voor SaaS-oplossingen, zoals Microsoft Power BI.
Controle van ontwerpbeoordeling
Bekijk het ontwerp van de bewaking van de Azure Synapse-onderdelen om ervoor te zorgen dat ze voldoen aan de vereisten en verwachtingen die tijdens de evaluatie zijn geïdentificeerd. Controleer of de bewaking van resources en gegevenstoegang is ontworpen en of elke bewakingsvereiste wordt geïdentificeerd. Er moet een robuuste bewakingsoplossing worden geïmplementeerd als onderdeel van de eerste implementatie naar productie. Op die manier kunnen fouten tijdig worden geïdentificeerd, agnoseerd en aangepakt. Naast de basisinfrastructuur en pijplijnuitvoeringen moeten ook gegevens worden bewaakt. Afhankelijk van de Azure Synapse-onderdelen die worden gebruikt, identificeert u de bewakingsvereisten voor elk onderdeel. Als Spark-pools bijvoorbeeld deel uitmaken van de oplossing, controleert u het onjuiste recordarchief.
Hier volgen enkele punten die u moet overwegen voor het bewakingsontwerp.
- Wie kan elk resourcetype (pijplijnen, pools en andere) bewaken?
- Hoe lang moeten databaseactiviteitslogboeken worden bewaard?
- Maken werkruimte- en databaselogboekretentie gebruik van Log Analytics of Azure Storage?
- Worden waarschuwingen geactiveerd in het geval van een pijplijnfout? Als dat het geval is, wie moet dan op de hoogte worden gesteld?
- Welk drempelwaardeniveau van een SQL-pool moet een waarschuwing activeren? Wie moet u hiervan op de hoogte worden gesteld?
Ontwerpbeoordeling voor broncodebeheer
Standaard past een Synapse-werkruimte wijzigingen rechtstreeks toe op de Synapse-service met behulp van de ingebouwde publicatiefunctionaliteit. U kunt integratie van broncodebeheer inschakelen, wat veel voordelen biedt. Voordelen zijn betere samenwerking, versiebeheer, goedkeuringen en releasepijplijnen om wijzigingen in ontwikkel-, test- en productieomgevingen te bevorderen. Azure Synapse staat één opslagplaats voor broncodebeheer per werkruimte toe. Dit kan Azure DevOps Git of GitHub zijn.
Hier volgen enkele punten die u moet overwegen voor het ontwerp van broncodebeheer.
- Als u Azure DevOps Git gebruikt, bevinden de Synapse-werkruimte en de bijbehorende opslagplaats zich in dezelfde tenant?
- Wie heeft toegang tot broncodebeheer?
- Welke machtigingen worden aan elke gebruiker verleend in broncodebeheer?
- Is er een vertakkings- en samenvoegstrategie ontwikkeld?
- Worden release-pijplijnen ontwikkeld voor implementatie in verschillende omgevingen?
- Wordt een goedkeuringsproces gebruikt voor het samenvoegen en voor release-pijplijnen?
Notitie
Het ontwerp van de ontwikkelomgeving is van cruciaal belang voor het succes van uw project. Als een ontwikkelomgeving is ontworpen, wordt deze geëvalueerd in een afzonderlijke fase van deze methodologie.
Volgende stappen
In het volgende artikel in de Azure Synapse-reeks met succes van ontwerp leert u hoe u het ontwerp voor gegevensintegratie evalueert en controleert of deze voldoet aan richtlijnen en vereisten.