Skip to content

PARQUET-2414: Extend BYTE_STREAM_SPLIT to support INT32, INT64 and FIXED_LEN_BYTE_ARRAY data#229

Merged
pitrou merged 2 commits intoapache:masterfrom
pitrou:issue2414-byte-stream-split
Mar 18, 2024
Merged

PARQUET-2414: Extend BYTE_STREAM_SPLIT to support INT32, INT64 and FIXED_LEN_BYTE_ARRAY data#229
pitrou merged 2 commits intoapache:masterfrom
pitrou:issue2414-byte-stream-split

Conversation

@pitrou
Copy link
Copy Markdown
Member

@pitrou pitrou commented Jan 18, 2024

No description provided.

@pitrou pitrou force-pushed the issue2414-byte-stream-split branch from 3fb6ab9 to 88d3cbd Compare January 29, 2024 15:14
Copy link
Copy Markdown
Member

@wgtmac wgtmac left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 on my side


#### New Feature

* [PARQUET-2414](https://issues.apache.org/jira/browse/PARQUET-2414) - Extend BYTE_STREAM_SPLIT to support INT32, INT64 and FIXED_LEN_BYTE_ARRAY data
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for adding this!

@etseidl
Copy link
Copy Markdown
Contributor

etseidl commented Feb 29, 2024

+1 I think this is great. Are PoCs needed for this? I'm interested in seeing how well this works as a DELTA_BINARY_PACKED replacement for my data.

@pitrou
Copy link
Copy Markdown
Member Author

pitrou commented Feb 29, 2024

@etseidl I've written the implementation for Parquet C++ here: apache/arrow#40094

I was planning to implement it for Parquet Java, but you may want to do it as well.

@etseidl
Copy link
Copy Markdown
Contributor

etseidl commented Feb 29, 2024

I was planning to implement it for Parquet Java, but you may want to do it as well.

Sounds good. I'll put it in my queue. I'll check out your arrow implementation to see if there are any pitfalls to avoid. Thanks!

@GregoryKimball
Copy link
Copy Markdown

Thank you @pitrou for investigating this! Extending BYTE_STREAM_SPLIT to more data types will give us great new options in RAPIDS.

@pitrou pitrou merged commit e517ac4 into apache:master Mar 18, 2024
@pitrou pitrou deleted the issue2414-byte-stream-split branch March 18, 2024 10:41
rapids-bot bot pushed a commit to rapidsai/cudf that referenced this pull request Jun 24, 2024
…ders (#15832)

BYTE_STREAM_SPLIT encoding was recently added to cuDF (#15311). The Parquet specification was recently changed (apache/parquet-format#229) to extend the datatypes that can be encoded as BYTE_STREAM_SPLIT, and this was only recently implemented in arrow (apache/arrow#40094). This PR adds a check that cuDF and arrow can produce compatible files using BYTE_STREAM_SPLIT encoding.

Authors:
  - Ed Seidl (https://github.com/etseidl)

Approvers:
  - Lawrence Mitchell (https://github.com/wence-)

URL: #15832
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

Successfully merging this pull request may close these issues.

5 participants