Background
- I have a CouchDB cluster running a few databases.
- One of these has docs with a few hundred pieces of data in a somewhat complex structure. (a 'human' for example with height, weight, eye color, hair color, clothing, gps position, and a few hundred other things)
- I want to look for intersections between a couple of data points, ie BLUE eyes and BLACK hair.
- I have hundreds factorial possible combinations I could search for. I do these searches fairly rarely.
- I write to this database quite a lot.
What I want to Do
use a temporary view to pass in a map/reduce for these interesction lookups (queries) when they occure.
Why not?
The docs tell me it's a terrible idea.
The Question
Why is it a terrible idea? Is it really a terrible idea?
Bonus Points
If it is a terrible idea what's a good idea? A view for every combination is silly many views, and loading the whole pile of data into another program for this feels overkill (I'm noticing lucene has some tools for this and I could cook up a Node one if I had to). I could move to a tool like that if I had to, I just don't yet understand why.