hive执行select count(1)返回0

背景:

   做数据质量检核任务的时候,有些数据表有数据,直接查hive执行select count(1) from table返回的值一直是0

问题原因:

   hive通过select count(1)或者select count(*) 查询的是元数据库里面的rownum,如果数据表数据是通过load、put等方式加载进去的,元数据库里面的rownum没有收集统计信息,导致数据不对。

解决:

1、hive部署的时候,开启统计功能

hive.compute.query.using.stats:该属性的默认值为false。如果设置为true,Hive在执行某些查询时,例如select count(1),只利用元数据存储中保存的状态信息返回结果。为了收集基本状态信息,需要将hive.stats.autogather属性配置为true。为了收集更多的状态信息,需要运行analyzetable查询命令。

设置

hive.stats.autogather = true

2、临时方案

方案一:

使用analyze table来执行统计过程,datax或者flinkx同步数据,最后需要执行这个

ANALYZE TABLE tableName  COMPUTE  STATISTICS;  

这个也不是永久生效,如果执行之后,又put或者load数据量还是不对,还要再次执行这个sql

方案二:

窗口级别生效

set hive.compute.query.using.stats=false;
select count(1)  from tableName;

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

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

相关文章

使用Django的admin功能管理数据_vscode

之前的文章 项目 hello_django, app名 hello,已有的model LogMessage: https://blog.csdn.net/weixin_44741835/article/details/136202771?spm1001.2014.3001.5502 参考得到电子书:第八章。 https://www.dedao.cn/ebook/reader?idrEQKv6…

linux系统-----------搭建LNMP 架构

PHP(Hypertext Preprocessor 超文本预处理器)是通用服务器端脚本编程语言,主要用于web开发实现动态web页面,也是最早实现将脚本嵌入HTML源码文档中的服务器端脚本语言之一。同时,php还提供了一个命令行接口,因此,其也可…

能在手机上运行,仅仅0.5B大小的小语言模型MobiLlama

模型介绍 该模型基于LLaMA-7B架构设计,旨在能够在边缘设备上高效运行,无需将数据发送到远程服务器或云端处理。如智能手机、平板电脑、智能手表等。MobiLlama模型虽然体积小、对资源的需求低,但仍能提供高精度的语言理解和生成能力。项目还提…

java 通过 microsoft graph 调用outlook

废话不多说 一 官方文档 先看一下官方文档,https://learn.microsoft.com/zh-cn/graph/tutorials/java?contextoutlook%2Fcontext&tabsaad&tutorial-step1 其中的代码,可以通过地址下载:https://developer.microsoft.com/en-us/gra…

NutUI + taro +vue 开发遇到的问题 使用popup组件 内部元素滚动遇到的的问题

1 popup 弹出内容时 弹出的框内元素数据很长需要滚动时 本地可以正常滚动 打包成小程序后无法滚动 如这样的免责条款内容 代码如下 解决办法 1 把2处的单位换成百分比 弹框能滚动但是 是popup 里面所有的元素都一起滚动 导致标题都滚走了 2 scroll-y 改成: :scrol…

单片机05__串口USART通信__按键控制向上位机传输字符串

串口USART通信 通用UART介绍 1.通信的概念 计算机与外界进行信息交换的过程称之为通信。 在通信的过程中,通信双方都需要遵守的规则称之为通信协议。 硬件协议:将数据以什么样的方式传输过去 软件协议:将数据以什么样的顺序传输过去 2.常用…

Android 通知--判断通知是否有跳转

一. 从应用层来分析 在 Android 中,可以通过 PendingIntent 来实现有跳转的通知和没有跳转的通知的区别。具体来说,有跳转的通知会设置一个 PendingIntent,当用户点击通知时会触发该 PendingIntent,打开指定的界面或执行特…

C++ 高级面试题:解释 C++ 中的抽象基类和纯虚函数

解释 C 中的抽象基类和纯虚函数 在C中,抽象基类和纯虚函数是面向对象编程中的重要概念,用于实现多态性和接口规范。它们通常与继承和多态结合使用,以实现接口的统一定义和派生类的不同实现。 抽象基类(Abstract Base Class&…

SpringBoot-集成Elasticsearch

依赖 <dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.62</version> </dependency> <dependency><groupId>org.springframework.boot</groupId><artifactId…

微服务之qiankun主项目+子项目搭建

主项目使用history&#xff0c;子项目使用hash模式 1. 下载安装"qiankun": "^2.10.13"2. 手动调用qiankun,使用vue脚手架搭建的项目1. 主项目配置&#xff08;我使用的是手动调用乾坤&#xff0c;在指定页面显示内容&#xff09;1. 要使用的页面中引入乾坤…

MyBatis概述

三层架构 表现层&#xff1a;直接和前端交互&#xff0c;接受AJAX请求&#xff0c;返回json数据业务层&#xff1a;一是处理前端的请求&#xff0c;二是返回持久层获取的数据持久层(数据访问层)&#xff1a;直接操作数据库&#xff0c;完成CRUD&#xff0c;返回数据给业务层 …

李沐动手学习深度学习——3.2练习

以下是个人理解&#xff0c;希望进行讨论求解。 练习 1. 如果我们将权重初始化为零&#xff0c;会发生什么。算法仍然有效吗&#xff1f; 根据SGD算法公式如上&#xff0c;第一次迭代的值可知w只与b相关&#xff0c;而对于b的迭代更新&#xff0c;只是与b的初始值相关&#x…

docker中hyperf项目配置虚拟域名

在使用hyperf框架时&#xff0c;直接用了docker环境进行开发 下载镜像运行容器 docker run --name hyperf -v /data/project:/data/project -p 9501:9501 -itd -w /data/project --privileged -u root --entrypoint /bin/sh 镜像ID配置docker-compose.yml version: "3.…

也谈AIGC和ChatGPT的区别?

AIGC 和 ChatGPT 的区别 定义 AIGC (人工智能生成内容)&#xff1a;一种人工智能技术&#xff0c;用于生成类似人类的文本、图像、音频和视频等内容。ChatGPT&#xff1a;OpenAI 开发的大型语言模型&#xff0c;是 AIGC 的一种具体实现。 目的 AIGC&#xff1a;广泛用于内容…

亚马逊自养号测评:如何安全搭建环境,有效规避风险

要在亚马逊上进行自养号测评&#xff0c;构建一个真实的国外环境至关重要。这包括模拟国外的服务器、IP地址、浏览器环境&#xff0c;甚至支付方式&#xff0c;以创建一个完整的国际操作环境。这样的环境能让我们自由注册、养号并下单&#xff0c;确保所有操作均符合国际规范。…

Gin 框架简单上手

引言 Gin 是一个基于 Go 语言的 Web 框架&#xff0c;旨在提供高性能和高效的方式来构建 Web 应用程序。它简单易用&#xff0c;同时又提供了丰富的功能和灵活的扩展性。本文将带你深入学习 Gin 框架&#xff0c;从安装开始&#xff0c;逐步深入探索其各项功能&#xff0c;包括…

企业级指针仪表读数YOLOV8NANO

企业级指针仪表读数&#xff0c;采用YOLOV8NANO训练&#xff0c;检测表盘和表芯&#xff0c;得到PT模型&#xff0c;然后转换ONNX&#xff0c;让OPENCV调用。然后提取表芯区域&#xff0c;通过极坐标转换为直角坐标&#xff0c;再通过检测指针和刻度&#xff0c;换算成比例&…

Chapter 8 - 19. Congestion Management in TCP Storage Networks

Queue Depth Monitoring and Microburst Detection Queue depth monitoring and microburst detection capture the events that may cause congestion at a lower granularity but are unnoticed by other means due to long polling intervals. 队列深度监控和微爆检测可捕捉…

Ubuntu 安装 Android Studio

一. 步骤 通过以上步骤&#xff0c;可以在 Ubuntu 上成功安装 Android Studio&#xff0c;并开始进行 Android 应用程序的开发。 打开终端&#xff08;Terminal&#xff09;。 首先&#xff0c;确保你已经安装了 Java 开发工具包&#xff08;JDK&#xff09;。Android Studio …

notejs+nvm+angular+typescript.js环境 Hertzbeat 配置

D:\Program Files\nodejs\ D:\Users\Administrator\AppData\Roaming\nvm nvm命令提示 nvm arch&#xff1a;显示node是运行在32位还是64位。 nvm install <version> [arch] &#xff1a;安装node&#xff0c; version是特定版本也可以是最新稳定版本latest。 可选参…