我有一个Hive表,它的大小更大(可能无法放入一台机器的内存,比方说)。表格结构如下:,
CREATE TABLE X
(
id INT,
values ARRAY<INT>
);
如果我使用scala/spark使用sparksql查询这个表,那么数据将如何分布在数据框中的机器上?
val sc = new SparkContext(conf)
val sqlContext = new org.apache.spark.sql.SQLContext(sc);
val xDF = sqlContext.sql("select id, values from X")
请注意,表x中没有任何分区。
我想用下面的逻辑在scala中进一步处理数据,
有一组整数值(y)(比如说1,2,3,4,5)
我想检查这些值是否都存在于x表的values列中(xdf中的值)
返回y中与x中的值匹配的值的列表。
我该怎么做呢?我不想在xdf上使用collect()然后执行上面的逻辑,因为数据可能很大。我有什么选择?
暂无答案!
目前还没有任何答案,快来回答吧!