<html><head><base href="x-msg://1021/"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On 23 Nov 2011, at 08:04, Ben Aviram wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div lang="EN-US" link="blue" vlink="purple"><div class="WordSection1" style="page: WordSection1; "><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; ">Hi all,<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; "><o:p> </o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; ">We’re working on analytics system based on Riak(1.0.2).<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; "><o:p> </o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; ">I’m storing my data in this structure:<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; ">Key = “userid_date”<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; ">Value = daily report values<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; "><o:p> </o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; ">So if I want for example to query last year’s data I’m using key-filter like this<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; ">{<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; ">  "inputs":{<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; ">     "bucket":"report"<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; ">     "key_filters":[["tokenize", "-", 2],<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; ">                    ["between", "20110101", "20111231"]]<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; ">   },<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; ">}<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; "><o:p> </o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; position: static; z-index: auto; ">Are key-filters efficient enough?</div></div></div></span></blockquote><div><br></div><div>Using key-filters mean you're doing a full key list, wish isn't recommended. Rusty might be able to shed better light on it, but when I did some date based stuff recently I converted date to a timestamp and indexed it using secondary indexes _int index, then I could get keys from a range between 2 dates by using 2i range queries. Has to be more efficient than a full key list/key filters. In fact, on the wiki[1] it suggests dates encoded as sortable strings would work.</div><div><br></div><div>[1] <a href="http://wiki.basho.com/Secondary-Indexes.html">http://wiki.basho.com/Secondary-Indexes.html</a></div><br><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div lang="EN-US" link="blue" vlink="purple"><div class="WordSection1" style="page: WordSection1; "><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; position: static; z-index: auto; "><o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; position: static; z-index: auto; ">Or should I just send a bulk of keys to the map reduce query(ie. userid _20110101, userid _20110102, userid _20110103 ….)<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; position: static; z-index: auto; "><o:p> </o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; position: static; z-index: auto; ">Many thanks,<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; line-height: 12pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: white; vertical-align: baseline; position: static; z-index: auto; ">Ben<o:p></o:p></div><div style="margin-top: 0in; margin-right: 0in; margin-left: 0in; margin-bottom: 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; "><o:p> </o:p></div></div>_______________________________________________<br>riak-users mailing list<br><a href="mailto:riak-users@lists.basho.com" style="color: blue; text-decoration: underline; ">riak-users@lists.basho.com</a><br><a href="http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com" style="color: blue; text-decoration: underline; ">http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com</a><br></div></span></blockquote></div><br></body></html>