Uh oh!
There was an error while loading. Please reload this page.
spec: Variant lower/upper bounds - #12658
Conversation
aihuaxu
commented
Mar 26, 2025
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
f03ba8f to
31dbfa2CompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
danielcweeks
commented
Apr 3, 2025
aihuaxu
commented
Apr 4, 2025
What we were thinking is that the bounds are collected from shredded column stats during shredding process. But it does seem reasonable to me to bounds and shredding can be separated: if a writer has the knowledge of the bounds and chooses not to shred, the bounds can still be used in pruning. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Improve the wording Co-authored-by: Ryan Blue <blue@apache.org>
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
RussellSpitzer
left a comment
There was a problem hiding this comment.
Looks good to me, I think we need to clarify a bit here
| * `$` -- the Variant root value | ||
| * `$['user.name']` -- the field `"user.name"` in the root value that is a Variant object | ||
| * `$['location']['latitude']` -- the field `latitude` in a nested `location` object | ||
| * `$['ids']` -- the `ids` array |
There was a problem hiding this comment.
When I read the thread you raised on the dev list, I liked that you used "tags" as the example. Maybe we should change some of these to match the examples in the variant shredding spec?
There was a problem hiding this comment.
Let me do that to match as much as possible.
Clarify some sentences. Co-authored-by: Russell Spitzer <russell.spitzer@GMAIL.COM>
b16f660 to
9a99971Compareamogh-jahagirdar
commented
Apr 21, 2025
Thanks @RussellSpitzer@rdblue@Fokko@flyrain@huaxingao @XBaith for reviewing and everyone for voting. Since the vote passed, I'll go ahead and merge |
This is to revise the bounds specification for Variant. In summary:
The writer determines which fields to collect bounds for in a Variant column. Field bounds are stored as serialized Variant objects, where each key is a normalized JSON path identifying a field, and each value is the corresponding lower or upper bound.
E.g.
For a Variant column with the schema as follows:
{ "event_type": "login", "user.name": "Alex", "tags": ["action", "drama"] }The collected bound object looks like:
{ "$['event_type']": "login", "$['user.name']": "Alex", "$['tags']": "action" }