SparkSQL和SDB对接,是否能读取SDB索引
可以;Spark与SQL对接能够把基本匹配条件下压至SDB中,并由SDB根据访问计划进行数据匹配,如果条件能命令索引,则会创建索引扫描的访问计划。
请问下所谓基本下压是指需要在 sqlContext.sql("CREATE temporary table datatable ( c1 string, c2 int, c3 int ) using com.sequoiadb.spark OPTIONS ( host 'serverX:11810,serverY:11810', collectionspace 'test', collection 'data')")传递匹配条件, 还是直接在获取dataframe后filter就可以?
在用户执行
select name, id from test where id =1 ;
这类命令会将
name,id selector 下压到sdb
另外,id = 1 的查询条件也会下压的sdb中
如果用户在sdb中为 id 字段建立了索引,那么sdb就会根据id 字段的索引过滤条件,从而提高查询的效率