美文网首页大数据学习
Spark SQL写入Hive,同分区overwrite,不同分

Spark SQL写入Hive,同分区overwrite,不同分

作者: xiaogp | 来源:发表于2020-12-23 10:42 被阅读0次

    摘要:Spark SQLHive

    新建hive表

    新建hive表,定义好字段类型和分区字段

    CREATE TABLE `test` (
    `id` int,
    `name` string,
    `score` double
    ) PARTITIONED BY (
    `dt` string
    ) STORED AS PARQUET;
    

    Spark SQL调用HQL语法

    将DataFrame创建为视图表,创建一个分区字符串对象,使用insert overwrite指定partition(dt=????)进行指定分区的overwrite操作

    res.createOrReplaceTempView("res")
    // dt = "20201212"
    val dt: String = getDiffDate(configProperties.value.getProperty("dtDiffDays").toInt, getNowDate()).replace("-", "")
    spark.sql(s"insert overwrite table ${configProperties.value.getProperty("saveModelTable")} partition(dt='${dt}') select * from res")
    

    查看插入结果

    建表之后test为一张空表,分别指定三次插入overwrite操作,dt分别为"20201203","20201203","20201208",最终结果只有两个分区的数据

    hive> show partitions test;
    OK
    partition
    dt=20201203
    dt=20201208
    

    相关文章

      网友评论

        本文标题:Spark SQL写入Hive,同分区overwrite,不同分

        本文链接:https://www.haomeiwen.com/subject/nrjynktx.html