scala - Spark Scala Convert Big RDD to Dataframe 性能问题
问题描述
我有 RDD
一个 spark Hbase 连接器的输出(22 列,10000 行),我必须将其转换为DataFrame
.
这是我的方法:
val DATAFRAME = hBaseRDD.map(x => {
(Bytes.toString(x._2.getValue(Bytes.toBytes("header"), Bytes.toBytes("Id"))),
Bytes.toString(x._2.getValue(Bytes.toBytes("header"), Bytes.toBytes("Time"))),
...
Bytes.toString(x._2.getValue(Bytes.toBytes("measures"), Bytes.toBytes("measure_i"))))})
.toDF()
.withColumnRenamed("_1", "Time")
.withColumnRenamed("_2", "name example 2")
...
.withColumnRenamed("_i", "name example i")
.sort("Time")
它运行良好,问题是性能,有什么办法可以优化它吗?
提前考虑
解决方案
推荐阅读
- python - 这是使用 tkinter 进行绘图的代码,但在我的课堂上使用激光方法会产生意想不到的结果
- bash - 将带有参数的 bash 命令传递给函数
- javascript - 在reactjs中迭代数组
- autohotkey - AHK 如果按下键,请执行此操作
- c - 如何对通用(void *)数组进行排序?
- java - 将第二个输入语句添加到代码后出错
- c# - 有没有比这更简单的方法来上下移动列表中的项目?
- airflow - Apache Airflow 1.10.10、Remote Worker 和 S3 日志
- python - 了解 Flatten 在 Keras 中的作用并确定何时使用它
- r - 一般表改成四分表