"Feel free to continue to use thrift's wide row structure, with ad hoc columns. No one is stopping you."
Thanks. I was not trying to stop you from doing it your way either.
You said this:
"COMPACT STORAGE imposes the limit that you can't add columns to your tables."
I was demonstrating you are incorrect.
I then went on to point out that Cassandra is a ColumnFamily data store which was designed around big table. You could always add column dynamically because schema-less is one of the key components of a ColumnFamily datastore.
I know which CQL document you are loosely referencing that implies you can not add columns to compact storage. If that were true Cassandra would have never been a ColumnFamily data store.
I have found several documents which are championing CQL and its constructs, which suggest that some thing can not be done with compact storage. In reality those are short comings of the CQL language. I say this because the language can not easily accommodate the original schema system.
Many applications that are already written and performing well do NOT fit well into the CQL model of non compact storage (which does not have a name by the way probably because the opposite of compact is sparse and how would "SPARSE STORAGE" sound?). Implying all the original stuff is "legacy" and you "should probably avoid it" is wrong.
In many cases compact storage it is the best way to store things, because it is the smallest.