ExecuteSparkInteractive以纯文本形式返回json

时间:2019-10-15 13:39:16

标签: pyspark apache-nifi livy

我正在nifi-1.9.2上使用ExecuteSparkInteractive。基本思想是从spark获取json数据,然后将其插入mongodb。

这是我的火花代码

query = "(select empno,ename,dname from emp, dept where emp.deptno = dept.deptno) emp"
empDF = spark.read \
    .format("jdbc") \
    .option("url", "jdbc:oracle:thin:username/password@//hostname:portnumber/SID") \
    .option("dbtable", query) \
    .option("user", "db_user_name") \
    .option("password", "password") \
    .option("driver", "oracle.jdbc.driver.OracleDriver") \
    .load()
empDF.toJSON().collect()

上面的代码向我返回了json列表。

现在,我在ExecuteSparkInteractive中使用了相同的代码,成功使用了PutMongoRecord。 但是问题是,当我在ExecuteSparkInteractive中使用以上代码时,它将返回字符串化的json。格式如下

{"text\/plain":"[u'{MY_JSON_LIST}']"}  

如何获取原始列表而不是字符串列表,或者如何获得相同的更好的方法?

0 个答案:

没有答案