I’m trying to find out what kind of MicroSD cards have the right qualities for especially Raspberry Pi deployments.
- Price: If a card is cheap, one can easily buy a replacement
- Speed: The faster random read times, the better
- Durability: SD cards do fail, but how fast? Are they sensitive to the environment?
An interesting benchmark comparison can be found here: http://www.pidramble.com/wiki/benchmarks/microsd-cards
The parameters mentioned in the benchmark are:
- hdparm buffered: A buffer is part of the drive controller, and the operating system controls this. It may not be relevant for large read jobs, but it can be a speed factor for instance for the operating system and database access.
- dd write: A raw write of lots of data, this is possibly the correct benchmark to understand when seeding a card with new data, i.e. when you mass-copy gigabytes of Kolibri content
- dd rand read: This is probably the most important part, since Kolibri will serve random content from gigabytes of data, and the buffer system will not be very useful, since a classroom full of students will request way beyond what the buffer can optimize for.
- dd rand write: This is interesting if storing the Kolibri user database on the SD card.
Alternatives: When deploying to a device like the Raspberry Pi, we may also choose not to store data from Kolibri etc. on a MicroSD. It is also possible to connect faster and more durable HDD/SSD devices via USB.
Updating this topic w/ input from @jredrejo