【发布时间】:2017-12-21 20:30:46
【问题描述】:
我正在用 Java 编写 Spark 应用程序,它读取 HiveTable 并将输出作为 Json 格式存储在 HDFS 中。
我使用HiveContext 读取了配置单元表,它返回了DataFrame。下面是代码sn-p。
SparkConf conf = new SparkConf().setAppName("App");
JavaSparkContext sc = new JavaSparkContext(conf);
HiveContext hiveContext = new org.apache.spark.sql.hive.HiveContext(sc);
DataFrame data1= hiveContext.sql("select * from tableName")
现在我想将DataFrame 转换为JsonArray。例如,data1 数据如下所示
| A | B |
-------------------
| 1 | test |
| 2 | mytest |
我需要像下面这样的输出
[{1:"test"},{2:"mytest"}]
我尝试使用data1.schema.json(),它给了我如下输出,而不是数组。
{1:"test"}
{2:"mytest"}
在不使用任何第三方库的情况下将DataFrame 转换为jsonArray 的正确方法或功能是什么。
【问题讨论】:
标签: java arrays json apache-spark