Hello Oliver, I don't see this being a particularly good fit for Cassandra, but I hope someone confirms this.
However, your use case did look interesting for another project I've interacted with indirectly, Pilosa, which used to have a Cassandra backend before a complete Golang rewrite: https://github.com/pilosa/pilosa. It seems as though the intersect PQL command may work for your use case: https://www.pilosa.com/docs/latest/query-language/#intersect. Cheers, Joaquin Joaquin Casares Consultant Austin, TX Apache Cassandra Consulting http://www.thelastpickle.com On Fri, Jan 5, 2018 at 5:15 PM, Oliver Ruebenacker <cur...@gmail.com> wrote: > > Hello, > > Let's say I have a table that has one column with a unique id as a > primary key, and then hundreds of columns of floats, although a large > fraction of cells are empty. > > I want to create an application that allows users to pick one or more > number columns, specify a condition (equality or inequality) for each > number column picked, and then get all rows that satisfy all the conditions > provided. An empty cell would mean condition is not fulfilled. > > (for example, find all rows for which column35 < 0.5 AND column72 > 1.5 > AND column236 < 0.1) > > What's the best way to enable this? A secondary index for each number > column? Would I have to obtain all columns that satisfy one condition and > filter them down, or is there a better way? Does Cassandra support finding > out which index best to start with? > > Thanks! > > Best, Oliver > > -- > Oliver Ruebenacker > Senior Software Engineer, Diabetes Portal > <http://www.type2diabetesgenetics.org/>, Broad Institute > <http://www.broadinstitute.org/> > >