自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

菲比之屋

菜鸟进阶

  • 博客(31)
  • 收藏
  • 关注

原创 spark之map和flatmap的区别

map()将函数作用于RDD中的每个元素,返回值构成新的RDDflatmap()将函数应用于RDD中的每个元素,返回的迭代器的所有内容构成新的RDD,得到一个由各列表中的元素组成的RDD,而不是一个列表组成的RDD。...

2020-06-19 11:36:46 247

原创 python之datetime模块

1,获取当天date time = datetime.date.today() print time #输出结果为:2018-01-112,获取当前datetime time = datetime.datetime.now() print time #输出如下日期-时间(精确到微秒,小数点后6位) 2018-01-11 20:19:34.79...

2019-11-14 15:20:26 123

原创 pandas中pd.read_excel()方法中的converters参数

用pandas的pd.read_excel()方法读取excel文件时,遇到某一列的数据前面包含0(如010101)的时候,pd.read_excel()方法返回的DataFrame会将这一列视为int类型,即010101变成10101,这种情况下,如果想要保持数据的完整性,可以以str类型来读取这一列df = pd.read_excel ("test.xlsx" , converters=...

2019-11-14 15:00:34 10450

原创 python创建面向对象

class Role: def __init__(self,age,gender): print("创建一个Role的实例...") self.age=age self.gender=gender def running(self): print("run...

2019-11-12 17:46:18 118

原创 python操作数据库

import pymysqlmydb=pymysql.connect("192.168.0.0","xxx","xxx","mydb")mycursor=mydb.cursor()sql=""" CREATE TABLE student ( student_id int, student_name varchar(100), ...

2019-11-12 14:04:45 62

原创 mysql的坑之 “正负号”

在设计mysql表结构的时候,对于指标计算等数值型的字段,需要特别注意不要勾选“无符号”的选项,让正负号能够正常显示出来,如果已上线,则需要在正式环境对表结构做修改,在inception提脚本如:alter table dm_integrated_board modify column `value1` int(10) DEFAULT NULL COMMENT '指标数值';...

2019-10-17 18:36:42 2080 1

原创 union all时数据出不来

union all时需要特别注意数据格式,数据出不来很可能是数据格式前后不一致,可考虑把int类型统一转化成string类型如:cast(round(sum(sale_amount),1) as string) as data2...

2019-10-08 13:23:39 2518

原创 sql查询今天/昨天/7天/30天的数据

今天的所有数据:select * from表名where DateDiff(dd,datetime类型字段,getdate())=0昨天的所有数据:select * from表名where DateDiff(dd,datetime类型字段,getdate())=17天内的所有数据:select * from表名where DateDiff(dd,datetime类型字段,get...

2019-09-11 17:22:11 5533 1

原创 mysql之key/value表的设计

create table dm.dm_shop_assess(id int(10) unsigned NOT NULL AUTO_INCREMENT comment '自增id',key1 varchar(50) comment '统计类别,如性别中的(男,女)',--{汇总类别}label varchar(50) comment '数据类别,如性别,年龄等',value1 varcha...

2019-09-04 10:58:13 2496

原创 sql语句中的where 1=1

1=1 永真, 1<>1 永假1<>1 的用处:用于只取结构不取数据的场合例如:create table table_temp tablespace tbs_temp asselect * from table_ori where 1<>1建成一个与table_ori 结构相同的表table_temp,但是不要table_ori 里的数据...

2019-08-28 11:30:31 1094

原创 文件存储格式

Hive支持的存储数的格式主要有:TEXTFILE、SEQUENCEFILE、ORC、PARQUET1.行存储的特点查询满足条件的一整行数据的时候,列存储则需要去每个聚集的字段找到对应的每个列的值,行存储只需要找到其中一个值,其余的值都在相邻地方,所以此时行存储查询的速度更快。2.列存储的特点因为每个字段的数据聚集存储,在查询只需要少数几个字段的时候,能大大减少读取的数据量;每个...

2019-08-11 21:27:50 308

原创 Rank

1,函数说明RANK() 排序相同时会重复,总数不会变DENSE_RANK() 排序相同时会重复,总数会减少ROW_NUMBER() 会根据顺序计算2,数据准备 name subject score 孙悟空 语文 87 孙悟空 ...

2019-08-11 21:15:07 261

原创 窗口函数

1.相关函数说明OVER():指定分析函数工作的数据窗口大小,这个数据窗口大小可能会随着行的变而变化CURRENT ROW:当前行n PRECEDING:往前n行数据n FOLLOWING:往后n行数据UNBOUNDED:起点,UNBOUNDED PRECEDING 表示从前面的起点, UNBOUNDED FOLLOWING表示到后面的终点LAG(col,n):往前第n行数...

2019-08-11 20:41:58 121

原创 列转行

1,函数说明EXPLODE(col):将hive一列中复杂的array或者map结构拆分成多行。LATERAL VIEW 用法:LATERAL VIEW udtf(expression) tableAlias AS columnAlias 解释:用于和split, explode等UDTF一起使用,它能够将一列数据拆成多行数据,在此基础上可以对拆...

2019-08-11 19:16:43 1728

原创 行转列

1.相关函数说明 CONCAT(string A/col, string B/col…):返回输入字符串连接后的结果,支持任意个输入字符串; CONCAT_WS(separator, str1, str2,...):它是一个特殊形式的 CONCAT()。第一个参数剩余参数间的分隔符。分隔符可以是与剩余参数一样的字符串。如果分隔符是 NULL,返回值也将为 NULL。这个函数...

2019-08-11 19:06:32 2005 1

原创 空字段赋值

NVL:给值为NULL的数据赋值,它的格式是NVL( string1, replace_with)。它的功能是如果string1为NULL,则NVL函数返回replace_with的值,否则返回string1的值,如果两个参数都为NULL ,则返回NULL。例如:如果员工的comm为NULL,则用-1代替 select nvl(comm,-1) from emp; ...

2019-08-11 18:32:50 580

原创 排序

1,全局排序(Order By) Order By:全局排序,一个Reducer2,按照别名排序 按照员工薪水的2倍排序:select ename, sal*2 twosal from emp order by twosal;3,多个列排序 按照部门和工资升序排序:select ename, deptno, sal from emp order b...

2019-08-11 18:26:09 79

原创 表的连接

1,内连接:只有进行连接的两个表中都存在与连接条件相匹配的数据才会被保留下来 select e.empno, e.ename, d.deptno from emp ejoin dept d on e.deptno= d.deptno;2,左外连接:JOIN操作符左边表中符合WHERE子句的所有记录将会被返回 select e.empno, e.ename, d...

2019-08-11 18:04:07 69

原创 having与where不同点

1,where针对表中的列发挥作用,查询数据;having针对查询结果中的列发挥作用,筛选数据2,where后面不能写分组函数,而having后面可以使用分组函数3,having只用于group by 分组统计语句...

2019-08-11 17:58:22 300

原创 RDD和DataFrame

DataFrame是一个分布式的Table,形式如下:Name Age Tel String Int Long String Int Long String Int Long String Int Long String Int Long String Int Long String...

2019-08-10 18:57:40 101

原创 Spark的transformation算子

1)map(func):返回一个新的RDD,该RDD由每一个输入元素经过func函数转换后组成.2)mapPartitions(func):类似于map,但独立地在RDD的每一个分片上运行,因此在类型为T的RD上运行时,func的函数类型必须是Iterator[T] => Iterator[U]。假设有N个元素,有M个分区,那么map的函数的将被调用N次,而mapPartitions被调...

2019-08-05 00:35:16 153

原创 Kafka消息数据积压,Kafka消费能力不足怎么处理?

1)如果是Kafka消费能力不足,则可以考虑增加Topic的分区数,并且同时提升消费组的消费者数量,消费者数=分区数。(两者缺一不可)2)如果是下游的数据处理不及时:提高每批次拉取的数量。批次拉取数据过少(拉取数据/处理时间<生产速度),使处理的数据小于生产的数据,也会造成数据积压。...

2019-08-04 21:42:00 18133 1

原创 Flume相关总结

1. Flume组成,Put事务,Take事务1)Flume组成,Put事务,Take事务Taildir Source:断点续传、多目录。Flume1.6以前需要自己自定义Source记录每次读取文件位置,实现断点续传。 File Channel:数据存储在磁盘,宕机数据可以保存。但是传输速率慢。适合对数据传输可靠性要求高的场景,比如,金融行业。...

2019-08-04 21:34:55 175

原创 Hadoop宕机

1)如果MR造成系统宕机。此时要控制Yarn同时运行的任务数,和每个任务申请的最大内存。调整参数:yarn.scheduler.maximum-allocation-mb(单个任务可申请的最多物理内存量,默认是8192MB)2)如果写入文件过量造成NameNode宕机。那么调高Kafka的存储大小,控制从Kafka到HDFS的写入速度。高峰期的时候用Kafka进行缓存,高峰期过去数据同步会自动...

2019-08-04 21:22:05 667 1

原创 Hadoop优化

Hadoop优化0)HDFS小文件影响(1)影响NameNode的寿命,因为文件元数据存储在NameNode的内存中(2)影响计算引擎的任务数量,比如每个小的文件都会生成一个Map任务1)数据输入小文件处理:(1)合并小文件:对小文件进行归档(Har)、自定义Inputformat将小文件存储成SequenceFile文件。(2)采用ConbinFileInputForma...

2019-08-04 21:15:35 102

原创 数据倾斜问题

数据倾斜1 空值数据倾斜场景:如日志中,常会有信息丢失的问题,比如全网日志中的user_id,如果取其中的user_id和bmw_users关联,会碰到数据倾斜的问题。解决方法1: user_id为空的不参与关联Select * From log aJoin bmw_users bOn a.user_id is not nullAnd a.user_id = b.use...

2019-08-03 18:11:42 122

原创 自定义函数

UDF:作用于单行数据并输出单行数据,大多数函数都属于这一类UDAF:作用于多行,输出一行,例如count、maxUDTA:作用于一行输出多行,例如exploadHive UDF编写过程:(1)继承org.apache.hadoop.hive.ql.UDF(2)需要实现evaluate函数;evaluate函数支持重载;(3)在hive的命令行窗口创建函数...

2019-08-03 09:06:28 79

原创 hive开窗函数总结

1,sum()函数select cookieid,createtime,pv,sum(pv) over(PARTITION BY cookieid ORDER BY createtime) as pv1FROM test1;select cookieid,createtime,pv,sum(pv) over(PARTITION BY cookieid) as pv1FR...

2019-05-17 18:00:22 5207 1

转载 sftp常用命令

mget *.c --批量下载文件quit --退出ls --查看远程目录文件cd --改变远程目录路径lls --查看本地目录文件lcd --改变本地目录路径put --将本地文件上传到远程目录get --下载远程目录文件到本地...

2019-05-16 17:19:51 2847

原创 hive查询时怎么显示字段名

进入hive cli后: set hive.cli.print.header=true;此时显示的字段名带表名,可读性很差,继续在hive cli中: set hive.resultset.use.unique.column.names=false;...

2019-05-15 15:10:53 4270 1

原创 为什么在mysql数据库中show tables之前要先use hive?

因为mysql中存储的是hive的元数据

2019-02-21 16:38:38 1756

空空如也

空空如也

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

TA关注的人

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