Loading Shiny Apps Fast with Feather
When I think about feathers (the real world thing) I associate with the words ‘light’ and ‘slow’. The feather files written and read by the Feather package are in a way heavy and fast.
Load files blazingly fast with the Feather package.
I wasn’t sold to the idea at first. I put it in the same category as data.table. That’s my personal category of nice to have R Packages in my back-up tool box. In my personal little ignorant R world my thought process goes something like:
- I don’t want to struggle to learn data.table when dplyr is so easy to use and in my applications always works so fast that I’m not waiting anyway. I can always switch to it when my data application scale up.
- Similarly, why should I get into Feather? I really don’t spend that much time waiting on files to load.
Then I realised that often I do spend ages waiting to read in files, but it’s hidden. Most of my reporting is generated in Shiny or R Markdown. This is because I recently adopted the habit to restart my R session (unnecessarily) often. Debugging in Shiny can be a pain (please let me know if you have a systematic approach that takes away the pain). Restarting my R session religiously is one way of spotting bugs early.
This generally means loading in the data, again, and again, and again.
Now there are many ways to write and read files fast, a detailed comparison (stackoverflow) shows that speed junkies should probably use the data.table package again. But the difference between Feather and the rest of the top is negligible, and then my preference for tibble data frames prevails.