[ https://issues.apache.org/jira/browse/CASSANDRA-11103?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15128251#comment-15128251 ]
Sylvain Lebresne commented on CASSANDRA-11103: ---------------------------------------------- The equivalent of having non predefined column in Thrift is to use a clustering column in CQL. And when I say "equivalent", I mean that they are internally exactly the same thing. You can also see http://www.datastax.com/dev/blog/cql3-for-cassandra-experts or http://www.datastax.com/dev/blog/thrift-to-cql3 for more details, and the user mailing list/irc channel are there if you need more help, but there is no loss of functionality. > In CQL, can not create table with no predefined column > ------------------------------------------------------ > > Key: CASSANDRA-11103 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11103 > Project: Cassandra > Issue Type: Bug > Reporter: Robert Li > > We have a service layer that provides Cassandra access to our (thousands of) > edge and backend servers. The service provides simple API to set/get data in > the form of List<Tag>, while Tag is a structure of (name, value, ttl, > timestamp) that maps to the data of a Cassandra column. > This service layer acts as a connection pool proxy to Cassandra, provides > easy access, central usage / resource / performance monitoring, access > control. Apps accessing this layer can create column family through an admin > tool which creates the CF using Thrift client, and set/get data (using > List<Tags>) into/from the column family. > With the latest CQL, it seems not possible to create column family without > predetermined column names. One option for us is to create table with a > column of type Map. However, a Map column has two unpleasant implications: > 1. Every column has to be prefixed with the name of the map column, which is > unnatural and redundant. > 2. The data type of all columns has to be the same. The ability to store data > in native format is lost. > It seems the fact that CQL can not create table without predefined column > represents loss of function that is available in Thrift based client. It's > almost a show stopper for us, preventing us to migrate from Thrift base > client to the new Java client. > Attachments -- This message was sent by Atlassian JIRA (v6.3.4#6332)