> Colossus gives you append-only files, halfway between a file store and an object store. This is not an abstraction that most developers are comfortable with.
Most of the files I use are append-only (or in fact write-once).
The only files that are random-access are database files (but I prefer using the filesystem as an approximation to a database; not sure to what extent Colossus can serve that usecase; e.g. does it provide transactions?)
Do you have other examples of files that are not append-only or write-once?
BTrees for databases are the most important file types that you lose. Colossus/GFS is why Google adopted LSM trees (eg in LevelDB) instead of BTrees.
Another example is documents (think .doc files), although these can also be log-structured or checkpointed (I think the .docx is almost 100% log-structured).
Most of the files I use are append-only (or in fact write-once).
The only files that are random-access are database files (but I prefer using the filesystem as an approximation to a database; not sure to what extent Colossus can serve that usecase; e.g. does it provide transactions?)
Do you have other examples of files that are not append-only or write-once?