2016-12-07 10 views
1

IgniteRDD.sqlは、SparkSQLまたはHiveQLではなく、ANSI SQLのみをサポートしていますか?IgniteRDD.sqlはどのような種類のSQLをサポートします

悪いsqlの例外をスローするIgniteRDD.sql(sqlText)を使用しているとき、それはorg.h2.jdbc.JdbcSQLExceptionにトレースするものです。つまり、h2パーズがsqlをパージしていますか?

私の理解は正しいですか?

Exception in thread "main" javax.cache.CacheException: Failed to parse query: select __VAL from Integer 
    at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.queryTwoStep(IgniteH2Indexing.java:1137) 
    at org.apache.ignite.internal.processors.query.GridQueryProcessor$2.applyx(GridQueryProcessor.java:732) 
    at org.apache.ignite.internal.processors.query.GridQueryProcessor$2.applyx(GridQueryProcessor.java:730) 
    at org.apache.ignite.internal.util.lang.IgniteOutClosureX.apply(IgniteOutClosureX.java:36) 
    at org.apache.ignite.internal.processors.query.GridQueryProcessor.executeQuery(GridQueryProcessor.java:1666) 
    at org.apache.ignite.internal.processors.query.GridQueryProcessor.queryTwoStep(GridQueryProcessor.java:730) 
    at org.apache.ignite.internal.processors.cache.IgniteCacheProxy.query(IgniteCacheProxy.java:700) 
    at org.apache.ignite.spark.IgniteRDD.sql(IgniteRDD.scala:147) 
    at com.xyz.ignite.spark.IgniteSparkTest$.main(IgniteSparkTest.scala:33) 
    at com.xyz.ignite.spark.IgniteSparkTest.main(IgniteSparkTest.scala) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55) 
    at java.lang.reflect.Method.invoke(Method.java:613) 
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144) 
Caused by: org.h2.jdbc.JdbcSQLException: Column "__VAL" not found; SQL statement: 
select __VAL from Integer [42122-191] 
    at org.h2.message.DbException.getJdbcSQLException(DbException.java:345) 
    at org.h2.message.DbException.get(DbException.java:179) 
    at org.h2.message.DbException.get(DbException.java:155) 
    at org.h2.expression.ExpressionColumn.optimize(ExpressionColumn.java:147) 
    at org.h2.command.dml.Select.prepare(Select.java:852) 
    at org.h2.command.Parser.prepareCommand(Parser.java:257) 

答えて

1

IgniteRDD.sqlとobjectSqlは、Spark SQLの上で作業していない - 彼らはただのIgniteのSQLエンジンを呼び出します。

Hereは、可能な指示の文書です。

+0

ありがとうございます。ガウダ。したがって、IgniteはH2パーサーを使用してSQLを解析します。つまり、ANSI SQLだけがサポートされています。 – Tom

関連する問題