ignite-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexey Goncharuk <alexey.goncha...@gmail.com>
Subject Re: What's the difference between EntryProcessor and distributed closure?
Date Tue, 08 Nov 2016 14:26:00 GMT
Hi Tracyl,

Can you describe in greater detail what you are trying to achieve? To my
knowledge, predicate pushdown is a term usually used for map-reduce jobs.
The concept of Ignite's jobs and tasks is more similar to fork-join rather
than map-reduce semantics, so we could better help you if you describe what
exactly you are trying to achieve.

The difference between an EntryProcessor and a distributed closure is as
follows: EntryProcessor is a cache operation that allows you atomically
modify a single key. It is executed within cache-level entry lock and
allows you only to see the current state of the entry. It is not allowed to
call other public ignite API within an EntryProcessor. Distributed closure,
on the other hand, is executed in a public ignite thread pool and does not
hold any cache locks. You can insert any arbitrary logic inside a
distributed closure.

Let us know if you have more questions.

Thanks,
AG

2016-11-08 7:19 GMT+03:00 Tracyl <tliang36@bloomberg.net>:

> What I would like to do is to achieve predicate/column project push-down to
> the ignite cache layer. I guess this two options could do it, isn't it? If
> so, what's the difference? Are there any other options to achieve predicate
> push-down? Thanks in advance!
>
>
>
> --
> View this message in context: http://apache-ignite-users.
> 70518.x6.nabble.com/What-s-the-difference-between-EntryProcessor-and-
> distributed-closure-tp8759.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>

Mime
View raw message