首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何针对位于GG节点上的IMDB段实现在GG节点上执行的分布式任务?

如何针对位于GG节点上的IMDB段实现在GG节点上执行的分布式任务?
EN

Stack Overflow用户
提问于 2014-04-12 00:09:24
回答 2查看 118关注 0票数 0

我已经分区( IMDB )我想在每个节点上启动一个计算任务,该任务对每个节点IMDB上的所有记录执行一些计算。因此,每个任务都做了一部分工作。这种托管似乎不太可能,因为我不能限制对节点上的数据的访问。请确认或建议解决方案。

EN

回答 2

Stack Overflow用户

发布于 2014-04-12 11:26:01

听起来您是在问如何将计算与缓存数据的节点配置在一起。你可以看看GridGain附带的CacheAffinityExample。具体地说,下面的代码片段:

代码语言:javascript
复制
for (int i = 0; i < KEY_CNT; i++) {
    final int key = i;

    // This callable will execute on the remote node where
    // data with the given key is located.
    grid.compute().affinityCall(CACHE_NAME, key, new GridCallable() {
        @Override public void call() throws Exception {
            String val = cache.get(key);

            // Work on cached value.
            ...

            return val;
        }
    }).get();
}
票数 0
EN

Stack Overflow用户

发布于 2014-04-15 09:41:23

此代码将向每个节点发送一个闭包,并对该节点上的所有数据进行计算:

代码语言:javascript
复制
grid.forCache("mycache").compute().broadcast(new GridRunnable() {
    @Override public void run() {
        for (GridCacheEntry<K, V> e : cache.entrySet()) {
            // Do something
            ... 
        }
    }
}).get();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23017560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档