Page tree

Outdated release! Latest docs are Release 8.2: Changes to the User-Defined Functions


This documentation applies to Release 4.0. As of Release 4.1, the Pig running environment is no longer available. You can follow these steps on a pre-Release 4.1 instance to convert your Python UDFs to Java UDFs. This content will be removed in a future release.

Deprecation of Python UDFs

As Release 4.1, Python UDFs are no longer available in the platform. You must transition or author UDFs in Java. Details are below.

In Release 4.0 introduces Spark as the default running environment for Hadoop job execution. This environment does not support the execution of Python UDFs.

NOTE: Environments that have been upgraded to Release 4.0 are automatically switched to using Spark as the default running environment. To complete these steps, you must re-enable Pig as the default running environment, which is described below.

This section describes the general process for converting existing Python UDFs to Java UDFs in a production environment.

NOTE: Development of user-defined functions is a developer-level skill.


  1. After you have upgraded to Release 4.0, you must re-enable Pig for job execution. See Running Environment Options.
  2. For each of your existing Python UDFs, author a new one in Java:
    1. This new UDF must have the same name and schema.
    2. Deploy each new Java UDF to the Trifacta node
    3. For more information on authoring and deployment, see Java UDFs.
  3. When all of your existing Python UDFs have been converted to Java and installed on the Trifacta node, enable the Spark running environment on the node. See Running Environment Options.
  4. At this point:
    1. When you select Run on Trifacta Server , the Trifacta Photon running environment uses the Python UDFs.
      1. In later versions, this selection is Photon.
    2. When you select Run on Hadoop, the Spark running environment uses the Java UDFs.
      1. In later versions, this selection is Spark.
  5. Verify job results of executions on each running environment for each of your Python UDFs. 
  6. Remove the Python UDFs from the Trifacta node.

For Release 4.1 upgrade:

  • Python UDF service will be removed.
  • All Python UDFs will be deleted from the platform.

TODAY and NOW functions are part of application

In previous releases, the Python UDF documentation included examples on how to create the TODAY() and NOW() functions. These functions are now available through the application by default. 


This page has no comments.