Crate to use for data mapping, multi-key indexes etc

I’ve had an urge to try out Rust for a long time and recently I finally came across a nice use-case for it that basically matches the tutorials of the CSV crate one-to-one: Read a CSV file, do some minor manipulations and write the data to another CSV file. Since my input file is gigabytes in size, using Rust extremely sped up this process compared to my previous implementation.

Now I want to expand on that and do more than just the minor data manipulations above: I basically need to load other CSV files into memory that are used to map data in the main file. Think “joins” in a relational database…if the value in column A is 1 and the value in column B is 2, read the line from the mapping file that corresponds to [1, 2] and change the value in column C to whatever is specified under the combined key in the mapping file.

Similar to how the basic “read, manipulate and write a CSV” use-case is so common that it’s literally the CSV crate’s tutorial, I kind of expect my extended use-case described above to be similarly common.

My question is: Can you recommend a Crate that contains data structures and/or utilities to do data-wrangling like this? I could probably come up with something on my own, but I’m fairly new to Rust and I am sure someone has already cracked that nut before me.

Thanks a lot for your help!

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.