1

IgniteCache API 中是否支持像 Prepared 语句这样的工具,以避免每次都进行查询解析?我看到为此提出了一个 Jira 问题,它说它在版本 1.5.0.final 中得到解决, https: //issues.apache.org/jira/browse/IGNITE-1856 ,但我找不到任何文档为此在 Apache Ignite 站点中。我知道我们可以通过 JDBC Connection 连接来使用准备好的语句,但这不适合我的用例。

我的代码如下所示,此查询将使用不同的参数一次又一次地调用,

    IgniteCache<Integer,Subscriber> subscriberCache= rocCachemanager.getCache("subscriberCache");
    SqlQuery<Integer, Subscriber> sql = new SqlQuery(Subscriber.class,
              "from Subscriber where Subscriber.MSISDNNo=? and Subscriber.status='Active'");

    sql.setArgs("SomeNumber");  
    QueryCursor<Entry<Integer,Subscriber>> cursor =ss.query(sql);
4

1 回答 1

1

语句会自动缓存,无需任何操作。如果您的查询文本没有改变,只有参数会改变,Ignite 将不会再次解析查询。

于 2016-03-03T12:12:46.483 回答