[ https://issues.apache.org/jira/browse/CASSANDRA-7826?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15230309#comment-15230309 ]
Sylvain Lebresne commented on CASSANDRA-7826: --------------------------------------------- bq. {{ComplexColumnData}} is a bag of Cells, although having nested collections would require {{ComplexColumnData}} to also contain {{ComplexColumnData}} There is certainly multiple ways this could be implemented, but the way I think we should do this, at least for now, is by projecting, kind of like we implemented collections pre-3.0. We'll use as many component in the {{CellPath}} as there is level of nestedness and there _will_ be repetition. So for instance, to store a {{map<text, set<int>>}} like \{ 'x' : \{ 1, 2\}, 'y' : \{ 3, 4 \} \}, we'll store it as 4 cells, having respectively the cell paths: {{('x', 1)}}, {{('x', 2)}}, {{('y', 3)}} and {{('y', 4)}}. Of course this is not the most efficient way to do this, but this way can be done without breaking any backward compatibility and without any change to the file format. It is not the goal of this ticket to transform the storage engine to be document based in particular, just to add a bit of flexibility, mainly in term of being able to insert without needing to read-before-write (like you have to do if you use frozen collections). We'll still be clear that nesting too much or having collections too big will be a bad idea. > support non-frozen, nested collections > -------------------------------------- > > Key: CASSANDRA-7826 > URL: https://issues.apache.org/jira/browse/CASSANDRA-7826 > Project: Cassandra > Issue Type: Improvement > Components: CQL > Reporter: Tupshin Harper > Assignee: Alex Petrov > Labels: ponies > Fix For: 3.x > > > The inability to nest collections is one of the bigger data modelling > limitations we have right now. -- This message was sent by Atlassian JIRA (v6.3.4#6332)