SQL
文章平均质量分 92
七月流火_2567
人的一切痛苦,都是对自己无能的愤怒!
展开
-
hive小文件过多问题解决
起因数据中台当前有一张流水类表,存在3200个分区,230w个数据文件,150亿条数据,导致该表查询起来及其麻烦,更令人糟心的是,业务人员不懂查询方式,经常有人使用select *的方式查询该表,导致hiveserver2经常炸掉,极大影响集群的使用,因此,我们决定处理掉这个问题。我们来看下是什么原因导致这个问题首先,文件数量和大小会影响Mapper任务的数量,所以小文件越多,mapper任务越多,每个mapper任务会启动一个JVM,所以这些任务初始化和运行会消耗大量资源。而且在NameNode中每原创 2021-01-18 21:06:40 · 1595 阅读 · 4 评论 -
Hive 查询结果和insert结果不一致问题排查
Hive 查询结果和insert结果不一致问题排查 1.起因 由于公司业务需要,在做近半年业务数据回补的时候,发现存在部分分区数据不符合业务需要,于是,很想当然的重跑脚本,结果发现该部分数据无法正确过滤; 2.问题描述 在对某张表进行操作的时候,发现where条件后面的 xx is not null 条件不能生效,即 我采用 select的方式能够得到正确的结果,但是,insert时产生的结果却不一致。 3.解决过程 在发现该问题后,首先觉得是is n...原创 2020-06-19 17:15:43 · 3138 阅读 · 7 评论 -
对谓词下推的一点看法
谓词下推 1. 谓词下推概念谓词下推原本是一个关系型数据库中的词语,优化关系 SQL 查询的一项基本技术是,将外层查询块的 WHERE 子句中的谓词移入所包含的较低层查询块(例如视图),从而能够提早进行数据过滤以及有可能更好地利用索引。 2. Hive谓词下推(Predicate pushdown):Hive谓词下推这个词是从关系型数据库借鉴来的,即使对Hive对来说相当于谓词上推。谓词下推的基本思想:尽可能早的处理表达式(expressions),默认产生的执行计...原创 2020-06-11 09:28:30 · 1477 阅读 · 0 评论 -
使用非等值自连接实现类窗口排序函数
前言在使用Hive的时候,我们经常使用窗口函数来实现对查询内容的排序操作,其中经常使用Rank() OVER() ,DENSE_RANK() 等,但是,在mysql中,8.0以下版本并不支持窗口函数的使用,因此,为了实现类似的效果,我们可以使用非等值自连接(真的很实用)来进行查询。数据准备CREATE TABLE Products(name VARCHAR(16) PRIMARY KEY,...原创 2019-03-24 17:48:08 · 239 阅读 · 1 评论 -
mysql一些优化方案
1.合理使用索引 索引是数据库中重要的数据结构,它的根本目的就是为了提高查询效率。现在大多数的数据库产品都采用IBM最先提出的ISAM索引结构。索引的使用要恰到好处,其使用原则如下: ●在经常进行连接,但是没有指定为外键的列上建立索引,而不经常连接的字段则由优化器自动生成索引。 ●在频繁进行排序或分组(即进行groupby或orderby操作)的列上建立索引。 ●在条件...原创 2019-04-23 12:57:41 · 96 阅读 · 0 评论 -
安装redis出错 /bin/sh: cc: command not found
环境CentOS6.5Redis3.2.10过程在安装Redis时,发现报错原因是缺少gcc环境,导致编译出错,应该先安装好gcc环境,再进行编译[root@es02 redis-3.2.10]# yum install -y gcc-c++安装完成gcc环境后,再进行编译[root@es02 redis-3.2.10]# make居然还有问题经过网上各种查询,原来是之...原创 2019-05-02 17:49:42 · 2690 阅读 · 1 评论