我有一个Cassandra数据库表,它被缓存以点燃缓存。我想对此表使用一些select查询。是否有可能使用SqlFieldsQuery& Q ++中的QueryFieldsCursor?或者还有其他选择吗? 我只是尝试使用这个
SqlFieldsQuery sql ("select * from user_permission");
QueryFieldsCursor cursor = cache.Query(qry);
while (cursor.HasNext())
{
QueryFieldsRow row = cursor.GetNext();
std::cout << row.GetNext<std::string>() << row.GetNext<std::string>() << std::endl;
}
但是出现了这样的错误“无法解析查询:select * from user_permission”
答案 0 :(得分:0)
首先,您不使用查询API查询Cassandra,而是查询Ignite中已有的数据。因此,在执行查询之前,您必须将数据从Cassandra预加载到Ignite。为此,您需要配置Cassandra持久性存储[1],然后使用cache.LoadCache
方法。
其次,您需要确保SQL配置正确[2]。
[1] https://apacheignite-mix.readme.io/docs/ignite-with-apache-cassandra