2016-10-26 1 views
0

キーと値の両方でBinaryObjectとしてIgniteRDDにいくつかのSparkデータセットを保存しましたが、うまくいきました。また、Igniteコードを使ってIgniteコードを% 。withkeepBinaryをzeppelinの%ignite.ignitesqlインタプリタで言及する方法

%ignite 
import org.apache.ignite._ 
import org.apache.ignite.binary._ 
import org.apache.ignite.cache.query._ 
import org.apache.ignite.configuration._ 
import scala.collection.JavaConversions._ 

val cache: IgniteCache[BinaryObject, BinaryObject] = ignite.cache("test123") 

val qry = new SqlFieldsQuery(
"select _val from testValue", 
true) 
val res = cache.withKeepBinary().query(qry).getAll() 

collectionAsScalaIterable(res).foreach(println _) 

しかし、私はそれがで失敗%ignite.ignitesql通訳

%ignite.ignitesql 
select * from testValue 

と同じ照会しようとする "IDのために失敗しました決意クラス:-1422444403"

私には、の違いと思われますどちらも、最初に私がKeepBinary()で指定したもので、%ignite.ignitesqlでSQLと直接似ているので、SQLを直接使用できるようになります。

答えて

0

これは今では不可能です。このIX:https://issues.apache.org/jira/browse/IGNITE-4141

しかし、結果セットが完全なオブジェクトを表す定義済みの_key_valフィールドが含まれますので、どのような場合でも、私は、のIgniteでの作業時select *クエリを避けるためにお勧めします。結果セットに必要なフィールドを明示的にリストして、必要のないデータをフェッチしない方が良いでしょう。

関連する問題