Manage language extensions in your Azure Data Explorer cluster
The language extensions feature allows you to use language extension plugins to integrate other languages into your Azure Data Explorer KQL queries. The plugin's runtime is hosted in a sandbox, an isolated and secure environment, running on the cluster's nodes. In this article, you manage the language extensions plugin in your Azure Data Explorer cluster within the Azure portal.
Prerequisites
- An Azure subscription. Create a free Azure account.
- An Azure Data Explorer cluster and database. Create a cluster and database.
- Review the limitations. Note that language extensions can only be enabled on SKUs that support nested virtualization.
- Cluster AllDatabasesAdmin permissions. Manage Azure Data Explorer cluster permissions.
Enable language extensions on your cluster
Do the following steps to enable a language extension on your cluster:
In the Azure portal, go to your Azure Data Explorer cluster.
Select Settings.
Under Configurations, locate the language extension you want to use, and then select On.
For Python, select the desired image from the list. The image can be managed or a custom image.
Select Save.
Note
Enabling the language extension can take up to 60 minutes. The process doesn't impact cluster availability.
Change the Python language extensions image on your cluster
Do the following steps to edit the image of your Python language extension on your cluster:
- In the Azure portal, go to your Azure Data Explorer cluster.
- Select Settings.
- Under Configurations, select the desired Python image from the list.
- Select Save.
Note
Updating the image process can take up to 60 minutes. The process doesn't impact cluster availability.
Create a custom image
In the Azure portal, go to your Azure Data Explorer cluster.
Select Settings.
Under Configurations, select + Add Custom Image (Preview)
In the pane that opens, provide the following information:
- Custom image name: The name of the custom image.
- Start from: Choose either Python engine or Existing image.
- Python engine:
- Enter a valid Python version number.
- Add a requirements file.
- Existing image:
- Select an existing image from the dropdown.
- Add a requirements file.
- Python engine:
Select Ok.
Note
While the cluster is updating the new image, further changes to the cluster can't be made.
After the image is created you can edit or delete it.
Requirements file
Supported requirements files are in the format of pip requirements.txt
and can include any Python package. Each line contains the name of a package, optionally followed by the package number. For example:
annotated-types==0.6.0
anytree
arrow==1.3.0
attrs==23.2.0
Disable language extensions on your cluster
Note
Disabling the image process can take up to 30 minutes. The process doesn't impact cluster availability.
Do the following steps to disable language extensions on your cluster:
- In the Azure portal, go to your Azure Data Explorer cluster.
- In Settings, select Configurations.
- In the Configurations pane, select Off to disable a language extension.
- Select Save.
Limitations
- The language extensions runtime sandbox allocates disk space even if no query runs in the scope of the relevant language. For more detailed limitations, see sandboxes.
Related content
- Learn how to run Python integrated KQL queries
- Learn how to run R integrated KQL queries