(I'd imagine implementing mechanisms for resilient storage and larger than memory data sizes would be the hard parts)