scala - 将多个变量从 scala/spark-shell 提供给 hive 表

标签 scala hadoop apache-spark hive apache-spark-sql

我在 scala/spark-shell 中有 4 个变量。

S1 = (a string) = "age"
S2 = (another string) = "school"
D1 = (a double) = 0.50
D2 = (another double) = 0.75

我需要将其提供给配置单元表,如下所示:

系数系数

年龄0.50

学校0.75

我能够从 scala/spark-shell 创建表:

val hiveContext = new org.apache.spark.sql.hive.HiveContext(sc)

//以下作品

hiveContext.sql("create table students_table (factor STRING, coeff FLOAT) stored as orc")

但是,我不知道如何将这些值插入到配置单元表中。

我玩过插入和更新语句。 我也玩过数据框。 我还尝试将数据转储到 hdfs 中的文本文件中(首先将它们转换为 RDD),但格式的出现使我无法将其用作 hive 表的素材。

我确信我不知道如何做到这一点。

真诚感谢任何帮助。

最佳答案

val input = sc.parallelize(Array((s1,D1), (s2, D2)))
case class StudentTable(factor : String, coeff : Double)
import sqlContext.implicits._
val df = input.map(x=>StudentTable(x._1, x._2)).toDF
df.saveAsTable("students_table", org.apache.spark.sql.SaveMode.Append)

关于scala - 将多个变量从 scala/spark-shell 提供给 hive 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35504983/

相关文章:

scala - scala图中的确定性拓扑顺序

scala - Spark 斯卡拉: GroupByKey and sort

list - Scala 整数列表列表

apache-spark - 从 Spark 2.0 到 3.0 的字符串到日期迁移导致无法识别 DateTimeFormatter 中的 'EEE MMM dd HH:mm:ss zzz yyyy' 模式

scala - 如何为响应式 Spring WebClient (Spring-WebFlux) 定义自定义 HttpMessageConverter

hadoop - 如何在大型数据集中找到全局平均值?

java - 使用 Java 中的 Pig/Piglatin 在 HBase 中排序

hadoop - 如何删除HDFS中超过x天的数据

scala - 如何将成功的 Iterable[Try[U]] 过滤器转换为 Iterable[U]?

apache-spark - 使用 pyspark 将嵌套的 json 对象插入到 PostgreSQL