Defining Databricks connection parameters with Spark Universal
About this task
Talend Studio connects to an all-purpose Databricks cluster to run the Job from this cluster.
Procedure
- Click the Run view beneath the design workspace, then click the Spark configuration view.
-
Select Built-in from the Property
type drop-down list.
If you have already set up the connection parameters in the Repository as explained in Centralizing a Hadoop connection, you can easily reuse it. To do this, select Repository from the Property type drop-down list, then click […] button to open the Repository Content dialog box and select the Hadoop connection to be used.Information noteTip: Setting up the connection in the Repository allows you to avoid configuring that connection each time you need it in the Spark configuration view of your Jobs. The fields are automatically filled.
- Select Universal from the Distribution drop-down list, the Spark version from the Version drop-down list, and Databricks from the Runtime mode/environment drop-down list.
-
Enter the basic configuration information:
Parameter Usage Use local timezone Select this check box to let Spark use the local time zone provided by the system. Information noteNote:- If you clear this check box, Spark use UTC time zone.
- Some components also have the Use local timezone for date check box. If you clear the check box from the component, it inherits time zone from the Spark configuration.
Use dataset API in migrated components Select this check box to let the components use Dataset (DS) API instead of Resilient Distributed Dataset (RDD) API: - If you select the check box, the components inside the Job run with DS which improves performance.
- If you clear the check box, the components inside the Job run with RDD which means the Job remains unchanged. This ensures the backwards compatibility.
This check box is selected by default, but if you import a Job from 7.3 backwards, the check box will be cleared as those Jobs run with RDD.
Information noteImportant: If your Job contains tDeltaLakeInput and tDeltaLakeOutput components, you must select this check box.Use timestamp for dataset components Select this check box to use java.sql.Timestamp for dates. Information noteNote: If you leave this check box clear, java.sql.Timestamp or java.sql.Date can be used depending on the pattern.Parallelize output files writing Select this checkbox to enable the Spark Batch Job to run multiple threads in parallel when writing output files. This option improves the performance of the execution time. When you leave this checkbox cleared, the output files are written sequentially within one thread.
On subJobs level, each subJob is treated sequentially. Only the output file inside the subJob is parallelized.
This option is only available for Spark Batch Jobs containing the following output components:- tAvroOutput
- tFileOutputDelimited (only when the Use dataset API in migrated components checkbox is selected)
- tFileOutputParquet
Information noteImportant: To avoid memory problems during the execution of the Job, you need to take into account the size of the files being written and the execution environment capacity before using this parameter. -
Complete the Databricks configuration parameters:
Parameter Usage Cloud provider Select the cloud provider to be used between AWS, Azure and GCP. Run mode Select the mode you want to use to run your Job on Databricks cluster when you execute your Job in Talend Studio. With Create and run now, a new Job is created and run immediately on Databricks and with Runs submit, a one-time run is submitted without creating a Job on Databricks. Enable Unity Catalog Select this check box to leverage Unity Catalog. Then, you need to specify the Unity Catalog related information in the Catalog, Schema, and Volume parameters. Information noteImportant: All the parameters have to be created on Databricks with granted permissions for all authorized users before using them in Talend Studio.Use pool You can select this check box to leverage a Databricks pool. If you do, you must indicate the Pool ID instead of the Cluster ID. You must also select Job clusters from the Cluster type drop-down list. Endpoint Enter the URL address of your workspace. Cluster ID Enter the ID of the Databricks cluster to be used. This ID is the value of the spark.databricks.clusterUsageTags.clusterId property of your Spark cluster. You can find this property on the properties list in the Environment tab in the Spark UI view of your cluster. Authentication mode Select the method you want to use to authentication in the drop-down list: -
- Personal access token: authenticate with a personal access token (PAT). For more information, see Databricks personal access token authentication from the Databricks documentation.
- OAuth2 for service principal: authenticate with service principal using OAuth (OAuth M2M). For more information, see Authenticate access to Databricks with a service principal using OAuth from the Databricks documentation.
- OAuth2 for user account: authenticate with a user account using OAuth (OAuth U2M). For more information, see Authenticate access to Databricks with a user account using OAuth from the Databricks documentation.
Authentication token Enter the authentication token generated for your Databricks user account. Dependencies folder Enter the directory that is used to store your Job related dependencies on Databricks Filesystem at runtime, putting a slash (/) at the end of this directory. For example, enter /jars/ to store the dependencies in a folder named jars. This folder is created on the fly if it does not exist then. From Databricks 15.4 LTS, the default library location is moved to WORKSPACE, instead of DBFS.
Project ID Enter the ID of your Google Platform project where the Databricks project is located. This field is only available when you select GCP from the Cloud provider drop-down list.
Bucket Enter the name of the bucket you use for Databricks from Google Platform. This field is only available when you select GCP from the Cloud provider drop-down list.
Workspace ID Enter the ID of your Google Platform workspace respecting the following format: databricks-workspaceid. This field is only available when you select GCP from the Cloud provider drop-down list.
Google credentials Enter the directory in which the JSON file containing your service account key is stored in the Talend JobServer machine. This field is only available when you select GCP from the Cloud provider drop-down list.
Poll interval when retrieving Job status (in ms) Enter the time interval (in milliseconds) at the end of which you want Talend Studio to ask Spark for the status of your Job. Cluster type From the drop-down list, select the type of cluster you want to use. For more information, see About Databricks clusters. Information noteNote: When you run the Job using Talend Studio with Java 17, you need to set the JNAME=zulu17-ca-amd64 environment variable:- on Databricks side for job clusters
- in Init scripts using the set_java17_dbr.sh script on S3 for all-purpose clusters
DBFS is no longer supported as Init scripts location. For all versions of Databricks, it is replaced to WORKSPACE.
Enable ACL Select this check box to use access control lists (ACLs) to configure permission to access workspace or account level objects.
In ACL permission, you can configure permission to access workspace objects with CAN_MANAGE, CAN_MANAGE_RUN, IS_OWNER, or CAN_VIEW.
In ACL type, you can configure permission to use account-level objects with User, Group, or Service Principal.
In Name, enter the name you were given by the administrator.
This option is available when Cluster type is set to Job clusters. For more information, see the Databricks documentation.
Do not restart the cluster when submitting Select this check box to prevent Talend Studio restarting the cluster when Talend Studio is submitting your Jobs. However, if you make changes in your Jobs, clear this check box so that Talend Studio restarts your cluster to take these changes into account. -
- In the Spark "scratch" directory field, enter the directory in which Talend Studio stores in the local system the temporary files such as the jar files to be transferred. If you launch the Job on Windows, the default disk is C:. So if you leave /tmp in this field, this directory is C:/tmp.
-
If you need the Job to be resilient to failure, select the Activate
checkpointing check box to enable the Spark checkpointing operation.
In the Checkpoint directory field, enter the directory in which Spark stores, in the file system of the cluster, the context data of the computations such as the metadata and the generated RDDs of this computation.
- In the Advanced properties table, add any Spark properties you need to use to override their default counterparts used by Talend Studio.
-
Select the Use Atlas check box to make use of Atlas to trace
lineage of given data flow to discover how this data was generated by a Spark Job,
including the components used in this Job and the schema changes between the
components.
This option is only available for Spark Universal 3.3.x.
With this option activated, you need to set the following parameters:
-
Atlas URL: enter the location of the Atlas to be connected to. It is often http://name_of_your_atlas_node:port
-
In the Username and Password fields, enter the authentication information for access to Atlas.
-
Set Atlas configuration folder: if your Atlas cluster contains custom properties such as SSL or read timeout, select this check box, and in the displayed field, enter a directory in your local machine, then place the atlas-application.properties file of your Atlas in this directory. This way, your Job is enabled to use these custom properties.
You need to ask the administrator of your cluster for this configuration file. For further information about this file, see the Client Configs section in Atlas configuration.
- Die on error: select this check box to stop the Job execution when Atlas-related issues occur, such as connection issues to Atlas. Otherwise, leave it clear to allow your Job to continue to run.
-
Results
Did this page help you?
If you find any issues with this page or its content – a typo, a missing step, or a technical error – please let us know!