- 博客(93)
- 收藏
- 关注
原创 mysql导入hive分区表
#yesterday=`date -d "1 days ago" +%Y-%m-%d`yesterday=`date -d "@$(($(date +%s)- 86400))" '+%Y-%m-%d'`today=`date -d "@$(($(date +%s)))" '+%Y-%m-%d'`sqoop import \--connect jdbc:mysql://主机:3306/表 \--username 用户名\--password 密码\--query "select line1,
2021-10-12 17:54:14
316
原创 hive求近三个月数据的平均环比值
计算公式:(L1汇总金额 / L2汇总金额 + L2汇总金额 / L3汇总金额+ L3汇总金额 / L4汇总金额) / N;N为近3个月实际有交易月份数,若某月为空会跳过该月和下月计算,例如L2月份没有数据,则计算公式就为:(L1汇总金额 / L3汇总金额+ L3汇总金额 / L4汇总金额) / 2。以此类推,若没有数据默认为-999999,若只有一个月数据则为999999
2021-07-05 16:19:39
1402
原创 hive求用户每月的分位数
背景:用户每月的交易金额总数 / 每月的交易金额中位数(按照用户每月汇总后的金额)hive当中有两个函数可求中位数,percentile和percentile_approx。下面分别介绍:percentile:percentile(col, p) col是要计算的列(值必须为int类型),p的取值为0-1,若为0.5,那么就是2分位数,即中位数。percentile_approx:percentile_approx(col, p)。列为数值类型都可以。但是percentile计算的结果是精准的,而
2021-07-02 15:24:20
1046
原创 hive求算最大连续未交易天数
可能在工作中碰到最多的是连续交易天数,不过现实中我确实遇到了这个类似的需求,由于工作保密性,不展示原有的需求首先对交易表中对用户id和交易日期进行去重处理,因为一个人,可以在一天多次交易,同时当做子查询,在这里使用临时表with tmp1 as selectid,bill_datefrom tab1group by id,bill_date按照id分组,按照日期升序排序,在使用lag开窗函数(LAG(col,n,DEFAULT) 用于统计窗口内往上第n行值第一个参数为列名,第二个参数为往
2021-06-30 16:35:43
546
原创 hive报错:Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
初看特别高大上,实际上自己犯了个挺弱智的错误,就是字段类型判断出错,但是hive的日志报错并没有显示出来,就是一个decimal类型的字段,在判断中使用了line1 <> ''这样的判断,导致我耽误挺长时间的,告诫各位,一定要细心,切勿因为一点小错,造成时间浪费。其他导致这个报错信息的原因,仅看hive的报错信息是看不出来的,要去看yarn日志上的,根据任务id去查询...
2021-06-28 11:02:33
4261
原创 mysql迁移数据和表结构到pgsql所出现的问题
由于生产需要,mysql存储不下大数据量,故而将数据及表结构迁入pgsql,记录这一阶段所出现的问题及解决方案
2021-03-01 20:04:37
727
原创 Linux执行 wget命令:提示command not found,同时yum没有配置阿里云的yum源
场景:yum源一开始配置的是本地,后来需要配置阿里云yum源,同时wget命令无法使用
2020-09-10 11:35:18
1249
原创 大数据生态常用端口号
1.HDFS50070:HDFS WEB UI端口8020 : HDFS 内部端口8088 : Yarn 的WEB UI 接口8032 : ResourceManager的applications manager(ASM)端口19888:历史端口号2.Hive 9083 : metastore服务默认监听端口3.Hbase60010:master的WEB UI端口60030:regionServer的WEB UI 端口 4.zookeeper2181 : 客户端连接zoo
2020-08-31 18:39:07
311
原创 kafka的组件、进程、端口号
组件:Producer:生产者Consumer:消费者Broker:kafka集群的server,负责处理消息读写请求,存储消息Topic:消息队列、分类Queue:里边有生产者消费者模型进程:producer、consumer、broker、leader、follower、consumerGroup端口号:kafka学习默认端口号9092组件挂掉及影响:leader:挂掉之后,会在ISR之中在选择一个leader,但是得遵循半数机制follower:可同步数据的节点少一个,但是
2020-08-31 16:41:45
2295
原创 hbase的组件、端口号、进程
组件及进程:1.Client1.整个Hbase集群的访问入口2.Client当中包含了访问Hbase接口,此外,Client维护了对应了的cache加速Hbase访问,比如cache的.META.元数据的信息3.与HRegionServer进行数据读写类操作4.使用HBase RPC机制与HMaster和HRegionServer进行通信;2.Zookeeper1.高可用通过Zookeeper来保证master的高可用,保证集群中只有一个master运行。如果正在服务的master产生异常
2020-08-31 16:16:00
4114
原创 flink之进阶面试题
flink Checkpoint的理解轻量级容错机制(全局异步,局部同步)保证exactly-once 语义用于内部失败的恢复基本原理:通过往source 注入barrier,barrier作为checkpoint的标志flink Savepoint的理解流处理过程中的状态历史版本具有可以replay的功能外部恢复(应用重启和升级)两种方式触发:Cancel with savepoint,手动主动触发$s bin/flink savepoint :jobId [:targetDirect
2020-07-21 20:00:16
1150
1
原创 flink面试题
1、Flink 的 抽象层次有几种TableSQLCore APIStateful stream processing2、Window 类型(1)TimeWindowTumbling Window(滚动窗口)Sliding Window(滑动窗口)Session Window(会话窗口)Global Window(全局窗口)(2)countWindow(3)自定义window3、Time 类型Flink 中的时间和其他流式计算系统的时间一样分为三类:事件时间,摄入时间,处理时间
2020-07-20 10:00:00
961
原创 flink之检查点(checkpoint)和保存点(savepoint)的区别
一、检查点:检查点屏障跟普通记录一样。它们由算子处理,但并不参与计算,而是会触发与检查点相关的行为。会在算子之间流动。当读取输入流的数据源遇到检查点屏障时,它将其在输入流中的位置保存到稳定存储中。如果输入流来自消息传输系统(Kafka 或 MapR Streams),这个位置就是偏移量。Flink 的存储机制是插件化的,稳定存储可以是分布式文件系统,如HDFS、S3 或 MapR-FS如图所示,位于检查点之前的所有记录([“b”,2]、[“b”,3] 和 [“c”,1])被 map 算子处理之后的情况。
2020-07-18 15:38:41
1249
原创 mysql之部门工资前三的所有员工
题目叙述要求解法一:注:mysql也可以用开窗函数,用法与hive略有区别select d.name department,a.name name,a.salary from department d,(SELECT name,salary ,departmentid,Dense_rank() over(partition by departmentid order by salary desc) as ranking from employee1 ) a where a.departme
2020-07-16 11:47:28
1009
原创 大数据面试题之sqoop
1 Sqoop参数/opt/module/sqoop/bin/sqoop import \--connect \--username \--password \--target-dir \--delete-target-dir \--num-mappers \--fields-terminated-by \--query "$2" ' and $CONDITIONS;'2 Sqoop导入导出Null存储一致性问题Hive中的Null在底层是以“\N”来存储,而MySQL中的N
2020-07-16 10:10:11
483
原创 大数据面试题之hive
hql面试题点击此处以下为理论架构Hive的架构注:hive1.0、2.0默认引擎是mr,但hive3.0是tezHive和数据库比较查询语言由于SQL被广泛的应用在数据仓库中,因此,专门针对Hive的特性设计了类SQL的查询语言HQL。熟悉SQL开发的开发者可以很方便的使用Hive进行开发。数据存储位置Hive 是建立在 Hadoop 之上的,所有 Hive 的数据都是存储在 HDFS 中的。而数据库则可以将数据保存在块设备或者本地文件系统中。数据更新由于Hive是针对数据仓库应用
2020-07-14 10:40:57
762
原创 bin/schematool -dbType mysql -initSchema HiveMetaException: Failed to get schema version.
出现报错:org.apache.hadoop.hive.metastore.HiveMetaException: Failed to get schema version.Underlying cause: java.sql.SQLException : Access denied for user ‘root’@‘hadoop101’ (using password: YES)错误原因用户xxxxx权限不足进入mysql,查询用户:grant all on *.* to 'root'@'ha
2020-07-08 10:04:43
322
原创 zookeeper的读和写数据流程(有图欧)
须知Zookeeper中Leader和Follower的作用:Leader:负责进行投票的发起和决议,分布式读写,更新请求转发;Follower:负责接收客户端请求并向客户端返回结果,在选举Leader过程中参与投票(选举机制);一、写数据流程以3台服务器的Zookeeper集群为例,一个Leader,两个Follower即server1和server2(1)Client向Zookeeper的server1发送一个写请求,客户端写数据到服务器1上;(2)如果server1不是Leader,那
2020-05-21 16:25:26
405
原创 mysql之指定ip、用户、数据库权限
mysql设置指定ip远程访问连接实例本文实例讲述了mysql设置指定ip远程访问连接的方法,分享给大家供大家参考。具体实现方法如下:授权用户root使用密码jb51从任意主机连接到mysql服务器:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'jb51' WITH GRANT OPTION;flush privileges;2.授权用户root使用密码jb51从指定ip为218.12.50.60的主机连接到mysql服务器
2020-05-12 08:54:08
337
原创 hql中substr函数截取字符串匹配
开发中,经常进行模糊查询或者进行截取字符串进行模糊匹配,常用的就是substr函数或者substring函数。使用语法: substr(string A, int start),substring(string A, int start) 两者用法一样,两个参数 返回值: string 说明:返回字符串A从start位置到结尾的字符串举例演示:...
2020-05-05 10:35:12
5423
原创 sql函数之cast()
CAST函数用于将某种数据类型的表达式显式转换为另一种数据类型。CAST()函数的参数是一个表达式,它包括用AS关键字分隔的源值和目标数据类型。语法:CAST (expression AS data_type)expression:任何有效的SQServer表达式。AS:用于分隔两个参数,在AS之前的是要处理的数据,在AS之后是要转换的数据类型。data_type:目标系统所提供的数据类型...
2020-05-05 10:25:51
214
原创 最新的Sql笔试题及答案,部门表,用户表,客户信息表,订单表
部门表(SM_DEPT)用户部门中间表(SM_USER_DEPT)用户表(SM_USER)客户信息表(CTM_CUSTOMERS)订单头表(PIM_HEADERS)订单行表(PIM_LINES)问题1.编写SQL语句,查询PIM_HEADERS表,符合日期在2011-03-01和2011-03-25之间的PI订单,显示订单号,创建日志,订单客户名称,订单业务员名称sel...
2020-04-27 17:11:45
2254
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人