Document best practices for high performance constructing arrays
- Dominant language
- Rust
- Stars
- 3.6k
- Forks
- 1.3k
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 169
Description
> I think at this point there is little point in using `MutableBuffer` over `Vec` as the latter provides more performant (specialization over `T`, better inlining), slightly more safe and more complete API. The same probably applies for a lot of `Builder`-type APIs probably.
>
> It might be worth spending some time documenting the best and most performant way to construct / transform Arrow arrays and apply it accross the arrow-rs create (marking stuff as deprecated if needed).
This LGTM and is a great improvement. I also would love to see this documentation if you don't mind dumping your thoughts on the topic while they're fresh!
_Originally posted by @mbutrovich in https://github.com/apache/arrow-rs/pull/7422#pullrequestreview-2793904384_
Contributor guide
Research direction
Start by reviewing the MutableBuffer, Vec, and Builder-type APIs in the arrow-rs create area, focusing on the stated performance and safety differences for constructing and transforming arrays. Document the recommended approaches across the relevant APIs, and identify any APIs that should be marked deprecated; done means the best practices and resulting recommendations are clearly recorded.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- documentation, performance
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100