How to sessionize

Hello,

I am using ElasticSearch to capture BI (business intelligence) events in my
application. An event contains a user ID, time stamp, and some action that
the user did and if the user spent any money associated with that action
how much the user spent. I want to do some processing on these events and
store the results of this processing in a separate type ("daily summery"
type. Firstly what is the sum of all monetary transactions per day
(remember I don't have a "day" field but I do have a time stamp). Secondly
I want to create a concept of a "session" which is a period of time when we
receive at least 1 BI Action from the user every 10 minutes, and we need to
calculate the amount of sessions per day and the average session length per
day and put that information into the "daily summery" type.

I think I have the following options but wanted to ask the community for
their recommendations:

  1. Run Web server code every time an event comes in that will do processing
  2. Create a percolator and write a custom facet for "sessionizing" and
    extending the "histogram facet" so it can support multiple values.

Please share any insights regarding this strategy or better strategies.

thanks,
Iman

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

You probably want to wait for the upcoming aggregations functionality in ES
1.0. I imagine it won't be too long before this hits master on GitHub.
With this functionality you would be able to answer your questions without
any post-processing.

Thanks,
Matt Weber

On Thu, Aug 1, 2013 at 12:16 PM, imanlists@gmail.com wrote:

Hello,

I am using ElasticSearch to capture BI (business intelligence) events in
my application. An event contains a user ID, time stamp, and some action
that the user did and if the user spent any money associated with that
action how much the user spent. I want to do some processing on these
events and store the results of this processing in a separate type ("daily
summery" type. Firstly what is the sum of all monetary transactions per
day (remember I don't have a "day" field but I do have a time stamp).
Secondly I want to create a concept of a "session" which is a period of
time when we receive at least 1 BI Action from the user every 10 minutes,
and we need to calculate the amount of sessions per day and the average
session length per day and put that information into the "daily summery"
type.

I think I have the following options but wanted to ask the community for
their recommendations:

  1. Run Web server code every time an event comes in that will do processing
  2. Create a percolator and write a custom facet for "sessionizing" and
    extending the "histogram facet" so it can support multiple values.

Please share any insights regarding this strategy or better strategies.

thanks,
Iman

--
You received this message because you are subscribed to the Google Groups
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to elasticsearch+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

I will keep an eye out, thanks! As far as the merge to master, are we
talking a few days, more than a week but less than 2, or 2+ weeks ?

Thanks,
Iman

On Thursday, August 1, 2013 12:23:18 PM UTC-7, Matt Weber wrote:

You probably want to wait for the upcoming aggregations functionality in
ES 1.0. I imagine it won't be too long before this hits master on GitHub.
With this functionality you would be able to answer your questions without
any post-processing.

https://github.com/elasticsearch/elasticsearch/issues/3300

Thanks,
Matt Weber

On Thu, Aug 1, 2013 at 12:16 PM, <iman...@gmail.com <javascript:>> wrote:

Hello,

I am using ElasticSearch to capture BI (business intelligence) events in
my application. An event contains a user ID, time stamp, and some action
that the user did and if the user spent any money associated with that
action how much the user spent. I want to do some processing on these
events and store the results of this processing in a separate type ("daily
summery" type. Firstly what is the sum of all monetary transactions per
day (remember I don't have a "day" field but I do have a time stamp).
Secondly I want to create a concept of a "session" which is a period of
time when we receive at least 1 BI Action from the user every 10 minutes,
and we need to calculate the amount of sessions per day and the average
session length per day and put that information into the "daily summery"
type.

I think I have the following options but wanted to ask the community for
their recommendations:

  1. Run Web server code every time an event comes in that will do
    processing
  2. Create a percolator and write a custom facet for "sessionizing" and
    extending the "histogram facet" so it can support multiple values.

Please share any insights regarding this strategy or better strategies.

thanks,
Iman

--
You received this message because you are subscribed to the Google Groups
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to elasticsearc...@googlegroups.com <javascript:>.
For more options, visit https://groups.google.com/groups/opt_out.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.