如何使用 Scala 的 Apache Ignite RDD 索引 table?
How to index a table using Apache Ignite RDD from Scala?
我试图找到一个清晰的示例,说明如何使用 Scala 中的 Ignite RDD 为 table 编制索引,但找不到任何内容。
有人可以给出简单明了的例子如何做到这一点吗?谢谢。
你只需要在相应的缓存配置中添加索引类型配置即可:
val ccfg = new CacheConfiguration[Object, Object]()
ccfg.setName(PARTITIONED_CACHE_NAME)
ccfg.setIndexedTypes(classOf[String], classOf[Entity])
Entity
class 应该有相应的注解。详情可参考https://apacheignite.readme.io/docs/sql-queries
然后您可以创建一个 IgniteRDD
实例并保存您的数据:
val cache: IgniteRDD[String, Entity] = ic.fromCache(PARTITIONED_CACHE_NAME)
cache.savePairs(...)
最后,您可以在 IgniteRDD 上使用 sql(...)
方法查询索引数据:
val df = cache.sql("select field1, field2 from Entity where field3 = ?", "value3")
我试图找到一个清晰的示例,说明如何使用 Scala 中的 Ignite RDD 为 table 编制索引,但找不到任何内容。 有人可以给出简单明了的例子如何做到这一点吗?谢谢。
你只需要在相应的缓存配置中添加索引类型配置即可:
val ccfg = new CacheConfiguration[Object, Object]()
ccfg.setName(PARTITIONED_CACHE_NAME)
ccfg.setIndexedTypes(classOf[String], classOf[Entity])
Entity
class 应该有相应的注解。详情可参考https://apacheignite.readme.io/docs/sql-queries
然后您可以创建一个 IgniteRDD
实例并保存您的数据:
val cache: IgniteRDD[String, Entity] = ic.fromCache(PARTITIONED_CACHE_NAME)
cache.savePairs(...)
最后,您可以在 IgniteRDD 上使用 sql(...)
方法查询索引数据:
val df = cache.sql("select field1, field2 from Entity where field3 = ?", "value3")