persist periodically

classic Classic list List threaded Threaded
5 messages Options
shawn.du shawn.du
Reply | Threaded
Open this post in threaded view
|

persist periodically

Hi,

ignite support persist data periodically?

see blow use case:
we want to implement storm state management using ignite.
we maintain storm stateful object as caches in ignite.
for storm used processing message in very low latency, so the stateful object maybe changed very fast.
if ignite persist each change into storage, I think it will both decrease ignite and storm performance.
how to make ignite persist periodically? like every seconds.

Thanks
Shawn

Andrey Mashenkov Andrey Mashenkov
Reply | Threaded
Open this post in threaded view
|

Re: persist periodically

Hi Shawn,

Look at CacheConfiguration.setWriteBehindEnabled [1] and related methods.
Does it meets your needs?


On Tue, Feb 14, 2017 at 8:40 AM, shawn.du <[hidden email]> wrote:
Hi,

ignite support persist data periodically?

see blow use case:
we want to implement storm state management using ignite.
we maintain storm stateful object as caches in ignite.
for storm used processing message in very low latency, so the stateful object maybe changed very fast.
if ignite persist each change into storage, I think it will both decrease ignite and storm performance.
how to make ignite persist periodically? like every seconds.

Thanks
Shawn


shawn.du shawn.du
Reply | Threaded
Open this post in threaded view
|

Re: persist periodically

exactly.  Thank you, Andrey!

Thanks
Shawn

On 02/14/2017 13:54[hidden email] wrote:
Hi Shawn,

Look at CacheConfiguration.setWriteBehindEnabled [1] and related methods.
Does it meets your needs?


On Tue, Feb 14, 2017 at 8:40 AM, shawn.du <[hidden email]> wrote:
Hi,

ignite support persist data periodically?

see blow use case:
we want to implement storm state management using ignite.
we maintain storm stateful object as caches in ignite.
for storm used processing message in very low latency, so the stateful object maybe changed very fast.
if ignite persist each change into storage, I think it will both decrease ignite and storm performance.
how to make ignite persist periodically? like every seconds.

Thanks
Shawn


shawn.du shawn.du
Reply | Threaded
Open this post in threaded view
|

Re: persist periodically

Hi, Andrey,

then do you know how to gracefully shut down ignite servers when write-behind enabled without data lose?

Thanks
Shawn

On 02/14/2017 14:04[hidden email] wrote:
exactly.  Thank you, Andrey!

Thanks
Shawn

On 02/14/2017 13:54[hidden email] wrote:
Hi Shawn,

Look at CacheConfiguration.setWriteBehindEnabled [1] and related methods.
Does it meets your needs?


On Tue, Feb 14, 2017 at 8:40 AM, shawn.du <[hidden email]> wrote:
Hi,

ignite support persist data periodically?

see blow use case:
we want to implement storm state management using ignite.
we maintain storm stateful object as caches in ignite.
for storm used processing message in very low latency, so the stateful object maybe changed very fast.
if ignite persist each change into storage, I think it will both decrease ignite and storm performance.
how to make ignite persist periodically? like every seconds.

Thanks
Shawn


vkulichenko vkulichenko
Reply | Threaded
Open this post in threaded view
|

Re: persist periodically

Shawn,

If it's a standalone node, you can just terminate the process. There is a shutdown hook that will gracefully stop the node. For example, kill command (without -9) will do the job.

For embedded node call Ignition.stop().

-Val