jqnatividad / qsv

Blazing-fast Data-Wrangling toolkit
https://qsv.dathere.com
The Unlicense
2.52k stars 71 forks source link

`get`: new command for getting tabular data from various sources #2263

Open jqnatividad opened 3 weeks ago

jqnatividad commented 3 weeks ago

Now that qsv has a separate lookup module (#2262), create a get command that can retrieve tabular data from various sources:

It will be backed by a diskcache using https://crates.io/crates/cached (already heavily used by fetch and geocode commands) and will use https://docs.rs/http-cache-reqwest/latest/http_cache_reqwest/ as well to make it even more efficient in fetching remote data (using http caching semantics, e.g. etag, cache keywords in response header, etc.)

The command can be used to efficiently retrieve reference data; to seed the caches for luau (lookup tables), validate JSONschema dynamicEnum validation; and to have a more efficient resource fetcher for DataPusher+ (should greatly improve harvesting throughput).

cc @tino097