In cassandra if i have table per query and i have multiple combinations of filter, do i create a table for each of them?

Multi tool use
In cassandra if i have table per query and i have multiple combinations of filter, do i create a table for each of them?
I am new to NoSQL and i was trying to get my head around how to model data correctly for an e-commerce site. Amazon has these filters for different type of products, for example if you search for laptops, there are filters like brand, processor, hard disk, graphics card, os and etc.
So by what i understand, first the primary key will be partitioned by browse node id (i.e. laptop here), then we can have additional keys as sort key, but the problem is that if there are 6 filters there will be around 64 combinations that can be formed. I can select brand and processor, or maybe brand and graphics card, or maybe processor and graphics card, and this will be exponential with the number of filters, so i assume having a table for each possibility is not feasible.
I also doubt that filtering after getting the whole partition data is possible, that would be too slow. So how should someone model the database.
Sorry if my question doesn't makes sense.
1 Answer
1
What you are trying to do is searching and filtering. I don't think it's a good idea to try to model all such combination of conditions in cassandra and it may not be able to scale. Using ElasticSearch or SOLR is one of the options to such scenarios instead of directly querying the database (even if it is an RDBMS) for high traffic enterprise systems.
There is an open source "elassandra" which is elasticsearch modified to run as a plugin for cassandra within cassandra architecture. Alternatively you can also use write an application using datastax driver to connect to cassandra select the data you want and push it into elasticsearch with an HTTP client. Does this answer your question? If so, would you mind accepting the answer? Elassandra: github.com/strapdata/elassandra
– Jinnah
Jul 1 at 20:42
Thanks for accepting the answer! Let me know if you need anymore help / questions
– Jinnah
2 days ago
By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.
I thought ElasticSearch is used for text search in database. In this case isn't it filtering by columns, so does elastic search fits this case
– Zaid Bin Irfan
Jul 1 at 20:08