carpecodeum commented on PR #7946: URL: https://github.com/apache/arrow-rs/pull/7946#issuecomment-3090517778
> Thank you for this PR @carpecodeum > > This is very cool > > I think there is already a `variant_get` implementation in https://github.com/apache/arrow-rs/blob/d809f19bc0fe2c3c1968f5111b6afa785d2e8bcd/parquet-variant-compute/src/variant_get.rs#L35-L34 contributed by @Samyak2 > > To take the next steps and implement shredding I think we will need two things: > > 1. A way to create shredded variants > 2. A way to represent shredded variants > > The idea of removing fields from `Variant`s is interesting, though I wonder if that is an operation we would ever want to do on single `Variant` instance -- it seems like removing fields for shredding will require copying the underlying bytes anyways, so I was thinking we might just want to create an output variant array entirely > > Something like > > ```rust > fn variant_shred(input: VariantArray, output: VariantArray, schema: SchemaRef) > ``` > > Maybe it is worth looking at how the java or go implementations work Is there any issue for implementing this? I would love to work on it -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org