4

Most SD cards have a fairly limited life (as in maximum number of read-write cycles), and in spite of wear-levelling, for relatively frequent disk update applications, would probably fail in a year or so, with reducing effective disk space, due to bad-blocks.

What might be some of the other secondary storage solutions, for such disk-update intensive applications, which are relatively inexpensive and not slow-coaches (the USB on Raspberry Pi, isn't very fast, as we know)?

Having said that, I am considering a USB hard-disk. Since this is a wall-powered application, power is only a secondary concern.

Peter Mortensen
  • 1,676
  • 3
  • 17
  • 23
bdutta74
  • 3,524
  • 11
  • 46
  • 67

2 Answers2

4

The question is not clear about the volume of data to be stored.

  • If the volume of data actually being written in each cycle is not very high, an USB flash memory device would be a good option: Low power requirement, low cost, and write/erase cycle ratings of 10,000 (consumer grade) to >100,000 (industrial / mil-spec) for multi-level-cell (MLC) flash.

  • A Flash-based SSD typically has the same endurance per MLC as an USB flash drive, but due to a greater amount of spare cell head-room, write optimization using on-board RAM buffers in some models, and better write leveling algorithms, is often rated for 1 million to 5 million write/erase cycles for the device.
    Downside: More power required, 500 mA will often not cut it.

  • A RAM-based SSD with on-board back-up battery is an option if the application requires even higher write cycles. Very few manufacturers offer pure RAM-based SSDs any more, though that was the primary early SSD technology. Write cycles are essentially infinite in comparison to the above options.
    Downside: Most RAM SSDs are not USB but PCI or PCIe, so an adapter is needed, as well as external power.

  • Finally, there is of course the conventional magnetic storage external hard drive with USB interface. Lowest cost per gigabyte, and very high write/erase cycles.
    Downside: External power needed, and they are sensitive to physical shock.

Anindo Ghosh
  • 50,188
  • 8
  • 103
  • 200
  • Excellent and very informative answer @Anindo. A 1+ and a good 'accept' candidate (will wait a bit). The volume of data written would touch a peak of about 8MB/sec for few hours a day, which is mostly write, and then a read and write (erase) cycle about 12 hours later. In a nutshell, what gets written, gets erased, after about 12hours. – bdutta74 Nov 19 '12 at 08:41
  • 1
    @icarus74 That works out to barely 700-odd write cycles (per MLC) per annum, not at all withing a concern range. USB flash would work excellently. – Anindo Ghosh Nov 19 '12 at 09:07
  • Actually, I forgot to mention, one very important aspect, i.e. the average file size, which is about 80KB each, and in my calculation I think I made an equally big blunder, i.e. forgot about buffering, which is why I was getting a very large no. of writes, i.e. 80K/year. – bdutta74 Nov 19 '12 at 09:36
  • @icarus74 You need to be calculating writes *per cell* per year, not overall writes per year. Hence, 80 kilobytes written to 80 k individual MLCs is merely 1 write/erase cycle. – Anindo Ghosh Nov 19 '12 at 09:46
2

You don't have any high-speed connectivity options other than USB 2.0 (480Mbit) and Fast Ethernet (100Mbit). Just on those specs alone I'd say go for USB.

Jim Paris
  • 2,685
  • 1
  • 12
  • 12
  • Thanks Jim. My only worry with USB storage is most of them require more than 500mA, which means that I'd probably have to add a powered (active) hub. Not too much problem though - just that it increases the overall size of the solution. – bdutta74 Nov 19 '12 at 06:32
  • 1
    An SSD may require less. You're basically limited to either a hard drive or SSD for large storage, so you won't be able to avoid that. The communications medium isn't what's taking the power in that case. – Jim Paris Nov 19 '12 at 06:45