couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Boaz Citrin <bcit...@gmail.com>
Subject Re: View question
Date Sun, 05 Oct 2014 05:10:33 GMT
Thanks Giovanni,
You say I can get all the groups at the same time,
but how can I achieve this and also filter by date?

On Sun, Oct 5, 2014 at 4:04 AM, Giovanni P <fiatjaf@gmail.com> wrote:

> You can use the second with group_level=1 and get all the groups at the
> same time.
> And you can use _count instead of _sum, so you don't even need to emit any
> value, just the key.
>
> On Sat, Oct 4, 2014 at 8:24 PM, Boaz Citrin <bcitrin@gmail.com> wrote:
>
> > Hello,
> >
> > My documents contain two fields to maintain group associations, say
> "group"
> > holds the group document id, and "associated" holds the date this
> document
> > was added to the group.
> > Now I want to be able to know how many documents were added to a given
> > group[s] between two given dates.
> > The challenge is that to be able to filter by dates, I need to have the
> > date as the key first part.
> > But I also need the group as the first key part in order to aggregate the
> > number of group associations.
> >
> > So I see two options here:
> >
> > 1.
> > Map: associated, {"group": group}
> > Reduce: a function that aggregates all values by group, which I assume is
> > fine as I know the number of groups is relatively small.
> > (plus configuring reduce_limit=false ...)
> >
> > 2.
> > Map: [group,associated], 1
> > Reduce: sum(values)
> > Here I cannot retrieve multiple groups at once, so I use a request per
> > desired group.
> >
> > Tried the two approaches, with the first one gives faster response. Which
> > leads me to two questions:
> > 1. Is there any risk in a reduce function that produces a potentially
> long
> > string?
> > 2. Is there a better way to achieve what I do here?
> >
> > Thanks!
> >
> > Boaz
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message