apache / apache/iceberg

SQL UDFs in Iceberg

Open
#10,432 6 comments 13 reactions 0 assignees View on GitHub
not-stale proposal
Dominant language
Java
Stars
9.2k
Forks
3.5k
Avg merge
2d 11h
Merged PRs (30d)
132

Description

### Proposed Change

A user-defined function (UDF) is a callable routine that accepts input parameters, executes the function body, and returns either a single scalar value or a table based on the UDF type.

Most compute engines (e.g. Dremio, Snowflake, Trino and Apache Spark) support UDFs . Without a common standard, the UDFs are hard to share among different engines. It allows versioning of UDFs if they are stored in Iceberg. This proposal standardizes the UDF metadata.

### Proposal document

https://docs.google.com/document/d/1BDvOfhrH0ZQiQv9eLBqeAu8k8Vjfmeql9VzIiW1F0vc/edit?usp=sharing

### Specifications

- [ ] Table
- [ ] View
- [ ] REST
- [ ] Puffin
- [ ] Encryption
- [X] Other

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.