Overzicht van Azure Databricks-configuraties
Azure Databricks is een cloudgebaseerd platform dat de beste functies van data engineering en data science combineert. Hiermee kunt u gegevenspijplijnen bouwen, beheren en analyseren met behulp van Apache Spark, een snel en schaalbaar open-sourceframework voor big-dataverwerking. Azure Databricks biedt ook een gezamenlijke werkruimte voor datawetenschappers en -technici om samen te werken aan Machine Learning en projecten op het gebied van kunstmatige intelligentie.
Als u bij de overheid of de publieke sector werkt, biedt deze documentatie over referentiearchitectuur een eigenzinnige leidraad voor het gebruik van Azure Databricks met een Sovereign Landing Zone- of Azure Landing Zone-implementatie met soevereiniteitsbasisbeleidsinitiatieven toegepast.
De Azure Databricks-productdocumentatie biedt uitgebreide informatie over verschillende artikelen. Dit document is een aanvulling op de documentatie en biedt u zorgvuldig samengestelde aanbevelingen over belangrijke concepten en opties voor het configureren van een Azure Databricks omgeving.
Belangrijkste kenmerken van Azure Databricks
Azure Databricks beschikt over een uitgebreide set functies, maar voor deze referentiearchitectuur richten we ons op de infrastructuurelementen. Azure Databricks biedt:
Interactieve notitieboekjes: Gebruik notitieboekjes om code te schrijven in Python, Scala, SQL of R en visualiseer de resultaten met diagrammen en grafieken. Delen en reageer op notebooks met teamleden en integreer ze met populaire tools zoals GitHub en Azure DevOps.
Rekenopties: Azure Databricks biedt verschillende rekenopties ter ondersteuning van data engineering, data science en data-analyseworkloads. Deze opties omvatten on-demand, schaalbare serverloze computing voor notebooks en taken, ingerichte computing voor algemene analyses en geautomatiseerde taken, en SQL-warehouses voor het uitvoeren van SQL-opdrachten. Instantiepools bieden inactieve, gebruiksklare instanties om de opstart- en autoschaaltijden te verkorten en zo de efficiëntie in verschillende scenario's voor gegevensverwerking te verbeteren.
Gegevensintegratie: koppel eenvoudig Verbinden aan verschillende gegevensbronnen en -bestemmingen, zoals Azure Blob Storage, Azure Data Lake Storage, Azure SQL Database, Azure Synapse Analytics, Azure Cosmos DB en meer. Gebruik Delta Lake, een betrouwbare en krachtige data lake-oplossing die ACID-transacties en schemahandhaving ondersteunt.
Machine Learning: Bouw, train en implementeer Machine Learning-modellen met behulp van populaire frameworks zoals TensorFlow, PyTorch, Scikit-learn en XGBoost. Gebruik MLflow, een open-sourceplatform voor het beheer van de levenscyclus van Machine Learning, om experimenten bij te houden, statistieken te loggen en modellen te implementeren.
Bedrijfsbeveiliging: Krijg veilig toegang tot uw gegevens en verwerk ze veilig met functies zoals op rollen gebaseerde toegangscontrole, encryptie, auditing en naleving. Integreer Azure Databricks met Microsoft Entra ID, Azure Key Vault en Azure Private koppelen voor identiteits- en gegevensbescherming.
Gegevensbeheer en -deling: Unity Catalog vereenvoudigt het delen van gegevens binnen organisaties en veilige analyses in de cloud door een beheerde versie van Delta Sharing te bieden voor extern delen en een uniform gegevensbeheermodel voor de gegevens lakehouse.
Hoogwaardige Databricks-architectuur
Azure Databricks werkt vanuit een controlevlak en een rekenvlak. De referentiearchitectuur beveelt configuratieopties aan in elk van deze besturingsvlakken. Het volgende diagram beschrijft de algemene Azure Databricks-architectuur.
Controlevlak
Het controlevlak is de laag van Azure Databricks dat de levenscyclus van clusters en taken beheert, evenals de authenticatie en autorisatie van gebruikers en toegang tot gegevens. Het controlevlak omvat de backendservices die worden beheerd door Azure Databricks in uw Azure Databricks-account. De webapplicatie bevindt zich in het controlevlak.
Het besturingsvlak draait in een Azure-abonnement dat eigendom is van Azure Databricks en communiceert met de klassieke en serverloze rekenvlakken via beveiligde API's. Het controlepaneel biedt ook de webinterface en REST API's waarmee gebruikers met Azure Databricks kunnen communiceren.
Bereken vlak
Het rekenvlak is de plek waar uw gegevens worden verwerkt. Er zijn twee soorten rekenvlakken: serverloos en klassiek. Het serverloze rekenvlak biedt directe en elastische bronnen, terwijl het klassieke rekenvlak afhankelijk is van vooraf ingerichte infrastructuur.
Serverloos computervlak
Serverloze computing is ideaal voor ad-hoc query's, notebooks en kortdurende workloads. U kunt bijvoorbeeld serverless computing gebruiken om SQL-opdrachten uit te voeren in notebooks of lichte taken uit te voeren. In het serverloze rekenvlak worden resources uitgevoerd in een compute laag binnen het Azure Databricks-account.
Azure Databricks maakt een serverloos rekenvlak in dezelfde Azure regio als uw klassieke rekenvlak in de werkruimte. Het beheert een pool van servers, die zich in het account van Databricks bevinden, waarop Kubernetes-containers draaien die binnen enkele seconden aan een gebruiker kunnen worden toegewezen. Voor meer informatie, zie Aankondiging van Databricks Serverless SQL: direct, beheerd, beveiligd en productieklaar platform voor SQL-workloads - De Databricks-blog.
Het computerplatform breidt het cluster snel uit met meer servers wanneer gebruikers tegelijkertijd rapporten of query's uitvoeren om de gelijktijdige belasting te verwerken. Databricks beheert de volledige configuratie van de server en voert indien nodig automatisch patches en upgrades uit. Voor serverloze computing worden kosten in rekening gebracht op basis van gebruik (bijvoorbeeld per query-uitvoering of taakuitvoering).
Elke server draait een beveiligde configuratie en alle verwerkingen worden beveiligd door drie isolatielagen: de Kubernetes-container die de runtime host, de VM die de container host en het virtuele netwerk voor de werkruimte. Elke laag is geïsoleerd in één werkruimte, waarbij delen of verkeer tussen netwerken niet is toegestaan.
De containers maken gebruik van beveiligde configuraties, VM's worden afgesloten en niet hergebruikt en netwerkverkeer is beperkt tot knooppunten in hetzelfde cluster. Alle rekenkracht is tijdelijk en uitsluitend bestemd voor die werklast. Deze wordt veilig gewist nadat de werklast is voltooid.
Al het verkeer tussen u, het controlevlak, het rekenvlak en de cloudservices wordt gerouteerd via het wereldwijde netwerk van Azure, niet via het openbare internet. Het serverloze rekenvlak voor serverloze SQL-warehouses maakt geen gebruik van de door de klant configureerbare back-end Azure Private koppelen-connectiviteit. Het Databricks-besturingsvlak Azure maakt verbinding met het serverloze rekenvlak via mTLS, waarbij IP-toegang alleen is toegestaan voor het IP-adres van het besturingsvlak.
Alle aangesloten opslag wordt beschermd door de industriestandaard AES-256-encryptie en al het verkeer tussen de gebruiker, het controlevlak, het rekenvlak en cloudservices wordt gecodeerd met ten minste TLS 1.2. Serverloze SQL-warehouses gebruiken geen door de klant beheerde sleutels voor beheerde schijven.
Werklasten hebben geen privileges of referenties voor systemen buiten het bereik van die werklast en toegang tot de gegevens vindt plaats via tokens met een korte geldigheidsduur (één uur). Deze tokens worden veilig doorgegeven aan elke specifieke workload.
Vanaf juni 2024 wordt Azure Confidential Computing niet meer ondersteund voor serverloze computing, maar uw workload wordt beschermd door meerdere isolatielagen, zoals weergegeven in het isolatiediagram van Azure Serverloze computing.
Voor meer informatie, zie Implementeer uw workloads veilig op serverloze computing.
Klassiek rekenvlak
Het klassieke rekenvlak is geschikt voor taken die lang duren, productiewerklasten en consistente resourcebehoeften. U kunt bijvoorbeeld ingerichte rekenkracht gebruiken voor ETL-pijplijnen, Machine Learning-training en data engineering-taken.
Een klassiek rekenvlak heeft een natuurlijke isolatie omdat het in uw eigen Azure-abonnement wordt uitgevoerd. Nieuwe computerbronnen worden gemaakt en geconfigureerd binnen het virtuele netwerk van elke werkruimte in uw Azure-abonnement. Rekenbronnen blijven constant totdat ze expliciet worden gewijzigd en worden gefactureerd op basis van het type instantie en de duur. Clusters kunnen door de klant beheerde sleutels gebruiken voor beheerde schijven en spot-instances worden ondersteund.
Azure Databricks-beheerders kunnen clusterbeleid gebruiken om veel aspecten van de clusters te beheren, waaronder beschikbare instancetypen, Databricks-versies en instancegroottes.
Databricks Virtual Network Injection is een functie waarmee u Azure Databricks Classic Compute Plane-bronnen in uw eigen virtuele netwerk kunt implementeren. Met deze functie kunt u Databricks op een veiligere manier Verbinden Azure naar andere Azure-services verzenden met behulp van service-eindpunten of privé-eindpunten. U kunt ook peering van virtuele netwerken gebruiken om het virtuele netwerk waarop uw Azure Databricks-werkruimte draait, te koppelen aan een ander virtueel netwerk van Azure.