GridGain SQL查询没有数据模型+其他GridGain SQL问题

时间:2014-09-30 23:13:04

标签: sql distributed gridgain

我一直在检查GridGain一段时间,并且遇到了一些关于GridGain SQL功能的功能,这引出了一些问题(我无法在文档中找到确切的答案)

  1. 从示例中,始终存在显式数据模型。我正在使用Java,这意味着总是要查询的模型的类定义。 API文档中的示例:http://atlassian.gridgain.com/wiki/display/GG60/SQL,+Scan,+And+Full+Text+Queries首先展示了如何对属性进行注释,这表明总是需要一个显式模型。可以为SQL查询注释模型的属性,例如" @ GridCacheQuerySqlField"。 是否总是需要显式数据模型?理想情况下,我想要一种不必明确说明模型的方法,因为我的用例确实经常更改并且具有复杂的关系。

  2. 通过GridGain的SQL API可以执行哪些SQL查询子集?我的用例通常需要非常复杂的查询。例如,在docs(与上面相同的链接)中,它指出" Continuous Queries不能与SQL一起使用。仅支持基于谓词的查询。" 我在哪里可以找到支持的SQL子集(并且在条件下,因为提供的示例不会执行连续的SQL查询,除非查询是基于谓词的条件是满足)

  3. 提前感谢您的见解

1 个答案:

答案 0 :(得分:0)

  1. GridGain支持企业版中的非固定数据模型,即便携式对象。可移植对象允许您将数据模型呈现为类似于地图的嵌套结构,该结构允许跨不同语言(Java,C#,.NET)进行动态结构更改,索引和可移植性。您可以在GridGain企业版示例中查看可移植对象,并在此处阅读文档:http://entdoc.gridgain.org/latest/Portable+Cross+Platform+Objects在开源版本中,始终需要显式类定义。

  2. GridCacheQuery javadoc中描述了SQL限制:http://gridgain.com/sdk/6.5.0/javadoc/org/gridgain/grid/cache/query/GridCacheQuery.html Group bysort by语句分别应用于每个节点,因此在将多个远程节点的结果组合在一起后,结果集可能会被错误地分组或排序。 诸如summaxavg等聚合函数也应用于每个节点。因此,您将获得包含聚合值的多个结果,每个节点一个。 仅当连接对象以并置模式存储或者连接的至少一侧存储在REPLICATED缓存中时,连接才能正常工作。