Data Science and UDFs Examples
This section contains information and tutorials demonstrating the capabilities of Exasol's UDFs. In-depth knowledge of data science and the R and Python programming languages is not required.
User Defined Functions (UDFs)
User Defined Functions (UDFs) provide you with the ability to program your own analysis, processing, or generation functions, and to execute them in parallel inside Exasol's high-performance cluster. By incorporating UDFs in the workflows, you can solve problems that were not solvable with plain SQL in a very efficient and elegant way. UDF scripts provide you with a highly flexible interface for implementing nearly any requirement.
Depending on the input and output specifications there are multiple types of UDFs:
Input | |||
---|---|---|---|
Output |
SCALAR Single input |
SET
Multiple rows as input |
|
RETURNS
Single output |
Function: executed in parallel Example: |
Aggregation function: not parallel, except for group by Example:
|
|
EMITS
Multiple output rows |
Generator function / Map reduce / ETL UDFs: executed in parallel Example:
|
Analytical function:
not parallel, except for group by
Examples:
|
For additional information on UDFs, refer to the UDF Scripts section in our documentation.
UDF Tutorials
The following sections provide detailed explanations and tutorials showing the capabilities of Exasol's UDFs.
The tutorials in this section are designed to work with the public demo system hosted by Exasol. If you have not already done so, sign up here to get access to the public demo system.
-
Learn how UDFs can be used in a machine learning or data science context using Python. In this tutorial you will learn how to test the accuracy of a model, either from a SQL client or directly from your familiar Python environment such as Jupyter Notebooks.
-
Learn how to display JSON data stored in a column as a table using a simple UDF.
-
Learn how to use Exasol to add Geocodes to your data.
-
Train and Predict with R using UDFs
Learn how to use Exasol with R and how to train and predict using UDFs.