I have the following use case: assume there is a theater chain with thousands of theaters. Each day there are multiple movies playing in each theater. People go into the theater to see movies. Each viewer has 5 demographic attributes, such as age, income range, etc.
I want to find out on each day for each theater, how many viewers are there for each movie, further broken down by one or several of the 5 demographic attributes.
I have chosen to store the data as a CF, keyed by theaterId:date:movieId. Each column in the row is a composite column whose key are like attrib1:attrib2:attrib3:attrib4:attrib5:Viewer_i. I used valueless column. Does this design look right?
My question is, does Cassandra support secondary index into each of the 5 demographic attributes appearing in the same composite column? That is, if my question is, given a theater, find all viewers whose value for attrib2 matches given value, does Cassandra support indexing on attrib2? If so, what is the syntax (through API or CQL3)?
Also, is this Jira https://issues.apache.org/jira/browse/CASSANDRA-3680 about the same question I asked here?