Can the IC be used as a block storage replacement?

After seeing the CanCan demo during the genesis event, I realized that persistent storage on the IC can extend waay beyond state variables, actual files can be uploaded and retrieved from a canister. So this got me wondering, could one build a canister (or canister suite) with the sole purpose of affordable, decentralized storage? Would this be reasonable/competitive with existing solutions? Any thoughts are appreciated :grinning_face_with_smiling_eyes:

Yes it would, but more so long term—somewhere down the line there will be subnets added that’ll offer lower costs for storage. Building a gateway application to canisters that will ultimately be running on these subnets would be a worthwhile project.

got it, thanks! I’m still trying to learn the IC and canister architecture, but basically there will be sets of datacenters and providers that’ll be more storage focused (larger ssd’s and more bandwidth) and so I should wait until those are rolled out? Does this mean that there will be other specialized subnets, like for raw computing power to enable canisters to train AI models, for example? I’d also like to know what you mean by a “gateway application.”

1 Like

looks like i didn’t reply to your comment, sorry, but i’ve posted something below.

There will be subnets focussed on other areas like this yes, that’s a great example.
By gateway I just mean a canister that serves as an interface for other canisters, I’m thinking on the canister level.
You could certainly start building this now and swap to using a dedicated storage subnet once available. Your code wouldn’t need to change much, just the specified subnet type of the canisters.

1 Like

Has anyone built a storage gateway like that already?