- 博客(69)
- 收藏
- 关注
原创 hive 处理字段值为null的函数
expression_n)依次参考各参数表达式,遇到非null值即停止并返回该值。如果所有的表达式都是空值,最终将返回一个空值。使用coalesce在于大部分包含空值的表达式最终将返回空值。它的格式是nvl( string1, replace_with)。它的功能是如果string1为null,则nvl函数返回replace_with的值,否则返回string1的值,如果两个参数都为null ,则返回null。当然还可以使用is null 或者is not null 的语法对null进行筛选和排除。
2022-08-19 11:04:22 2290 1
转载 SQL 性能起飞了!
对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。应尽量避免在 where 子句中对字段进行 null 值判断,创建表时NULL是默认值,但大多数时候应该使用NOT NULL,或者使用一个特殊的值,如0,-1作为默 认值。应尽量避免在 where 子句中使用!=或<>操作符, MySQL只有对以下操作符才使用索引:<,<=,=,>,>=,BETWEEN,IN,以及某些时候的LIKE。关于 MySQ..
2021-02-22 16:15:50 280
转载 什么是自助报表
自助报表大多是面向没有技术开发能力且想要自己在 web 端拖拽做表的业务人员。自助报表具有以下几个特点:1、 快速:比如月底人事部门要根据一些灵活的规则快速统计公司内人员的出勤情况,加班情况。2、 人性化:业务报表的显示内容经常需要变化,灵活适应多变的业务需求3、 简单:因为业务人员不懂技术,所以操作方式必须足够简单如何建自助报表(一):前端交互页面前端应基于 web 方式,以便用户无须安装其他软件,在浏览器端就能够实现维度拖拽、旋转、切片、切块、下钻、自定义指标等操作(二):底层数据建模
2021-02-19 10:08:46 959
转载 维度表,实体表,事实表之间的关系
维度表:维度表可以看成是用户用来分析一个事实的窗口,它里面的数据应该是对事实的各个方面描述,比如时间维度表,它里面的数据就是一些日,周,月,季,年,日期等数据实体表:实体表就是一个实际对象的表,实体表它放的数据一定是一条条客观存在的事物数据,比如说设备 ,它就是客观存在的,所以可以将其设计一个实体表事实表:事实表其实质就是通过各种维度和一些指标值得组合来确定一个事实的,比如通过时间维度,地域组织维度,指标值可以去确定在某时某地的一些指标值怎么样的事实。上面这张图就是设备表的一个实体表设计,它作为一个
2020-11-04 10:47:15 949
原创 hive函数
COALESCE()函数主流数据库系统都支持COALESCE()函数,这个函数主要用来进行空值处理,其参数格式如下:COALESCE ( expression,value1,value2……,valuen)COALESCE()函数的第一个参数expression为待检测的表达式,而其后的参数个数不定。COALESCE()函数将会返回包括expression在内的所有参数中的第一个非空表达式...
2020-10-26 19:27:12 246
原创 脱敏函数相关函数
1】mask (data_string,mask_string,pre_length,post_length)隐藏电话号码,使用mask_string替代data_string 中的字符。保留前面pre_length长度的字符,保留尾部post_length长度的字符。默认mask_string为 *select mask(‘123456’,*,2,3) from system.dual;返回:‘12**456’2】mask_email(data_string,mask_string,pre_len
2020-05-15 16:36:50 1527
原创 复杂类型函数array_contains
array是一个操作符,返回得值是数组例如 array(va1,va2) 返回array类型,创建一个(va1,va2)数组array_contains ,其实contains这个函数是一个检索函数,那么加上array前缀,顾名思义就是数组检索函数。select array_contains(array(va1,va2),va1) from system.dual;返回 ture从上面得例子,可以看出,array_contains检索一个数组中是否包含某个值,如果包含则返回ture,否则返回fal
2020-05-15 08:59:56 5788
原创 add_months函数
add_months函数是对日期月份进行加减的函数介绍:这个函数用于计算s在时间x之上机上Y个月后的时间值,要是Y的值为负数的话就是在 这个时间点之间的时间值(这个时间-Y个月)。案例:以当前时间为准,取上3个月的日期为多少eg:select add_months(sysdate,-3) from system.dual;...
2020-05-14 17:05:40 3366
原创 split切割函数在hive中的应用
split函数是编程语言中使用的一种函数名称,它是指返回一个下标从零开始的一维数组,split函数包含指定数目的子字符串。split 切割函数语法: split(string str, string pat)返回值: array说明: 按照pat字符串分割str,会返回分割后的字符串数组举例:1.基本用法hive> select split(‘abcdef’, ‘c’) from test;[“ab”, “def”]2.截取字符串中的某个值hive> select split
2020-05-14 16:07:02 2278
原创 oracle db2 mysql之排序函数的几种应用
首先大家应该都知道传统数据库他们常用的排序函数是order by那么对于简单的以指定的次序返回排序结果以及按多个字段返回排序结果这些简单的操作应该都很熟悉,今天介绍的是稍微复杂一点的排序1、按字串排序什么是按字串排序,按字串排序就是按照表中某个字段的几个特定位置的字符去排序我们以传统数据库自带的员工表为例现在我们按照员工表的职位字段的最后两个字符排序2、对字母数字混合的数据排序首先数据是这样的data这一列有员工名字和员工姓名,现在要按照名字或者部门去排序3、处理排序空值首先数
2020-05-12 11:28:05 773
原创 【一】hadoop概述
##大数据技术概览###1.1基本特征传统数据 大数据数据量 GB->TB TB->PB以上** 速度** 数据量稳定,增长不快 实时产生处理,年增长率超过60%多样性 结构化数据 结构化、半结构化、非结构化数据价值 统计报表 机器学习、深度学习**大数据:*...
2020-04-10 15:54:42 156
原创 大数据入门介绍及学习所需软硬件安装
大数据入门及软硬件安装###一、什么是大数据定义:大数据(big data),IT行业术语,是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。数据计量单位已从Byte、KB、MB、GB、TB发展到PB、EB、ZB、YB、甚至BB、NB、DB来衡量。大数据时代的采集也不再是技...
2020-03-25 17:02:39 776
原创 数仓之ods与dw的区别
背景知识:在当今这样一个信息技术发展迅速的时代,数据量也在不断的增长,面临这样的压力,总是会有大神提出一些解决方案。比如高层管理人员希望能查看整个公司的发展业绩,数据仓库(Data Warehouse, DW)正是解决该问题的主要方案,随之DW就这样产生了。可是时代在变,需求也会随着改变,比如保险公司的员工希望提高自己的业绩,拿更多的工资,那么他首先希望的就是能把更多的客户挖进来,其实这其中是...
2019-12-27 14:06:41 904
原创 hadoop-不同集群之间数据拷贝
hadoop不同集群之间数据拷贝,拷贝时两个集群要用active namenode去拷贝,datanode是不具备拷贝功能的,所以当我们把数据拿到hdfs路径上时,要去判断当前集群哪个主节点是active的,所以大致步骤为数据落到hdfs上beeline -u jdbc:hive2://158.222.14.103:10000/ln -e “insert overwrite direct...
2019-12-17 10:20:12 688
原创 shell-文件安全与权限
当你创建一个文件的时候,系统保存了有关该文件的全部信息,包括:• 文件的位置。• 文件类型。• 文件长度。• 哪位用户拥有该文件,哪些用户可以访问该文件。• i节点。• 文件的修改时间。• 文件的权限位。一个文件权限由四部分组成(第一个字符) - 普通文件(接下来的三个字符) r w - 文件属主的权限(再接下来的三个字符) r- - 同组用户的权限(最后三个字符)...
2019-12-13 15:17:32 305
原创 shell-scp命令
scp -P 端口 c://xxxx.txt user@ip:/home/root注意:-P 大写-i 公钥1、从服务器上下载文件scp username@servername:/path/filename /var/www/local_dir(本地目录)例如scp root@192.168.0.101:/var/www/test.txt 把192.168.0.101上的/var/w...
2019-12-13 11:30:03 971 1
原创 shell里的 2>&1
重定向echo hello > test.txt 这样控制台就不会输出hello了,而是把输出重定向到test.txt文件中了echo hello >> test.txt >> 是在文件后面追加 > 是覆盖$? 执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)所以要判断程序最后执行是否成功可以用这样的命令i...
2019-12-13 11:21:25 179
原创 oracle-trunc函数
在写存储的时候难免会有一些对时间的处理,今天来介绍一下oracle中对于时间处理的函数to_char将日期转换为特定格式的字符串to_char(sysdate,‘yyyy-mm-dd’)to_char(sysdate,‘yyyymmdd’)to_char(sysdate,‘yyyy’)获取年to_char(sysdate,‘mm’)获取月to_char(sysdate,‘dd...
2019-12-10 10:12:18 389
原创 进制
十进制(最常用进制)满十进一十进制当中一共有十个数字0 1 2 3 4 5 6 7 8 9例子:13144代表有几个11代表有几个103代表有几个1001代表有几个10001000100101二进制满二进一(计算机底层使用的进制)0 1二进制如何计数0 1 10 11 100 101所有数据在计算机底层都是以二进制的形式保存的,计算机只认二进制内存就像一个一个的小格...
2019-12-10 09:34:48 158
原创 Hadoop YARN【一】
YARN三思 ItStar 今天概念YARN是一种新的Hadoop资源管理器,它是一个通用的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。内部组件Client:负责提交应用程序。ResourceManager:全局的资源管理器, 整个集群只有一个, 负责集群资源的统一管理和调度分配。ApplicationMaster:在yarn上运行的应用程......
2019-11-27 19:45:56 245
原创 使用表中的某个字段排序时,当存在null值时,null值总会排在首位
今天在处理一个排序问题时发现,当表字段存在null值时,通过order by null值会被排在首位。原因网上搜了一下关于此问题产生的原因Oracle在Order by 时缺省认为null是最大值,所以如果是ASC升序则排在最后,DESC降序则排在最前解决方法1、nvl函数 将值转换为0 就可以正常比较了2、decode函数 也是可以将null转换为03、coalesce函数 跟nv...
2019-11-26 18:41:49 2361
原创 java基础 数据类型转换
/***展示数据类型转换*@author first*@version 1.0*/public class VariableTest{public static void main(String[] args){//开始程序int i=666;double d;/*这是自动类型转换,没有指定将int转换位double*/d=i;System.out.println(“转换...
2019-10-19 16:50:09 118
原创 java 语法if else
/***条件控制语句 if else 并不是 所有语句都执行,有选择的执行*@author first*@version 1.0*/public class IfElse{public static void main(String[] args){/int c=(a>2?0:1);/int c;int a=1; if (a>2){ c=0; System....
2019-10-19 16:48:56 195
原创 python生态中包含哪些常用程序库
下面是Python生态系统为数据分析师和数据科学家提供的常用程序库。●NumPy:NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))。●SciPy:这是Python的科学计算库,对NumPy的功能进行了大量扩充,同时也有部分功...
2019-10-15 19:16:26 292
原创 shell时间转换
将字符转换为日期in_date=date -d "20190925" "+%Y-%m-%d"当前时间上加减in_date=date +"%Y%m%d" -d "+n days"今天的后n天日期date +"%Y%m%d" -d "-n days" 今天的前n天日期
2019-09-25 11:27:48 955
原创 TDH--cluster模式和local模式
cluster模式,也就是集群模式,这个server模式一般是针对查询性能要求高的。local模式,也就是本地模式,这个一般对查询性能要求不高,一般用来跑批。...
2019-09-20 15:10:05 825 2
原创 报表
定制化报表:(finereport)跟业务确认需求、功能、格式、样式、基本不会变得报表。自助分析报表:(finebi)开发人员把需要的数据包开发好,业务可以自动生成自己需要的报表。...
2019-09-18 10:49:40 422 1
原创 shell--if 语句
一、if语句1、单分支语句结构if <条件表达式>then指令fi例子:if [ -f file ]thenecho “是一个普通文件”elseecho “不是一个普通文件”exit 1fi######说明:如果file是一个普通文件,那么就执行echo “是一个普通文件” 否则 输出一条"不是一个普通文件" 最后退出脚本2、多分支if语句结构if &l...
2019-09-18 09:41:44 147
原创 正则表达式
验证数字的正则表达式集验证数字:1$验证n位的数字:^\d{n}$验证至少n位数字:^\d{n,}$验证m-n位的数字:^\d{m,n}$验证零和非零开头的数字:^(0|[1-9][0-9])$验证有两位小数的正实数:2+(.[0-9]{2})?$验证有1-3位小数的正实数:3+(.[0-9]{1,3})?$验证非零的正整数:^+?[1-9][0-9]$验证非零的负整数:^-[1...
2019-09-17 17:06:16 219
原创 shell 查看文件大小
1、查看某个目录下哪个文件最大du -sh *|grep G2、查看某个目录下文件的大小du -ha xxx.csv3、查看某个目录下所有文件的大小du -ha4、查看所有目录使用空间df -h...
2019-09-12 14:38:01 15806
原创 脱敏函数
/名称和地址脱敏***/REGEXP_REPLACEeg:select regexp_replace(‘XX路1001弄12撞102室’,’\幢’,’’) from system.dual;/电话号码*******/mask(data_string,pre_length,post_length)pre_length 从第一个字符开始算长度post_length 从最后一个字符算长度e...
2019-09-04 10:02:16 1829 1
原创 shell 脚本中用到的判断
f [ 1 -ne 1 ];then…fi-eq:等于-ne:不等于-le:小于等于-ge:大于等于-lt:小于-gt:大于
2019-07-04 11:22:09 1876
原创 javase【三】数据类型转换
数据类型的转换主要是指不同数据类型之间的转换(1)自动类型转换范围小的数据类型值,转换为范围大的数据类型值。byte 转换为 int型byte->short->int->float->double(2)强制数据类型转换范围大的转换为范围小的强制类型转换不会报错,但是精度会发生改变int转换为string 或者 string 转换为intstring 2....
2019-07-01 19:46:16 115
原创 oracle 终止expdp任务
1、expdp执行导出操作,然后按ctr + c + exit 退出2、ps -ef |grep expdp ----查看进程已经不存在了这样任务其实并没有停掉,dmp文件数据还在增加3、查看视图dba_datapump_jobsselect job_name,state from dba_datapump_jobs;4、正确停止expdp导出任务使用stop_jobctr+c 进......
2019-06-28 10:23:02 6447
原创 Hadoop HDFS master-slave机制 【二】
hadoop 的hdfs分布式文件系统,namenode采用了master-slave机制,什么是master-slave机制下面做一个简单的介绍master-slave 称作主从设备模式,核心思想是基于分而治的思想,将一个原始任务分解成多个语义相同的子任务,并由专门的线程来执行这些任务。最终的结果是通过整合各个子任务得出的。主要的使用场景有并行计算,以提升计算性能容错处理,以提升计算的可......
2019-06-25 23:30:13 1465
原创 javase 【三】
1、java程序需要首先完成:(1)java 源文件,.java结尾的文件(2)编译生成字节码文件,.class结尾的文件 很多编码 二进制组成的文件(3)将字节码文件 编译器 (compiler)JVM能够识别和运行文件首先编写java源文件 --》编译生成.class文件–》最后JVM运行2、DOS常见命令dir:列出当前目录下的文件及文件夹换盘:直接输入盘符:例如 切换到D盘...
2019-06-16 21:20:48 226
原创 Hadoop Kafka 常见问题 【一】
Kafka*broker:server;topic:消息贴标签组成一类 分类的过程,同一类,方便处理,有了topic就可以隔离其他类数据,他是一个逻辑概念;partiion:物理概念要落盘 不可更改只读,一个topic多个分区,一个分区一个目录,一个分区代表一个文件夹 一个分区多个副本 放在不同的broker上;zk:broker的负载均衡,leader的选举,元数据存储,CG之间的r......
2019-06-14 11:13:38 437
原创 Hadoop Flume 常见问题 【一】
Flume*1.数据流模式:source—channel(可以缓存)—sink2.事务机制:支持重读重写3.agent:jvm的运行单元,将外部数据送到目的地,内涵一个数据流,以event作为数据单元进行传输4.1个souece对应多个channel,1channel对应1个sink5.flume单层架构(数据暴露,安全性差,产生许多小文件),多层架构(安全但是复杂)......
2019-06-14 11:11:30 347
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人