- 博客(81)
- 收藏
- 关注
原创 flinksql kafka到mysql累计指标练习
数据流向:kafka ->kafka ->mysql。模拟写数据到kafka topic:wxt中。
2023-10-26 16:36:54
1363
1
原创 mysql自定义函数求第n高的薪资
3.力扣上面执行却输出100,绝对是力扣上的bug。本地mysql操作没问题。原表:Employee。字段:id int,
2023-06-28 15:13:49
180
原创 dataworks 同步任务及表批量删除
dataworks->数据地图->数据专辑->创建专辑。将需要删除的表(开发+生产都可以)添加到创建的专辑中。然后批量移动专辑中的表到类目中。然后发布选中线完成任务下线。筛选需要批量操作的任务。数据开发->批量操作。
2023-06-19 17:35:08
432
原创 spark任务优化
优化思路就是增加并行写的能力,修改代码中充分区数为400,repartition(400),设置executer数20个,task数为400,12分钟跑完了。查看yarn运行计划,是写数据到redis这个阶段特别慢,一共是10个executer,总共是20个task。1.线上spark程序写数据到redis 每天离线执行一次跑完一次要3个小时。
2023-06-09 17:17:51
107
原创 spark on maxcomputer读取dataworks表数据写入redis
1.idea中新建maven项目,在pom文件中添加依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 ht
2023-06-01 11:57:34
303
原创 dataworks python3将数仓结果数据以excel文件发送邮件
dataworks python3将数仓结果数据以excel文件发送邮件
2023-01-09 18:04:12
368
原创 spark模式匹配使用
package com.kaishu.warehouse.ks.adsimport com.kaishu.tools.{DateUtils, SparkManager}import org.apache.spark.SparkConfimport org.apache.spark.sql.{SaveMode, SparkSession}/** * 创建人: xiaotao * 创建日期: Created on 2022-05-26 * 数据开发功能描述: 新用户收入日报表2 * 目标
2022-05-27 00:05:31
380
原创 数仓ads层表脚本
#!/bin/bashsource /etc/profileif [ -n "$2" ] ;then do_date=$2else do_date=`date -d "-1 day" +%F`fi# 创建人: xiaotao# 创建日期: Created on 2022-04-24# 数据开发功能描述: 兑换码兑换商品打卡数据(习惯熊打卡数据)ads_ks_redeem_code_df="set hive.exec.dynamic.partition=true;s
2022-04-25 22:25:42
680
原创 sparksql将hive数据写入tidb【2】
1500万数据13分钟写完,比第一版效率提升n呗package com.xxx.warehouse.serviceimport org.apache.spark.sql.SparkSessionimport org.apache.spark.sql.execution.datasources.jdbc.JDBCOptionsobject Test_tidb2 { def main(args: Array[String]) { val spark = SparkSession.bu
2022-03-15 23:54:59
1591
3
原创 spark程序将hive表亿条数据写入tidb
import java.sql.{Connection, DriverManager, PreparedStatement, SQLException}import com.alibaba.fastjson.JSONimport org.apache.spark.rdd.RDDimport org.apache.spark.sql.types.{IntegerType, LongType, StringType, StructField, StructType}import org.apache.s
2022-03-10 00:01:35
2768
4
原创 spark读取hive数据写入redis
import java.utilimport org.apache.commons.pool2.impl.GenericObjectPoolConfigimport org.apache.spark.rdd.RDDimport org.apache.spark.sql.{DataFrame, SparkSession}import redis.clients.jedis.{Jedis, JedisPool}import redis.clients.util.Poolimport scala.
2022-02-24 17:37:23
3576
1
原创 sparksql特殊符号转义
1. 符号 .sqlsplit(app_version, '\\.')[1]sparksqlsplit(app_version, '\\\\.')[1]
2022-01-30 13:45:16
2585
原创 MR程序在yarn上运行流程机制
1.客户端提交job到ResourceManager2.RM中的MRApplication分配一个jobid和临时的工作目录返回给客户端3.客服端进行初始化1.创建工作目录2.构建配信息conf.xml3.上传jor包到hdfs中4.读取文件计算切片(遍历输入路径下的所有文件,根据文件大小计算任务切片,文件<=128M*1.1就切分为一个任务切片,得到多个任务切片数,假如有3个任务切片就是3个maptask任务)4.客户端请求RM创建一个初始化的容器(存运算资源,cpu的个数,内存的.
2021-11-04 13:48:25
379
原创 hive rows between和range between使用
create table tmp( name string, class tinyint, cooperator_name string, score tinyint)row format delimited fields terminated by '|';adf|3|测试公司1|45asdf|3|测试公司2|55cfe|2|测试公司2|743dd|3|测试公司5|nfda|1|测试公司7|80gds|2|测试公司9|92ffd|1|测试公司10|95dss
2021-11-01 16:27:48
2080
原创 hive 模拟定位数据倾斜到具体sql
用户信息表select * from b;+-------+---------+--+| b.id | b.name |+-------+---------+--+| 1 | 张三 || 2 | 李四 || 3 | 赵六 |+-------+---------+--+用户爱好记录表select * from c;+-------+----------+--+| c.id | c.aihao |+-------+----
2021-08-05 21:01:34
676
2
原创 hive行列转换
1.一行转多行--数据vi test.txta b 1,2,3c d 4,5,6-- 建表create table test(col1 string,col2 string,col3 string)comment'一行转多行测试表'row format delimited fields terminated by '\t'stored as textfile;-- 加载数据load data local inpath '/root/col_to_row.tx
2021-08-05 18:04:19
463
原创 hive四个排序
数据准备-- 测试表select * from test;+--------------+--------------+--------------+--+| test.field1 | test.field2 | test.field3 |+--------------+--------------+--------------+--+| 1 | 6 | 14 || 2 | 3
2021-08-05 16:10:58
841
原创 hive小文件合并CombineHiveInputFormat
1.数据准备测试表create table test( field1 int, field2 int, field3 int)comment'小文件合并及排序测试表';数据insert into table test values(1,6,14);insert into table test values(2,3,4);insert into table test values(6,2,6);insert into table test values(1,3,2
2021-08-05 15:30:10
2667
原创 hive解析json
-- json数据{"OTHER_INFO":{"MOBILE_ADDR":"四川省内江市潘咱陛路1233号闷羞小区19单元484室","DATA2":{"CERT_ADDR":"宁夏回族自治区固原市薄精路3992号裸糕氏小区9单元1092室"},"DATA1":{"MOBILE_NUM":"15360425546"},"MOBILE_NUM":"15902875723"},"APP_NO":"RVVG5252500393","CHANNEL_SOURCE":"微信","BUSINESS_CODE":"T
2021-08-04 18:27:21
235
原创 redis综合案例LOL英雄出场次数
需要做一个lol英雄出场排行榜通过redis zset结构实现maven <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-library</artifactId> <version>${scala.version}</version> &
2021-08-03 13:23:55
105
原创 hive数据倾斜的优化
一.join操作数据倾斜1.mapjoinmap join 默认开启set hive.auto.convert.join = true(0.11版本后默认是true)set hive.mapjoin.smalltable.filesize=25000000(设置小表的大小,默认就是25M)不管大小表放左边还是右边,自动将小表放入内存,然后在map端顺序扫描大表跟内存中的数据进行join,没有reduce阶段,没有shuffle2.类型不一致关联字段不一致引发的数据倾斜操作有一个a表关联字段是
2021-07-29 14:38:30
735
原创 hive map join
hive map joinmap join 默认开启不管大小表放左边还是右边,自动将小表放入内存,然后在map端顺序扫描大表跟内存中的数据进行joina 大表user_id oid0001,B0001,A0002,C0003,D0001,E0001,F0004,W0001,Zb 小表user_id name0001,王0002,刘0003,赵0004,高sqlselecta.user_id,a.oid,b.namefrom ajoin bon a.u
2021-07-29 11:48:38
263
原创 shell脚本_集群启动停止脚本
创建脚本文件vi test.sh#! /bin/bashcase $1 in"start"){ for i in 01 02 03 do echo "输入start,$i" done};;"stop"){ for i in 01 02 03 do echo "输入stop,$i" done};;esac执行脚本[root@wxt02 ~]# ./test.sh start-bash: ./test.sh: Permission denied权限不够[root@
2021-07-28 13:11:05
265
原创 hivesql 练习3
--源表name,subjectid,age,score张三,0001,22,45张三,0002,22,56李四,0002,18,88赵五,0002,24,66--目标表 (科目0001没有成绩的学生name和age)name,age李四,18赵五,24create table score_t(name string,subjectid string,age string,score string)ROW FORMAT DELIMITEDFIELDS TERMINATE
2021-07-15 23:06:00
136
原创 hivesql练习2
--源表:name,sport张三,足球张三,篮球张三,排球李四,排球李四,足球赵五,排球顺序 篮球,足球,排球--目标:name,sport张三,篮球李四,足球赵五,排球create table sport_tab(name string comment'姓名',sport string comment'体育项目')ROW FORMAT DELIMITEDFIELDS TERMINATED BY ','--计算:selectname,casewhen
2021-07-15 22:19:09
109
原创 spark core 指标练习每个部门订单数最大的三个员工,每个作品对应性别的次数
每个部门订单数最大的三个员工import org.apache.log4j.{Level, Logger}import org.apache.spark.rdd.RDDimport org.apache.spark.{SparkConf, SparkContext}/** * @date :2021/7/9 11:15 * @author :xiaotao * @description :topN * 部门id, 员工id, 订单数 *
2021-07-09 12:42:35
186
原创 hivesql练习
源表:省,省id,市,市id,区,区id目标表:地区,地区id,上层地区id省,省id,null市,市id,省id区,区id,市id一:selectif(`省id` is null,`区`,if(`市id` is null,`省`,`市`)) as `地区`,if(`省id` is null,`区id`,if(`市id` is null,`省id`,`市id`)) as `地区id`,if(`省id` is null,`市id`,if(`市id` is null,0,`省id`)
2021-06-30 22:29:27
145
原创 某司大数据开发笔试题
1、找出一个字符串中含有多少个a字符例如:写一段SQL判断字符串“accumulate”中有多少个“a”字符。select length('accumulate') - length(replace('accumulate','a',''))2、如何判断用户的最长连续活跃天数例如:写一段SQL判断用户2021年5月连续访问淘宝网站的最大天数。源表表名:page_view源表字段:user_id代表用户ID,visit_time代表访问时间(格式:yyyy-MM-dd HH:mm:ss),sit
2021-06-21 19:46:15
802
原创 hive中拉链表
既反映了数据历史状态,又比较节省空间适用于数据量比较大,而且会不断增长(典型:订单表)表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等;需要查看某一个时间点或者时间段的历史快照信息,比如,查看某一个订单在历史某一个时间点的状态,比如,查看某一个用户在过去某一段时间内,更新过几次等等;变化的比例和频率不是很大,比如,总共有1000万的会员,每天新增和发生变化的有10万左右;如果对这边表每天都保留一份全量,那么每次全量中会保存很多不变的信息,对存储是极大的浪费;.
2021-05-15 00:23:31
3114
10
原创 hive条件查询,起完job就卡住不动了,也不报错,日志也没问题,
hive简单查询没有问题0: jdbc:hive2://wxt01:10000> select * from `user`;OK+------------+----------------------+--+| user.guid | user.dt |+------------+----------------------+--+| zhangsang | 2020-03-01 11:32:22 || zhangsang | 2020-03-02 1
2021-05-13 17:01:01
1086
原创 flink程序java编写实时wordcount
package cn._51doit.flink;import org.apache.flink.api.common.functions.FlatMapFunction;import org.apache.flink.api.common.functions.MapFunction;import org.apache.flink.api.java.functions.KeySelector;import org.apache.flink.api.java.tuple.Tuple2;import
2021-04-30 11:51:16
328
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人