What are the core differences between IPFS and other decentralized data stores?

This morning one of my co-workers mentioned Riak KV and how it is also an open-source, decentralized, fault tolerant key-value store. I haven’t found any solid comparisons of Riak vs. IPFS online, so I thought I’d ask here.

Can anyone explain what the core differences are between something like Riak/DynamoDB and IPFS?


IPFS is a decentralized, content-addressable filesystem. Riak KV is a distributed key-value store.

Distributed KV stores are basically just key-value (NoSQL) databases distributed over a set of co-operating servers (usually run by a single organization).

IPFS, on the other hand, is more like bittorrent or HTTP. It provides:

  1. A consistent way to address files (content addressing) no matter where they’re stored.
  2. A protocol for transferring said files.