apache-spark - javax.cache.CacheException : Indexing is disabled for cache: test. 在 CacheConfiguration 上使用 setIndexedTypes 或 setTypeMetadata 方法来启用

标签 apache-spark apache-zeppelin ignite

提出类似问题here 。然而,在这个问题中,如果需要,我尝试包含更多细节和可执行代码。同样在这里,我通过 Zeppelin 执行此代码。

以下是 Zeppelin 笔记本中的代码片段:

Notebook-1 - 存储一些数据以启动缓存。

val ic = new IgniteContext(sc, () => new IgniteConfiguration())

val cacheConfig = new CacheConfiguration[Int, Int]()
    cacheConfig.setName("test")
    cacheConfig.setIndexedTypes(classOf[Int], classOf[Int])

val cacheRdd = ic.fromCache[Int,Int](cacheConfig)

cacheRdd.savePairs(sc.parallelize(1 to 10000, 10).map(i => (i, i)))

第 2 部分:从我们存储笔记本 1 中的一些数据的缓存中读取。

val ic = new IgniteContext(sc, () => new IgniteConfiguration())
val cacheConfig = new CacheConfiguration[Int, Int]()
  cacheConfig.setName("partitioned")
  cacheConfig.setIndexedTypes(classOf[Int], classOf[Int])

val ic = new IgniteContext(sc, () => new IgniteConfiguration())

val cacheRdd = ic.fromCache(cacheConfig)
cacheRdd.sql("select _val from Integer")

第一个笔记本中的代码执行良好。然而,在执行第二个笔记本时,它失败了,并出现标题中提到的异常。

完全异常:

javax.cache.CacheException: Indexing is disabled for cache: test. Use setIndexedTypes or setTypeMetadata methods on CacheConfiguration to enable.
  at org.apache.ignite.internal.processors.cache.IgniteCacheProxy.validate(IgniteCacheProxy.java:831)
  at org.apache.ignite.internal.processors.cache.IgniteCacheProxy.query(IgniteCacheProxy.java:690)
  at org.apache.ignite.spark.IgniteRDD.sql(IgniteRDD.scala:147)
  ... 64 elided

最佳答案

也许您应该尝试使用上面相同的代码来创建新的缓存。我认为它指的是最初创建缓存的一些旧缓存配置。或者销毁缓存并尝试使用相同的名称和上述配置重新创建它。

关于apache-spark - javax.cache.CacheException : Indexing is disabled for cache: test. 在 CacheConfiguration 上使用 setIndexedTypes 或 setTypeMetadata 方法来启用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39999474/

相关文章:

json - 如何使用 Spark 和 Spray Json 读取 json 文件并转换为案例类

python - 使用spark-submit和BeautifulSoup时出现UnicodeEncodeError

python - 我如何在飞艇中使用 pyspark?

docker - 使用 Kubernetes 的齐柏林飞艇。非本地模式的解释器设置中未指定 SPARK_HOME

apache-kafka - Apache 点燃与 Apache 卡夫卡

redis - 内存分布式缓存中的数据分区和数据持久化

apache-spark - 如何使用spark-ml处理分类特征?

apache-spark - python脚本中的spark-submit和SparkSession之间的区别?

apache-spark - Zep 笔记本中的动态表单 + SparkSQL 变量绑定(bind)

java - 在客户端-服务器模式下使用 Apache Ignite