如何扩展Spark DataSet API以实现类似于collect()(JAVA)的运算符

时间:2019-02-15 23:31:07

标签: apache-spark apache-spark-sql

我正在大学里工作,试图使Spark SQL在加密数据上工作。我实现了一些允许加密/解密数据的功能。

我想实现一个类似于collect()的运算符,不同之处在于,当查询结果返回到Spark Client时,必须将其解密。

所以,我的想法是执行类似以下操作:

sqlContext.sql("SELECT * FROM table1").collectDecrypted()

首先,有没有更好的方法来进行此计算?如果没有,如何正确执行此操作?

我考虑过使用一个简单的函数来扩展DataSet API,该函数的功能类似于:

... {
    ds.collect().flatMap( /* decrypt using my decryption function */ )
}

0 个答案:

没有答案