HIVE中关联键类型不同导致数据重复,以及数据倾斜

比如左表关联键是string类型,右表关联键是bigint类型,关联后会出现多条的情况

解决方案:

        关联键先统一转成string类型再进行关联

原因:

根据HIVE版本不同,数据位数上限不同,

低版本的超过16位会出现这种情况,高版本的超过19位会出现这种情况

以下为低版本HIVE数据测试情况:

select * 
from (select '3618693946106075234' as str_ord  -- 19位union allselect '361869394610607523' as str_ord  -- 18位union allselect '36186939461060752' as str_ord  -- 17位union allselect '3618693946106075' as str_ord  -- 16位) a
join (select 3618693946106075234  as int_Ordunion all select 3618693946106075233 as int_Ordunion all select 361869394610607523 as int_Ordunion all select 361869394610607524 as int_Ordunion allselect 36186939461060752 as int_Ord  -- 17位union allselect 36186939461060751 as int_Ord  -- 17位union allselect 3618693946106075 as int_Ord  -- 16位union allselect 3618693946106076 as int_Ord  -- 16位) b 
on a.str_ord  = b.int_Ord

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/643037.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信小程序底部按钮适配iPhoneX以上,显示遮挡问题

只需要在给底部按钮加个样式 /* 底部导航栏容器 */ .button-box {/* 使用 safe-area-inset-bottom 属性适配 iPhone X 及以上型号设备 */padding-bottom: constant(safe-area-inset-bottom);padding-bottom: env(safe-area-inset-bottom);/* 其他样式属性 */ }iPhone6/7/8效果 …

DNS解析是什么?DNS解析在网络通信中作用有哪些?

在网络通信过程中,DNS解析起着至关重要的作用,它负责将人们便于理解和记忆的域名翻译成计算机能够识别的IP地址,从而实现人们通过域名进行网络通信的目的。 DNS解析的原理 IP是互联网上每个计算机的标识符,计算机通过IP地址进行…

vue全局公共样式

vue公共样式代码存放在/src/styles文件夹里 index里引入其他组件公共样式,index.scss文件内容如下: import ./sidebar.scss; import ./searchForm.scss;body {height: 100%;-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased;t…

hcip高级网络知识

一:计算机间信息传递原理 抽象语言----编码 编码---二进制 二进制---转换为电流(数字信号) 处理和传递数字信号 二:OSI--七层参考模型 ISO--1979 规定计算机系统互联的组织: OSI/RM ---- 开放式系统互联参考模型 --- 1…

L1-088 静静的推荐(Java)

天梯赛结束后,某企业的人力资源部希望组委会能推荐一批优秀的学生,这个整理推荐名单的任务就由静静姐负责。企业接受推荐的流程是这样的: 只考虑得分不低于 175 分的学生;一共接受 K 批次的推荐名单;同一批推荐名单上…

【模拟】力扣38(Java)

题目 class Solution {public String countAndSay(int n) {String ret "1";for(int i1;i<n;i)//解释n-1次ret{StringBuffer tmp new StringBuffer();int len ret.length();for(int left 0,right 0;right<len;){//双指针while(right < len &&…

力扣精选算法100道——x的平方根(二分查找专题)

x的平方根 首先看到这个题目的时候&#xff0c;我们需要对上一个二分查找专题的题目进行深度理解&#xff0c;然后了解模板&#xff0c;这题是完全利用的上一题的模板知识进行&#xff0c;如果直接看这个题目可能是有点懵的&#xff0c;因为我这里直接利用模板进行解题。力扣…

技术变革下的职业危机

在科技日新月异的时代&#xff0c;程序员这个曾经被认为是相对稳定的职业&#xff0c;也开始感受到前所未有的冲击。随着自动化和人工智能等技术的迅猛发展&#xff0c;裁员潮正在席卷整个编程行业&#xff0c;给程序员们敲响了职业危机的警钟。 一、裁员潮的根本原因 技术变革…

jetson NX读取RTSP视频流

一、项目原由 由于在项目中需要对光电吊舱进行调整,光电吊舱大部分都是使用RTSP流进行视频传输的,所以需要利用jetson 设备去读取视频流。 由于厂家拿过来的光电吊舱的IP地址是:IP地址为:192.168.abc.108 ip地址: 192.168.abc.108换句话就是他的推流RTSP为:RTSP://192.…

了解HTTP/1.1、HTTP/1.0 和 HTTP/2.0

HTTP/1.1、HTTP/1.0 和 HTTP/2.0 是超文本传输协议&#xff08;HTTP&#xff09;的三个主要版本 先解释一下什么是超文本协议 超文本传输协议&#xff08;HyperText Transfer Protocol&#xff0c;简称 HTTP&#xff09;是互联网上应用最广泛的一种网络协议。设计 HTTP 的初衷是…

8. 处理异步请求

8. 处理异步请求 1. EnableAsync 注解 要使用 Async&#xff0c;首先需要使用 EnableAsync 注解开启 Spring Boot 中的异步特性。 Configuration EnableAsync public class AppConfig { }更详细的配置说明&#xff0c;可以参考&#xff1a;AsyncConfigurer 2. Async 注解 …

在Ubuntu上安装pycuda记录

1. 安装CUDA Toolkit 11.8 从MZ小师妹的摸索过程来看&#xff0c;其他版本的会有bug&#xff0c;12.0的版本太高&#xff0c;11.5的太低&#xff08;感谢小师妹让我少走弯路&#xff09; 参考网址&#xff1a;CUDA Toolkit 11.8 Downloads | NVIDIA Developer 在命令行输入命…

尝试为ssrf漏洞编写黑名单与白名单

以pikachu靶场ssrf&#xff08;curl&#xff09;为例&#xff1a; 你会发现什么也没防御项访问基本的文件内容&#xff0c;端口开放都是可以看到的&#xff0c;没有任何防御措施。 我们去查看一下他的源码有没有过滤什么 没有任何过滤&#xff0c;咱么尝试进行过滤一下&#xf…

2024美赛数学建模思路 - 案例:粒子群算法

文章目录 1 什么是粒子群算法&#xff1f;2 举个例子3 还是一个例子算法流程算法实现建模资料 # 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 什么是粒子群算法&#xff1f; 粒子群算法&#xff08;Pa…

c++之说_9_5|自定义类型 struct 构造函数

struct 很重要的东西之一 构造函数 struct A { public&#xff1a; A&#xff08;&#xff09;{}&#xff1b;//无参构造函数 你不写 任何构造函数时 也是编译器默认会添加一个无参构造 A&#xff08;int a&#xff09;{}&#xff1b;//有参构造函数 } 构造函数&…

peer eslint-plugin-vue@“^7.0.0“ from @vue/eslint-config-standard@6.1.0

问题&#xff1a; 用vue/cli脚手架安装项目时&#xff0c;选择ESlint&#xff0c;再安装依赖包的时候&#xff0c;会报以下错误&#xff0c; 原因&#xff1a; npmV7 之前的版本遇到依赖冲突时&#xff0c;会忽视冲突&#xff0c;继续安装&#xff1b; npmV7版本开始不再自动忽…

java web servlet 学习系统进度管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java Web学习系统进度管理系统是一套完善的java web信息管理系统 &#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环 境为TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为…

Java设计模式---单例 工厂 代理模式

Java单例模式详解 一、引言 单例模式是设计模式中的一种&#xff0c;属于创建型模式。在软件工程中&#xff0c;单例模式确保一个类只有一个实例&#xff0c;并提供一个全局访问点。这种模式常用于那些需要频繁实例化然后引用&#xff0c;且创建新实例的开销较大的类&#xf…

Vue中$watch()方法和watch属性的区别

vue中$watch()和watch属性都是监听值的变化的&#xff0c;是同一个作用&#xff0c;但是有两个不同写法。 用法一&#xff1a; //注意&#xff1a;这种方法是监听不到对象的变化的。 this.$watch((newVal,oldVal)>{ }) 用法二&#xff1a; watch:{xxx:(newVal,oldVal)>…

NodeJS安装教程

1、 官网下载安装包 可以自己在官网下载 Node.Js中文网 https://nodejs.p2hp.com/ 2、安装步骤 1、双击安装包&#xff0c;一直点击下一步。 2、点击change按钮&#xff0c;更换到自己的指定安装位置&#xff0c;点击下一步&#xff08;不修改默认位置也是可以的 &#xf…