Forum: Installation

Post: VoltDB on embedded devices

VoltDB on embedded devices
tfioreze
Aug 3, 2011
In order to avoid single point of failure, we are considering to run VoltDB on a cluster of embedded devices that have the following hardware configuration:

- 256 MB of RAM
- 2 GB of flash memory
- 800 MHz Sheeva ARM-CPU (32 bits)

I know that's is not even near the minimum recommended configuration to have VoltDB running a node. However, our cluster consists of 50 nodes (embedded devices), which provide 12.5 GB of RAM, 100 GB of storage, and 40 GHz of CPU power.

I somehow expect that the answer will be "No", but here it goes my question anyway: is there any way that VoltDB can run on this kind of environment?


My best regards,

Tiago Fioreze
Probably not...
jhugg
Aug 3, 2011
Hi Tiago,

It's a cool setup, but I think it's probably not going to work out. First, VoltDB's build process isn't really set up for 32-bit builds, or for builds on ARM. That stuff might be fixable, but our test infrastructure would never run on so little ram, so it would be difficult to actually verify a build was valid. Secondly, VoltDB was designed with the assumption that lots of RAM and multiple CPUs are becoming commonplace. We use a lot of caching, parallelism and we allocate memory in large blocks to bound allocator slowdowns and fragmentation. It would require a lot of work to re-work our code to work with such hardware.

Thanks for the question though and good luck with your hunt for a more suitable tool.

John Hugg
VoltDB Eng.
I had that feeling too...
tfioreze
Aug 3, 2011
Hi Tiago,

It's a cool setup, but I think it's probably not going to work out. First, VoltDB's build process isn't really set up for 32-bit builds, or for builds on ARM. That stuff might be fixable, but our test infrastructure would never run on so little ram, so it would be difficult to actually verify a build was valid. Secondly, VoltDB was designed with the assumption that lots of RAM and multiple CPUs are becoming commonplace. We use a lot of caching, parallelism and we allocate memory in large blocks to bound allocator slowdowns and fragmentation. It would require a lot of work to re-work our code to work with such hardware.

Thanks for the question though and good luck with your hunt for a more suitable tool.

John Hugg
VoltDB Eng.


Hi John,

thanks for your answer. I had that feeling too... I just wanted to hear from you, guys, to be sure. In paralel to the idea of using VoltDB on a cluster of embedded devices, we are also testing VoltDB on a cluster of commodity desktops. The results obtained so far have been impressive.

Keep the great work!


Tiago Fioreze
Cool
jhugg
Aug 3, 2011
Hi John,

thanks for your answer. I had that feeling too... I just wanted to hear from you, guys, to be sure. In paralel to the idea of using VoltDB on a cluster of embedded devices, we are also testing VoltDB on a cluster of commodity desktops. The results obtained so far have been impressive.

Keep the great work!

Tiago Fioreze



Well good to hear you've got another VoltDB use case. Let us know if there is anything we can do to help out.