polarsignals / frostdb

❄️ Coolest database around 🧊 Embeddable column database written in Go.
Apache License 2.0
1.27k stars 65 forks source link

arrowutils: add TakeList and improve TakeDict performance #897

Closed asubiotto closed 1 month ago

asubiotto commented 1 month ago

This commit adds both a TakeList function to reorder arrays of type List when sorting records, and improves TakeDict performance by inserting dict values directly and subsequently indices, to avoid materializing values. This especially speeds up cases where dictionaries have a low number of distinct values.