Apache spark 如何在spark/scala中将行转换为列?
我是spark的新手,但我找不到一个简单问题的答案:如何将行更改为列?例如,我有如下数据:Apache spark 如何在spark/scala中将行转换为列?,apache-spark,hive,Apache Spark,Hive,我是spark的新手,但我找不到一个简单问题的答案:如何将行更改为列?例如,我有如下数据: 类型| Col1 | Col2 | Col3 |……|Col60 1 | 12 | 3 | 4 |... | 87 2 | 1 | 5 | 6 |... | 九十 我想把它改成喜欢的 键入| ColName |值 1 | Col1 | 12 1 | Col2 | 3 1 | Col3 | 4 … 1 | Col60 | 87 2 | Col1 | 1 2 | Co
类型| Col1 | Col2 | Col3 |……|Col60
1 | 12 | 3 | 4 |... | 87
2 | 1 | 5 | 6 |... | 九十 我想把它改成喜欢的 键入| ColName |值
1 | Col1 | 12
1 | Col2 | 3
1 | Col3 | 4
…
1 | Col60 | 87
2 | Col1 | 1
2 | Col2 | 5
2 | Col3 | 6
…
2 | Col60 | 90
我试着搜索了很多地方,但没有找到与我所需要的完全相同的答案。在Hive中,您可以通过将列放入
地图中来使用侧视图和分解
select type,colName,val
from tbl
lateral view explode(map('col1',col1,'col2',col2,'col3',col3)) t as colName,val --fill it with all the columns from the table
Spark SQL还有侧面视图
和分解视图
,可以使用。谢谢!!但是我怎样才能在spark中保存表格呢?使用hiveContext.sql(“*”),是否有一种可编程的方法来实现这一点?