Need to clear up some terminology here. Rows have a key and can be retrieved by key. This is *sort of* the primary index, but not primary in the normal RDBMS sense. Rows can have different columns and the column names are sorted and can be efficiently selected. There are "secondary indexes" in cassandra 0.7 based on column values http://www.datastax.com/dev/blog/whats-new-cassandra-07-secondary-indexes
So you could create secondary indexes on the a,e, and h columns and get rows that have specific values. There are some limitations to secondary indexes, read the linked article. Or you can make your own secondary indexes using row keys as the index values. If you have billions of rows, how many do you need to read back at once? Hope that helps Aaron On 14 Apr 2011, at 04:23, David Boxenhorn wrote: > Is it possible in 0.7.x to have indexes on heterogeneous rows, which have > different sets of columns? > > For example, let's say you have three types of objects (1, 2, 3) which each > had three members. If your rows had the following pattern > > type=1 a=? b=? c=? > type=2 d=? e=? f=? > type=3 g=? h=? i=? > > could you index "type" as your primary index, and also index "a", "e", "h" as > secondary indexes, to get the objects of that type that you are looking for? > > Would it work if you had billions of rows of each type?