Delen via


Apache Spark op Azure Databricks

In dit artikel wordt beschreven hoe Apache Spark is gerelateerd aan Azure Databricks en het Databricks Data Intelligence Platform.

Apache Spark vormt het hart van het Azure Databricks-platform en is de technologie die rekenclusters en SQL-warehouses mogelijk maakt. Azure Databricks is een geoptimaliseerd platform voor Apache Spark, dat een efficiënt en eenvoudig platform biedt voor het uitvoeren van Apache Spark-workloads.

Spark-transformaties en -acties

In Apache Spark worden alle bewerkingen gedefinieerd als transformaties of acties.

  • Transformaties: voeg enkele verwerkingslogica toe aan het plan. Voorbeelden hiervan zijn het lezen van gegevens, joins, aggregaties en typecasting.
  • Acties: verwerkingslogica activeren om een resultaat te evalueren en uit te voeren. Voorbeelden zijn schrijfbewerkingen, het weergeven of bekijken van resultaten, handmatig opslaan in cache of het ophalen van het aantal rijen.

Apache Spark maakt gebruik van een luie uitvoeringsmodel , wat betekent dat geen van de logica die is gedefinieerd door een verzameling bewerkingen wordt geëvalueerd totdat een actie wordt geactiveerd. Als u onnodige evaluatie van logica wilt voorkomen, gebruikt u alleen acties om resultaten weer op te slaan in een doeltabel.

Omdat acties een verwerkingsknelpunt vormen voor het optimaliseren van logica, heeft Azure Databricks talloze optimalisaties toegevoegd bovenop de optimalisaties die al aanwezig zijn in Apache Spark om optimale logica-uitvoering te garanderen. Deze optimalisaties beschouwen alle transformaties die door een bepaalde actie tegelijk worden geactiveerd en vinden het optimale plan op basis van de fysieke indeling van de gegevens. Het handmatig opslaan van gegevens of het retourneren van preview-resultaten in productiepijplijnen kan deze optimalisaties onderbreken en leiden tot hogere kosten en latentie.

Wat is de relatie tussen Apache Spark en Azure Databricks?

Het Databricks-bedrijf is opgericht door de oorspronkelijke makers van Apache Spark. Als opensource-softwareproject heeft Apache Spark bijdragers van veel topbedrijven, waaronder Databricks.

Databricks blijft functies ontwikkelen en vrijgeven voor Apache Spark. De Databricks Runtime bevat aanvullende optimalisaties en eigen functies waarmee Apache Spark wordt gebouwd en uitgebreid, waaronder Photon, een geoptimaliseerde versie van Apache Spark die is herschreven in C++.

Hoe werkt Apache Spark in Azure Databricks?

Wanneer u een rekencluster of SQL Warehouse implementeert in Azure Databricks, wordt Apache Spark geconfigureerd en geïmplementeerd op virtuele machines. U hoeft geen Spark-context of Spark-sessie te configureren of initialiseren, omdat deze voor u worden beheerd door Azure Databricks.

Kan ik Azure Databricks gebruiken zonder Apache Spark te gebruiken?

Azure Databricks ondersteunt verschillende workloads en bevat opensource-bibliotheken in de Databricks Runtime. Databricks SQL maakt gebruik van Apache Spark onder de schermen, maar eindgebruikers gebruiken standaard SQL-syntaxis om databaseobjecten te maken en er query's op uit te voeren.

Databricks Runtime voor Machine Learning is geoptimaliseerd voor ML-workloads en veel gegevenswetenschappers gebruiken primaire opensourcebibliotheken zoals TensorFlow en SciKit Learn terwijl ze aan Azure Databricks werken. U kunt jobs gebruiken om willekeurige workloads in te plannen voor rekenresources die zijn geïmplementeerd en beheerd door Azure Databricks.

Waarom Apache Spark gebruiken in Azure Databricks?

Het Databricks-platform biedt een veilige, samenwerkingsomgeving voor het ontwikkelen en implementeren van bedrijfsoplossingen die schalen met uw bedrijf. Databricks-medewerkers omvatten veel van de meest deskundige Apache Spark-onderhouders en -gebruikers ter wereld. Het bedrijf ontwikkelt en publiceert voortdurend nieuwe optimalisaties om ervoor te zorgen dat gebruikers toegang hebben tot de snelste omgeving voor het uitvoeren van Apache Spark.

Hoe kom ik meer te weten over het gebruik van Apache Spark in Azure Databricks?

Als u aan de slag wilt met Apache Spark in Azure Databricks, duikt u meteen in. In de zelfstudie over Apache Spark DataFrames wordt uitgelegd hoe u gegevens laadt en transformeert in Python, R of Scala. Zie zelfstudie: Gegevens laden en transformeren met Apache Spark DataFrames.

Aanvullende informatie over de taalondersteuning voor Python, R en Scala in Spark vindt u in de secties PySpark in Azure Databricks, SparkR en Azure Databricks voor Scala-ontwikkelaars , evenals in naslaginformatie voor Apache Spark-API's.