Databricks Utilities met Databricks-Verbinding maken voor Python

Notitie

Dit artikel bevat informatie over Databricks Verbinding maken voor Databricks Runtime 13.0 en hoger.

In dit artikel wordt beschreven hoe u Databricks Utilities gebruikt met Databricks Verbinding maken voor Python. Met Databricks Verbinding maken kunt u populaire IDE's, notebookservers en aangepaste toepassingen verbinden met Azure Databricks-clusters. Zie Wat is Databricks Verbinding maken? Zie Databricks Utilities met Databricks Verbinding maken voor Scala voor de Scala-versie van dit artikel.

Notitie

Voordat u Databricks Verbinding maken gaat gebruiken, moet u de Databricks Verbinding maken-client instellen.

U gebruikt Databricks Verbinding maken als volgt om toegang te krijgen tot Databricks Utilities:

  • Gebruik de variabele van dbutils de WorkspaceClient klasse voor toegang tot Databricks Utilities. De WorkspaceClient klasse behoort tot de Databricks SDK voor Python en is opgenomen in Databricks Verbinding maken.
  • Gebruik dbutils.fs deze functie om toegang te krijgen tot het hulpprogramma Databricks Utilities fs .
  • Gebruik dbutils.secrets deze functie voor toegang tot het hulpprogramma Geheimen van Databricks Utilities.
  • Er zijn geen databricks-hulpprogramma's beschikbaar via dbutils.

Tip

U kunt ook de meegeleverde Databricks SDK voor Python gebruiken voor toegang tot alle beschikbare Databricks REST API's, niet alleen de voorgaande Databricks Utilities-API's. Zie databricks-sdk in PyPI.

Als u wilt initialiseren WorkspaceClient, moet u voldoende informatie opgeven om een Databricks SDK met de werkruimte te verifiëren. U kunt bijvoorbeeld:

  • Codeer de werkruimte-URL en het toegangstoken rechtstreeks in uw code en initialiseer WorkspaceClient deze als volgt. Hoewel deze optie wordt ondersteund, raadt Databricks deze optie niet aan, omdat gevoelige informatie, zoals toegangstokens, kan worden weergegeven als uw code is ingecheckt bij versiebeheer of anderszins wordt gedeeld:

    from databricks.sdk import WorkspaceClient
    
    w = WorkspaceClient(host  = f"https://{retrieve_workspace_instance_name()}",
                        token = retrieve_token())
    
  • Maak of geef een configuratieprofiel op dat de velden host bevat en tokengeef het WorkspaceClient vervolgens als volgt intialiseren:

    from databricks.sdk import WorkspaceClient
    
    w = WorkspaceClient(profile = "<profile-name>")
    
  • Stel de omgevingsvariabelen DATABRICKS_HOST in en DATABRICKS_TOKEN stel ze op dezelfde manier in voor Databricks Verbinding maken en initialiseer WorkspaceClient deze als volgt:

    from databricks.sdk import WorkspaceClient
    
    w = WorkspaceClient()
    

De Databricks SDK voor Python herkent de SPARK_REMOTE omgevingsvariabele voor Databricks Verbinding maken niet.

Zie databricks-sdk op PyPI voor aanvullende Azure Databricks-verificatieopties voor de Databricks SDK voor Python en hoe u binnen de Databricks SDK's kunt initialiseren AccountClient voor toegang tot beschikbare Databricks REST API's op accountniveau in plaats van op werkruimteniveau.

In het volgende voorbeeld ziet u hoe u de Databricks SDK voor Python gebruikt om Databricks Utilities te automatiseren. In dit voorbeeld wordt een bestand gemaakt met de naam zzz_hello.txt in het pad van een Unity Catalog-volume in de werkruimte, worden de gegevens uit het bestand gelezen en vervolgens het bestand verwijderd. In dit voorbeeld wordt ervan uitgegaan dat de omgevingsvariabelen DATABRICKS_HOST al DATABRICKS_TOKEN zijn ingesteld:

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

file_path = "/Volumes/main/default/my-volume/zzz_hello.txt"
file_data = "Hello, Databricks!"
fs = w.dbutils.fs

fs.put(
  file      = file_path,
  contents  = file_data,
  overwrite = True
)

print(fs.head(file_path))

fs.rm(file_path)

Zie ook Interactie met dbutils in de Databricks SDK voor Python-documentatie.