直接上代码:

第一部分:

  1. case class OrdPacsresult_obj(pk_dcpv: String, result_obj: String)

第二部分:

  1. def ordsubj: Unit = {
  2. import sparkSession.implicits._
  3. import sparkSession.sql
  4. val dataset: Dataset[OrdPacsresult_subj] = sql("select pk_dcpv,result_obj,result_subj from diagbot.ord_rec_pacs_filter where result_subj is not null").as[OrdPacsresult_subj]
  5.  
  6. val mapRDD: Dataset[(String, String)] = dataset.map(x => {
  7. val pk_dcpv: String = x.pk_dcpv
  8. val result_subj = x.result_subj
  9. (pk_dcpv, result_subj)
  10. })
  11. val rdd: RDD[(String, String)] = mapRDD.rdd.repartition(100)
  12. val key: RDD[(String, String)] = rdd.reduceByKey((x, y) => {
  13. val buffer: StringBuffer = new StringBuffer()
  14. buffer.append(x).append("\n")
  15. if (!buffer.toString.contains(y)) {
  16. buffer.append(y).append("\n")
  17. }
  18. buffer.toString
  19. })
  20. val f: DataFrame = key.map(x => {
  21. OrdPacsresult_subj(x._1, x._2)
  22. }).toDF()
  23. f.repartition(1).write.parquet("hdfs://192.168.2.258:9000/datas/parquetFile/OrdPacsresult_subj")
  24. }

hive,把一个表中计算好的数据,存到另一个外部表中的更多相关文章

  1. sql 把一个用逗号分隔的多个数据字符串变成一个表的一列

    USE [tms]GO/****** Object: UserDefinedFunction [dbo].[StrToTable] Script Date: 2017/4/26 9:06:20 *** ...

  2. sql把一个表的某几列的数据存到另一个表里

    一.如何用slq语句把一个表中的某几个字段的数据插入到另一个新表中,就要用下面这条slq语句:    insert into 表名1(字段1,字段2) select 字段1,字段2 from 表名2 ...

  3. Oracle数据加载之外部表的介绍

    环境: 服务端:RHEL6.4 + Oracle 11.2.0.4 目录: 一. 创建外部表 1.1 创建外部表需要的目录 1.2 创建外部表 1.3 创建外部表源文件 1.4 查询外部表 二. 加载 ...

  4. sqlserver怎么将查询出来的数据存到新的数据库表中

    查询结果直接创建一个新表存放select * into [新表名] FROM [原表名]WHERE 车辆='小汽车' 若新建表要放在另一个数据库B中USE BGOSELECT * INTO [新表名] ...

  5. SQL 从一个表读取数据存到另一个表

    原来没有的创建的表select * into 表A form 表B where条件 原来存在的表insert into 表A select * from 表B where 条件 INSERT INTO ...

  6. 将SQL SERVER中查询到的数据导成一个Excel文件

    -- ====================================================== T-SQL代码: EXEC master..xp_cmdshell 'bcp 库名. ...

  7. 读取文件中的每行数据,并且存入到list中

    有一个txt文件,每行都有数据,将每行的数据转换成list列表 例如: 5,6,7,8,1 9,1,3,4 如下实现: f = open('test1.txt','r') for i in f.rea ...

  8. hive 内部表与外部表的区别

    hive 内部表: hive> create table soyo55(name STRING,addr STRING,money STRING) row format delimited fi ...

  9. oracle外部表

    关于外部表的描述 正确描述 the create table as select statement can be used to upload data into a normal table in ...

随机推荐

  1. Android持久化存储——(包含操作SQLite数据库)

    <第一行代码>读书手札 你可能会遇到的问题:解决File Explorer 中无显示问题 Android中,持久化存储,常见的一共有三种方法实现 (一.)利用文件存储 文件存储是Andro ...

  2. golang的for循环基本语法

  3. dotnet Core学习之旅(三):创建项目

    [重要:文中所有外链不能确保永久有效]>创建解决方案 在VSCode上,可以使用来自开源力量的vscode扩展vscode-solution-explorer来增强VSCode对.NET项目的支 ...

  4. 几个有益的 CSS 小知识

    样式的顺序 CSS 代码:   HTML 代码:   记得之前这是一道比较火的 CSS 考题,当时好像是有不少的人答错(30% 以上) 答案你们应该是知道的. 可以这样提升 CSS 性能 后代选择器 ...

  5. thrift原理与架构

    是什么: 一个RPC框架.

  6. Tomcat一闪而过的调试方法

    很少用tomcat来部署,都是用springboot微服务.只是以前学的时候搞demo试过而已. 软件测试的期末作业要求要测一个Javaweb的项目,给了一个包然后要求部署在tomcat中并启动. 然 ...

  7. Java8新特性 - 新时间和日期 API

    本地时间和时间戳 主要方法: now:静态方法,根据当前时间创建对象 of:静态方法,根据指定日期/时间创建对象 plusDays,plusWeeks,plusMonths,plusYears:向当前 ...

  8. 天梯赛 L2-023. 图着色问题

    题解:用dfs遍历图的每条边就好,这里注意要求颜色的个数为k #include <cstdio> #include <iostream> #include <cstrin ...

  9. 使用Harbor搭建Docker私有镜像仓库

    Harbor介绍:https://goharbor.io/ 前置条件 需要安装了docker和docker-compose 下载Harbor 在harbor下载页(https://github.com ...

  10. VS2017 CMD多出 “进程 6420)已退出,返回代码为: 0”的内容

    执行cmd, 命令行多出如下内容 xxxx\project.exe (进程 6420)已退出,返回代码为: 0. VS 取消设置方式: 工具->选项->调试-->常规     拉到最 ...