Skip to main content
UDFs can be implemented in any of the following APIs:

Tutorial

The following tutorial details the implementation & execution of distributed User-Defined Functions (UDFs) in the Python API. Also provided are examples of UDFs, including a simple table copy and a more complex integration into a machine-learning library’s demo program.

UDF Prerequisites

  • UDFs enabled in /opt/gpudb/core/etc/gpudb.conf:
    enable_procs = true
    
  • User authorization enabled (recommended); see Security Configuration section for details
  • The system_admin role (for managing procs) or Proc Level Permissions (for managing procs as a non-admin). See Security (User/Role Management) for more information on setting roles and permissions
  • Kinetica UDF APIs; these can be downloaded from GitHub. See one of the API references below for installation instructions.

Development

C++

C++ UDF API A reference for the C++ UDF API Running C++ UDFs How to run a C++ UDF in the Kinetica environment UDF C++ Examples Complete examples of distributed UDFs

Python

Python UDF API A reference for the Python UDF API Running Python UDFs How to run a Python UDF in the Kinetica environment UDF Python Examples Complete examples of distributed UDFs

Simulating UDFs

UDF Simulator How to simulate running a UDF written in any API

Compatibility

Each UDF API should be compatible with the corresponding minor release of the database; e.g., the Python UDF v7.1 API is compatible with a Kinetica v7.1 database.