The VolatileDB gem allows you to specify a key and an action yielding a particular piece of data. This data will be stored in the /tmp folder of the file system you are currently running on. Data is accessible by key. Data will be read and written to storage using File.read() and File.open() -- that's it. It's up to the consuming application to serialize and deserialize data correctly. All VolatileDB does is push and pull data to the FS. If the underlying file supporting the data is found to be missing, it will be re-initialized. This gets to the main idea behind VolatileDB: use it to persist data that is transient and can be re-seeded periodically as conditions change.