Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for multiple languages #8

Open
buremba opened this issue Feb 12, 2023 · 3 comments
Open

Support for multiple languages #8

buremba opened this issue Feb 12, 2023 · 3 comments

Comments

@buremba
Copy link

buremba commented Feb 12, 2023

This is a great start, I admire what you folks are doing! I wonder if there is any plan to provide an API to register Python functions as UDF or UDTFs that we can call from SQL. The Python binding has a map that lets us process the data in Python but the SQL interface doesn't support registering Python support yet AFAIK and the only way to support UDF & UDTF's seems to be native duckdb-extensions if I'm not mistaken.

@buremba
Copy link
Author

buremba commented Feb 15, 2023

I wonder if it would be possible to use Webassembly to support multiple languages. SingleStore (1) has something similar, and given that Duckdb already has a wasm adapter for running it in the browser, it might be an easier path.

1: https://docs.singlestore.com/managed-service/en/reference/code-engine---powered-by-wasm.html

@Mause
Copy link
Member

Mause commented May 15, 2023

The DuckDB python bindings now have support for UDF's - does this fulfil your requirements?

@buremba
Copy link
Author

buremba commented May 18, 2023

That's great! I have been testing the scalar UDFs and they're pretty neat. However; we don't support the table & aggregate functions, right? Do you think that we should use Arrow for UDAF and UDTF? If yes, I believe it fulfills my requirement.

If the scalar UDFs are stop-gap before having more efficient solution, let's keep the issue open maybe? WDYT @Mause ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants