apache / apache/datafusion-python
Add wrapper classes for Expression types
- Lingua principale
- Python
- Stelle
- 604
- Fork
- 174
- Merge medio
- 1g 7h
- PR unite (30g)
- 4
Descrizione
**Is your feature request related to a problem or challenge? Please describe what you are trying to do.**
As part of the discussion in https://github.com/apache/datafusion-python/pull/1674 we found a user wants access to some of the elements within an expression. In this case, `Limit`. If there is a growing base of users who want to use `datafusion-python` to do things such as analyzing the plans and using the data in them, then we should probably add wrapper classes for each of the Expressions.
**Describe the solution you'd like**
Right now we have the expressions like `Limit` available in `datafusion.expr` reexported like
```python
Limit = expr_internal.Limit
```
Instead we could have a `datafusion.expr` module that contains
```python
class Limit(Expr):
```
which has attributes to get `fetch` and `skip`.
**Describe alternatives you've considered**
We could leave as is and continue to expose data members as requested.
**Additional context**
This is a follow on to https://github.com/apache/datafusion-python/issues/1673
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Start by reviewing the current datafusion.expr exports, especially the expr_internal.Limit re-export, then read PR #1674 and issue #1673 for the motivating use case. Define the wrapper scope from the existing Expression types; the work is done when the intended wrappers expose the requested expression data, including Limit.fetch and Limit.skip.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- api
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 45/100