You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@iceberg.apache.org by "fallintoplace (via GitHub)" <gi...@apache.org> on 2026/10/16 21:31:20 UTC
[PR] perf(table): specialize binary partition lookups in partitions metadata [iceberg-go]
fallintoplace opened a new pull request, #2199:
URL: https://github.com/apache/iceberg-go/pull/2199
**What**
- Use a typed string map for binary partition keys.
**Why**
- Avoid interface-key hashing in repeated binary partition lookups.
**Implementation**
- Lazily create the binary map and copy keys on insert. Keep generic keys for other types.
**Benchmark**
- Go 1.26.3, Apple M1 Pro, `-cpu=1`; 7 alternating samples. Base `4fdbf65e`, head `0180d21f`.
- 8 binary fields, 1,024 partitions: 201.9 → 129.4 ns/op (-35.9%); 0 B/op and 0 allocs/op both.
- 100K files, 100 partitions, 32 binary fields: 190.5 → 151.1 ms/op (-20.7%, p=0.007); 2.756 → 2.727 MiB/op; 33.81K → 30.51K allocs/op.
- Int32 control, 100K files and 8 fields: 24.80 → 25.25 ms/op (no significant change).
- Lookup command per sample: `go test ./table -run '^$' -bench '^BenchmarkInspectPartitionBinaryLookup$' -benchmem -benchtime=1s -count=1 -cpu=1`. The same harness was used on base and head.
- Aggregation command per sample: `go test ./table -run '^$' -bench '^BenchmarkInspectPartitionAggregation/(binary|int32)$' -benchmem -benchtime=200ms -count=1 -cpu=1`.
--
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: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [PR] perf(table): specialize binary partition lookups in partitions metadata [iceberg-go]
Posted by "zeroshade (via GitHub)" <gi...@apache.org>.
zeroshade merged PR #2199:
URL: https://github.com/apache/iceberg-go/pull/2199
--
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: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org