Skip to content

Add ListViewArray and LargeListViewArray #5375

Open
@alamb

Description

@alamb

Is your feature request related to a problem or challenge? Please describe what you are trying to do.
Recently two new types were added to the Arrow format that make it more suitable for certain types of operations on Lists

Specifically when doing filtering / take with List data, creating a new ListArray or LargeListArray requires copying the underlying lists to a new, packed buffer. The "ListView" was designed to solve this limitation and recently added to the Arrow spec.

Describe the solution you'd like
I would like to implement ListViewArray and LargeListViewArray following the spec:
The spec: https://arrow.apache.org/docs/format/Columnar.html#listview-layout

Initially, I would suggest we get the basic types in place:

  • DataType
  • Array implementations and layout and basic construction

Then as follow on PRs, add support to key kernels:

  • cast (to/from ListAray / LargeListArray)
  • filter
  • take

Describe alternatives you've considered

Additional context
This is similar in spirit to the StringViewArray and BinaryViewArray described in #5374

Tasks:

Metadata

Metadata

Assignees

Labels

arrowChanges to the arrow crateenhancementAny new improvement worthy of a entry in the changelog

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions