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

Leverage DuckDB? #256

Open
cholmes opened this issue Feb 13, 2025 · 2 comments
Open

Leverage DuckDB? #256

cholmes opened this issue Feb 13, 2025 · 2 comments

Comments

@cholmes
Copy link
Member

cholmes commented Feb 13, 2025

I've been building geoparquet tools that are basically just thin python wrappers over DuckDB. But I love gpq's installation ease and general speed, and ideally many of the operations I'm building there could be done in gpq.

So was wondering what you think of having a DuckDB dependency, and then using that to offer a lot more. It'd essentially pull in GDAL/OGR as well, as DuckDB does an amazing job of packaging GDAL. So then 'convert' could easily offer the full range of OGR formats, and could add all kinds of spatial predicates, do partitioning, spatial ordering, etc. etc. And then things like my checking of best practices could be in GPQ, alongside the core validation that's already there (perhaps a separate command, or at least make clear what's required and what's recommended).

Totally fine if that's too big / too much / is more of a hassle than I'm imagining (likely). But if it could come here I'd likely be excited to try to contribute (with lots of AI assistance). But I also understand if we want to keep this 'pure'. Or perhaps we could have a 'sister' project in go that brings in DuckDB.

@felix-schott
Copy link
Contributor

I'm not very knowledgeable on this topic but I don't think this would play nicely with WASM. The go-duckdb package is CGO rather than pure Go and as far as I'm aware it's not possible to compile CGO to WASM easily.

@cholmes
Copy link
Member Author

cholmes commented Feb 13, 2025

Ah yeah, that is a good point.

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