Jay Patel created CASSANDRA-7070:
------------------------------------

             Summary: Virtual column name aliasing
                 Key: CASSANDRA-7070
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7070
             Project: Cassandra
          Issue Type: Improvement
          Components: API, Core
            Reporter: Jay Patel
             Fix For: 3.0


Hi folks!

Currently, storage space is saved significantly (in terabytes sometime for 
static tables!) by shortening column names as it's repeated in each row; 
however, this short column names can be very unreadable. So far, I've seen 10s 
of tables with 100s of convoluted names. Hard to debug issues, and work with on 
day-to-day basis. This can make smart engineers quit project or even company :) 

Another reason:  most of the time, folks are not even aware that column names 
are repeated, and end up with really descriptive column names. Then, realize 
waste of disk/ram/network, and spend time on re-implementation and/or crazy 
migration to new table.

Yet another reason: table might be shared by multiple system, use cases and 
people in organization, e.g. primary/analytics use cases, Ops/Developer, etc. 
Now, it's becoming the issue where we should reliably keep mapping from 
convoluted names to descriptive names. Usually, these mappings are done in java 
enums; I've seen in DB as well, just so Ops folks don't have to interpret java 
code :)

It would be great if Cassandra internally could virtually alias the column 
names to a more efficient representation in storage. 

I can take a shot at this feature if there are no major concerns. We ideally 
want user to work with descriptive alias everywhere & not even aware of 
internal storage name of the column.  Also, I think name/alias mapping needs to 
be cached all the time to avoid any performance hit.. Any thoughts? How 
difficult is it to accommodate? BTW, I think this may not directly apply to 
dynamic tables as we rely on column name for proper ordering of columns in wide 
rows. However, we may have some room there if it's not a clustered column..

Thanks,
Jay



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to