自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 hive 列转行和行转列

那么用explode()函数就不能实现了,可以用posexplode()函数,因为该函数可以将index和数据都取出来,explode(map)将map里的每一对元素作为一行,其中key为一列,value\。4.但是不能在只查询源表的时候,既想返回源表字段又想返回explode生成的虚拟表字段。对一列进行炸裂可以使用 explode()函数,但是如果想实现对两列都进行多行转换,2.explode函数执行返回的结果可以理解为一张虚拟的表,起数据来源于表。1.explode函数属于UDTF函数,既表生成函数。

2024-05-14 17:10:02 652

原创 Hive中的表类型

hive中的表类型hive中是有多种表类型的,可以分为四种:内部表,外部表,分区表,桶表内部表内部表是hive默认表类型,表数据默认存储在warehouse目录中,在加载数据的过程中,实际数据会被移动到warehouse目录中,当删除表时,表的数据和元数据将会被同时删除外部表建表语句中包含external 的表叫外部表,外部表在加载数据的时候,实际数据并不会移动到warehouse目录中,只是与外部数据建立一个链接(映射关系),数据只是表对hdfs上的某一个目录的引用而已,当删除表定义的时候,数据

2021-06-15 17:55:10 2912 1

原创 Hive VS Mysql

hive 和mysql的对比项目hivemysql数据存储位置HDFS本地磁盘数据格式用户定义系统决定数据更新不支持支持索引有,但较弱,一般很少用有,经常使用的执行MapReduceExecutor执行延迟高低可扩展性高低数据规模大小数据库 VS 数据仓库数据库:传统的关系型数据库主要应用在事务处理,例如银行交易之类的场景,数据库支持增删改查这些常见的操作。数据仓库:主要做一些复杂的分析操作,侧重决策

2021-06-15 11:22:39 149 1

原创 Flume学习笔记

什么是FlumeFlume是一个高可用,高可靠,分布式的海量日志采集,聚合和传输的系统,能够有效的收集,聚合,移动大量的日志数据。简单的说Flume是一个很靠谱,很方便,很强的日志采集工具。它的特点是不需要写代码,就可以进行工作。如下图,这个属于Flume的典型应用场景,使用Flume采集数据,最终存储到HDFS上。左边的web server表示是一个web项目,web项目会产生日志数据,通过中间的Agent把日志数据采集到HDFS中。其中这个Agent就是我们使用Flume启动的一个代理,它是一个

2021-06-08 14:01:28 209

原创 逻辑回归LR

逻辑回归概述分类技术是机器学习和数据挖掘应用中的重要组成部分。在数据科学中,大部分的问题属于分类问题。解决分类的算法也有很多种。如:KNN,使距离计算来实现分类;决策树,通过构建直观易懂的树来实现分类。这里我们要展开的是Logistic回归,这是一种很常见的用来解决二元分类问题的回归方法,它主要是通过寻找最优参数来正确地分类原始数据。基本原理逻辑回归(Logistic Regression,简称LR),其实是一个很有误导性的概念,虽然它的名字中带有“回归”两个字,但是它最擅长处理的却是分类问题。LR

2021-05-29 17:42:36 376

原创 mysql中where,having ,on 的区别

区别过滤方式特点wherewhere进行分组前的过滤;where后面不能写聚合函数havinghaving 是分组后的过滤;having后面可以写聚合函数mysql简单查询执行顺序from–> where–> group by --> having --> select --> order by案例--查询平均薪资大于6000的部门名称不为null的部门,需要在分组后再次进行过滤,使用havingselect dept_name

2021-05-28 15:40:38 704

原创 Linux 文件系统目录结构

Linux 文件系统目录含义Linux 文件系统和Windows 文件系统有一些区别,它没有分盘,只有一个最大的目录,称之为根目录,用/ 表示,根目录下面会有很多子目录,不同子目录有不同的含义,存放不同类型的文件信息。bin 存放二进制可执行文件(ls,cat,mkdir等)boot 存放用于系统引导时使用的各种文件dev 存放设备文件etc 存放系统配置文件home 存放所有用户文件的根目录lib 存放跟文件系统中的程序运行所需要的共享库及内核模块proc 虚拟文件系统,存放当前内存的

2021-05-21 16:07:35 45

原创 HDFS的常见Shell操作

HDFS介绍设计思想:用户请求查看数据时候会请求主节点,主节点上面会维护所有数据的存储信息,主节点会把对应数据所在的节点信息返回给用户,然后用户根据数据所在的节点信息去对应的节点去读取数据,这样压力就不会全部在主节点上面。HDFS是一种适合大文件存储的分布式文件系统,不适合小文件存储,例如,几KB,几M的文件都可以认为是小文件。hdfs shell 格式如下,url一串内容可以省略,因为hdfs在执行的时候会根据HDOOP_HOME自动识别配置文件中的fs.defaultFS属性。HDFS基础操作

2021-05-19 17:37:35 91

原创 什么是hadoop

什么是Hadoophadoop是一个适合海量数据的分布式存储和分布式计算的框架。分布式存储,可以简单理解为存储数据的时候,数据不只存在一台机器上面,它会存在多台机器上面。分布式计算简单理解,就是由很多台机器并行处理数据。Hadoop三大核心组件介绍Hadoop主要包含三大组件:HDPS+MapReduce+YARN。HDFS负责海量数据分布式存储YARN主要负责集群资源的管理和调度MapReduce是一个计算模型,负责海量数据的分布式计算Hadoop客户端节点在实际工作中不建议直接

2021-05-18 14:11:40 4481

原创 了解数据仓库

数据仓库什么是数据仓库数据仓库(Data Warehouse)是一个面向主题的、集成的、稳定的且随时间变化的数据集合,用于支持管理人员的决策基础知识事实表事实表是指保存了大量业务数据的表,或者说保存了一些真实的行为数据的表。例如:销售商品所产生的订单数据。维度表维度指的就是一个对象的属性或者特征,例如:时间维度,地理区域维度,年龄维度这是维度的概念。维度表里面存放的其实就是刚才所说的那些维度相关的信息。例如:商品表。数据库三范式第一范式(1NF):数据库表的每一列都是不可分割的原

2021-05-17 15:53:43 324

原创 linux 拆分路径和文件名

1.basename 返回最后一个目录或者文件名basename /usr/bin/sort #output sortbasename include/stdio.h #output sort.hbasename include/stdio.h .h #output sort2.dirpath 返回路径dirname /usr/bin/sort #output "/usr/bin".dirname stdio.h #output ".".3.readlink 用来找

2021-02-07 16:06:42 797 1

原创 git与github的使用

推送分支到githubgit push origin 分支名称本地分支跟踪服务器分支git branch --set-upstream-to=origin/远程分支名称 本地分支名称git branch --set-upstream-to=origin/g ggit push # 推送代码设置远程跟踪以后 本地分支就可以付服务器分支进行比较,然后使用git push 来提交到服务器分支从远程分支拉取代码git pull origin 分支名称各分支的作用master分支

2020-12-26 12:27:20 82

原创 git分支

创建分支git branch # 查看所有分支git checkout -b dev # 创建一个dev分支 并将HEAD指针移到dev切换分支git checkout master # HEAD 指向master分支切换合并删除分支删除分支也就是把分支dev 的指针删掉解决冲突当master 和 dev 都有 提交时,会有冲突,需要解决冲突后,重新进行提交没有冲突但是不能快速合并的情况当两个分支都有提交,但是不是对同一个文件进行修改,合并时不会产生冲突,但是会跳出

2020-12-25 19:11:53 80

原创 git基本操作

1.创建版本仓库git init创建一个文件夹,在文件夹里面创建版本仓库,文件夹里面会生成一个.git 的隐藏文件夹,这就是版本库目录2.版本创建git add # 添加到暂存区git commit # 把暂存区的所有内容提交到当前分支当文件被修改时,需要再次add 和commit3.查看版本记录git log # 查看版本记录git log --pretty=oneline # 简短查看版本记录4.版本回退git中用HEAD来表示当前所在的版本号,HEAD^

2020-12-25 16:17:48 53

原创 python深拷贝和浅拷贝

浅拷贝:拷贝引用a = 1 # a指向存储1的内存空间b = a # b指向a指向的存储空间id(a) == id(b) # True id()用于获取对象的内存地址a = 2 # a指向的内存地址改变id(a) == id(b) # Falseprint(b) # b还是等于1 b在a改变之前已经指向了 1,不会因为a的指向改变而改变a = [1, 2, 3]b = aid(a) == id(b)a.append(4) # 此时并不是改变指向,只是添加了4,与重新赋值不

2020-12-18 14:33:58 66

转载 hive动态分区

hive动态分区set hive.exec.dynamic.partition=true;set hive.exec.dynamic.partition.mode=nonstrict;插入报错:Hive Runtime Error: Unable to deserialize reduce input key from x1x49x0x1x49x0x1x104x116x116x112x58x47x47x98x106x46x53x105x53x106x46x99x111x109x47x0x1x128x

2020-11-03 15:43:35 152

转载 hive split 函数

hive字符串分割函数split(str, regex) - Splits str around occurances that match regexTime taken: 0.769 seconds, Fetched: 1 row(s)返回值为一个数组a.基本用法:例1:split(‘a,b,c,d’,’,’)得到的结果:[“a”,“b”,“c”,“d”]b.截取字符串中的某个值:当然,我们也可以指定取结果数组中的某一项例2:split(‘a,b,c,d’,’,’)[0]得到的

2020-09-27 09:37:09 21687

原创 linux中去掉^M

Unix 系统里,每行结尾只有“<换行>”,即“\n”;Windows系统里面,每行结尾是“<回车><换行>”,即“\r\n”;Mac系统里,每行结尾是“<回车>”,即“\r”。可以直接使用dos2unix filename转换成unix格式...

2020-09-27 09:31:19 73

原创 一些学习sql的网站

SQLZOO网址SQLBolt网址XUESQL网址SQL Fiddle网址leetcode中文网址 英文网址

2020-09-03 10:56:00 296

原创 tar 打包和压缩

tar 可用于打包和解包-c 创建一个新的打包文件-x 解包-f 是必选参数 指定要操作的文件名-z 可以先打包在自动调用gzip压缩-j 调用bzip2 压缩 tar -cf 打包 tar -xf 解包 tar -zxf 解压 tar -zcf 压缩成 tar.gz tar -jcf 压缩成 tar.bz2 tar -jxf 解压...

2020-09-02 17:19:44 306

原创 mysql 和 hive在指定位置添加字段

hive里添加字段到指定位置不能一步到位,需要分两步,先添加字段,再移动字段到指定位置,如下alter table tmp add columns (cl_name string comment 'co_name'); --添加在最后alter table tmp change cl_name cl_name string after cl_name0 ; -- 移动到指定位置,cl_name0字段的后面alter table tmp change cl_name cl_name string fi

2020-09-01 15:16:12 875 3

原创 mysql窗口函数

专用的窗口函数CUME_DIST()CUME_DIST() OVER (PARTITION BY expr, …ORDER BY expr [ASC | DESC], …)计算公式是:ROW_NUMBER() / total_rows示例:在这里插入代码片ROW_NUMBER() / total_rows3. DENSE_RANK()4. FIRST_VALUE() 和 LAST_VALUE()5. LAG() 和 LEAD()6. NTH_VALUE()7. N

2020-08-14 15:35:33 1337 2

原创 软链接和硬链接

ln 建立连接软链接和硬链接ln old new 硬链接 new和old指向同一个内存空间 删除old不会影响new链接ln -s old new 软链接 new指向old 当old删除 会影响new链接

2020-08-12 16:48:22 62

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除