As there hasn't been any real objection to this direction I've started code
review on the PR: https://github.com/apache/tinkerpop/pull/1375
On Thu, Dec 24, 2020 at 1:25 AM js guo wrote:
> OK. I have updated the PR to target master branch.
> If you have time to review my code, please note the
OK. I have updated the PR to target master branch.
If you have time to review my code, please note the `PercentileGlobalStep`
implementation which holds intermediate results as instance variables to avoid
extra object creation. If this works, I think we can apply similar behavior to
After some more thought on this, I don't think we need to do a scoped
math() step, but I think an improvement that allows both individual numbers
as well as arrays of numbers as variables would suffice. Then math() could
contain a full listing of all the possible math operations that can be
Thanks for the reply. We definitely can have a separate DISCUSS thread for
details of refactoring reducing of number streams.
As for my PR, agree that new steps are better targeted in 3.5.0 versions
instead of minor fix versions. I will later apply the changes to master branch
and raise a new
Some responses inline:
On Fri, Dec 11, 2020 at 12:53 AM js guo wrote:
> Thanks for the reply. It is a good idea to provide reducing operations
> through math() step. But from my understanding, we still need different
> reducing steps or at least different seed suppliers and reducing operators
>
Thanks. I think nPk and nCk calculations are different from the reducing
barrier step candidates.
For nPk and nCk type calculations, as long as `factorial` is supported by
`math` step, I think we can manage it by using `factorial`, *` and `/`. But if
`factorial` is supported in `math` step, I
I quite like the idea of adding some additional reducing barrier steps that
make it easy to do simple statistical analysis on streams of numbers. Likely
candidates are `stddev`, `variance` and `product`. It's not easy today to
calculate the product of a stream in Gremlin using the `math` step.
Thanks for the reply. It is a good idea to provide reducing operations through
math() step. But from my understanding, we still need different reducing steps
or at least different seed suppliers and reducing operators in the back-end.
gremlin> g.V().values('age').fold().math(local, "stdev(_)")
Thanks for posting. In the math department, I think that these two steps
are asked for commonly and I think we have reached a point where the things
folks are doing with Gremlin are requiring steps of greater specificity so
this conversation is definitely expected. We currently have two sorts of
Hi team,
We are using tinkerpop Gremlin in our risk detection cases. Some analytical
calculations are used frequently, yet there is no corresponding steps in
hand.
I am thinking that some general analytical steps can be added in Gremlin.
e.g. steps to calculate standard deviation and percentile.
10 matches
Mail list logo