Swirrl / ook

Structural search engine
https://search-prototype.gss-data.org.uk/
Eclipse Public License 1.0
6 stars 0 forks source link

Shorter filter query params #109

Closed kiramclean closed 3 years ago

kiramclean commented 3 years ago

This implements option 2 from Rick's document about shortening query params (gzipping then base58 encoding filter configs serialized to a transit string -- base58 because it's URL friendly by default to avoid an extra step of having to handle non-URL friendly chars, transit because it can preserve clojure data structures and types). Ultimately we might switch to whatever gets implemented in muttnik (currently being discussed/implemented here), but for now this is a self-contained option (i.e. doesn't require any extra ops or maintaining indexes etc) that at least buys us a non-trivial amount of extra space (~15x or so for most filter configurations). Fixes #75.

Robsteranium commented 3 years ago

This is great. Thanks!