自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(145)
  • 资源 (5)
  • 收藏
  • 关注

原创 IDEA修改SVN地址

公司的SVN地址改变了(本地项目还没同步)(一) 选中项目,右键Subversion --> RelocateFrom URL路径保持不变(修改To URL为最新路径)(二)选中项目,右键Subversion --> Update Directory勾选Update修改URL为最新的即可。...

2019-01-03 19:43:08 22607 5

原创 oracle常用命令(hive转换)

字段类型:名称:SERIES_NAME VARCHAR2(200)数字:ONWAY NUMBER标识:FLAG NUMBER(1)日期:DATE_DAY VARCHAR2(20)create table CUSTOMER_COUNT( UPDATE_DATE DATE not null, RSSC_ID VARC...

2018-11-23 16:23:41 1669

原创 Hive解析json格式字段

新建hive表create external table asmp.json_test(id string,info string)row format delimited fields terminated by '\t' lines terminated by '\n'location 'hdfs://nameservice1/user/asmp/json_test'插入数据1 [{"name":"Tom","city":"Beijing"},{"name":"Jack", "city

2021-03-18 17:11:57 109

原创 核对发票数据过程

前两天发票逻辑变动,需要去掉part_code重复的经销商数据,具体做法如下:(1)生成一张去掉重复的经销商表clean_tm_sst(2)计算发票的逻辑关联这张表---------------------------漫长的核对过程------------------------------(1)初步核对:获取重复的part_code对应的经销商代码,然后到结果表中查询是否筛选成功(2)核对发票金额是否一致:由于是两年前的逻辑,核对过程就像是回忆过去经历。首先从数据库中拉取某家经销商2月份的

2021-03-03 14:47:42 124

原创 Oozie任务阻塞问题

早上业务部门发邮件说昨天数据没生成出来,查看集群后发现workflow任务阻塞了,正常9点之前所有任务都能执行完毕,今天竟然有三个workflow还在执行中。。。还有两个workflow任务超时报错了,进一步排查原因是资源池被其它部门的机器学习任务抢占了!随着生产集群上部署的workflow越来越多,集群资源有限,集群任务没有合理规划执行时间,导致现在出现资源抢占的情况!!!和其它部门协调方案:(1) 限制机器学习任务占用资源大小(2)把机器学习任务从7点调整到5点后续如何避免这类问题:(1)

2021-02-24 10:27:51 68

原创 hbase预分region方法

hbsae表使用VIN(车架号 每个车辆唯一的编号 17位)作为rowkey,但是VIN分布并不均匀,因此在数据量很大的时候需要考虑自定义预分region间隔区间:use asmp;select sub,count(1) n from (select substring(vin,1,5) as sub from tt_repair_deed_tmp where partition_brand='vw') agroup by sub order by n descselect sub,count(

2021-02-22 11:36:47 58

原创 workflow经常无故报错SQL

生产集群workflow经常随机报错,但是报错信息都差不多,SQL解析,内存不足的问题,报错信息如下:21/01/29 04:02:54 ERROR yarn.ApplicationMaster: User class threw exception: org.apache.spark.sql.catalyst.errors.package$TreeNodeException: execute, tree:Exchange RoundRobinPartitioning(1)+- *Project [R

2021-01-29 12:29:53 43

原创 数据分层(方法论)

如何设计数据分层数据仓库分为下面三个层:数据运营层、数据仓库层和数据产品层。第一层:明细层(ODS:operational data store,DWD: data warehouse detail)作用:记账、发货使用在这层不是简单的数据接入,而是要考虑一定的数据清洗,比如异常字段的处理、字段命名规范化、时间字段的统一等,一般这些很容易会被忽略,但是却至关重要。数据仓库层(DW),是数据仓库的主体第二层:轻度汇总层(MID或DWB, data warehouse basis)作用:用户结

2020-11-25 11:48:58 570

原创 Hive列转行总结

有张表分成八种情况,分别为:账面库存X类标准库存X类待核销库存X类待冲销库存X类账面库存Y类大众标准库存Y类待核销库存Y类待冲销库存Y类于是考虑先使用拼接函数生成如下样式:建立测试表:CREATE table student_test( stu_id string comment '学号', stu_name string comment '姓名', stu_type string comment '类型', courses string comment '各个科目',

2020-10-22 18:19:18 362

原创 Dev-Cpp使用&快捷键

之前搞过蓝桥杯,就从官网下载了Dev-cpp软件~http://dasai.lanqiao.cn/pages/dasai/news_detail_w.html?id=1819解压后,点击File – New – Project,直接F9编译F10运行:#include <stdio.h>#include <stdlib.h>int main(int arg ,char *argv[]) { printf("hello world!"); return 0;}编译运

2020-10-21 10:58:52 175

原创 leetcode在线刷题

登录网站 https://leetcode-cn.com/注册账号(使用GitHub账号)

2020-10-20 19:28:19 52

原创 Sqoop导入HDFS格式问题

(1)使用Text格式sqoop import --connect jdbc:oracle:thin:@//IP:1521/ASMP2 --username --password --query "SELECT * FROM SBPOPT.TT_MAINTENANCE_TIMES_CORRECT where \$CONDITIONS" --fields-terminated-by '\t' --delete-target-dir --target-dir /user/asmp/hive/asmp/tt_m

2020-09-25 10:34:11 193

原创 Hive窗口函数的使用场景

(1)oracle使用KEEP()函数,改写成hive语句(2)group by和max函数一起使用的坑:一张剧目演出表,表中有(剧目ID,剧目名称,演出单位,票房),问:查询出每个演出单位票房最高的剧目名称。(听起来很简单吧)现在我们看看数据:(name是剧目名称,desp是演出单位,price是票房)错误的使用方式:对比后发现name字段信息不对。。。虽然找到的是最大的price,但是与之匹配的剧目名称name却不对应,而是group by分组后的第一条记录的基本信息。最终正确H

2020-09-09 11:27:45 196

原创 Excel常用方法

Excel中两列互换:选中其中的一列数据,移动到列与列之间的位置,此时鼠标是“十”字形,按住shift键+鼠标左键,拖动到你想要达到的位置即可

2020-08-26 17:48:58 69

原创 scala常用函数

日期函数 /** * 通过日期获取一年中的第几周,周几 */ def getWeek(date:String,dateFormat:String): Int = { // 创建Calendar对象 val calendar = Calendar.getInstance // 设置传入的时间格式 val sdf = new SimpleDateFormat("yyyy-MM-dd") // 指定一个日期

2020-08-21 17:59:42 79

原创 数据仓库技术选型(三)

一个合理的架构的关键是能够在以下方面取得平衡: 成本 满足需求(梳理业务和响应的应用场景) 技术可持续(需要处理的数据源的种类、类型、数据量) 灵活性 稳定性 可扩展性flume 不能同步到ESlogstash 占用内存高,比较常用fliebeat 不依赖java版本,对业务侵入少,占用内存低技术架构:数据仓库:负责数据资产建设和管理,数据治理数据开发:数据分析数据平台建设:...

2020-08-20 11:41:34 300

原创 数据仓库建模理论(二)

数仓建模的目标:(1) 访问性能,快速查询所需的数据,减少数据I/O(2) 数据成本:减少不必要的数据冗余,实现计算结果数据复用(3) 使用效率:改善用户应用体验,提高使用数据效率(4) 数据质量:改善数据统计口径不一致问题,减少数据计算错误率第一范式(1NF)域是原子性的,即表中每一列都是不可分割的原子数据项规范后:第二范式(2NF)1NF基础上,实体的属性完全依赖于主关键字,不能存在仅依赖主关键字一部分的属性规范后:第三范式(3NF)2NF基础上,任何非主属性,完全依赖

2020-08-19 15:46:40 98

原创 多线程总结

java实现多线程的两种方式:package utils;class MyThread extends Thread{ private String name; public MyThread(String name){ this.name=name; } public void run(){ System.out.println(name+":运行!"); }}//class MyThread implements Runn

2020-08-13 17:00:54 30

原创 scala语法总结

scala中方法和函数有什么区别?(1)方法可以没有参数列表,函数是强制有参数(2)方法(带参)不能作为最终的表达式,函数可以(3)方法名意味着方法调用,函数名只是代表函数自身def 方法名(形参:参数类型):返回值类型 = {函数体}val f1 = (a:Int,b:Int) => a + bval f2 = (a:Int,b:Int,f1:(Int,Int) = > Int) = f1(a,b)val 函数名称:函数类型 = 函数参数列表 => 输出列表val

2020-08-10 16:57:19 46

原创 C语言转Java代码

C代码:#include <stdio.h>#include <stdlib.h>#include <limits.h>#define M 5#define N 5int to_index_2d_row(int k) { // 2d matrix, N cols return k / N;}int to_index_2d_col(int k) { // 2d matrix, N cols return k % N;}

2020-07-18 15:53:03 631

原创 Excel对比两个Sheet数据的异同

步骤一:数据列转行处理转换后格式(插入 --> 数据透视表)步骤二:数据对比(测试和生产)

2020-07-14 16:14:03 818

原创 hive sql使用总结

Hive设置多个reduce方法:set mapred.reduce.tasks = 2;(1) order by/distribute by/sort by/cluster by区别order by #全局排序 sort by #局部排序,单独reduce中进行排序distribute by #分桶排序,相同KEY的记录被划分到一个Reducecluster by =distribute by+ sort by #分桶排序cluster by id,name 默认是升序,且不可指定asc或de

2020-07-07 22:43:25 206

原创 oracle使用总结(汇总)

截取某个字段前两位(所有行)select * from tt_presale_sales_repairupdate tt_presale_sales_repair set series_code=substr(series_code,1,2)commit;

2020-06-23 10:44:46 123 1

原创 区域分类(业务相关)

华中RSSC 1001安徽、河南华南RSSC 1003福建、广东、海南江苏RSSC 1004江苏山东RSSC 1006山东华北RSSC 1007河北、内蒙古、山西西北RSSC 1008甘肃、宁夏、青海、陕西、新疆西南RSSC 1010四川、重庆中南RSSC 1012湖北、湖南、江西华东RSSC 1019上海、浙江北方RSSC 1020北京、天津云桂黔RSSC 1024云南、贵州、广西东北RSSC 1025辽宁、吉林、黑龙江...

2020-06-18 10:39:08 156

原创 sqoop常用命令(汇总)

sqoop版本:1.4.6+cdh5.13.3+132oracle导入到hdfs(parquet格式)oracle导入到hdfs(text格式)oracle导入到hdfs(rowid字段)oracle导入到hivehdfs导出到oraclehdfs导出到mysqloracle导入到hdfs(parquet格式)工 中经常使用sqoop导入数据到hdfs上,由于oracle表中有些字段包括/t/r/n等特殊字符,为了数据不出现错位,解析失败等情况,我们采用parquet压缩格式(其中时间存为 "yyyy-

2020-06-05 17:19:28 446

原创 ogg抽数据到hdfs问题(汇总)

1、新项目使用ogg抽数据按照年月日+小时的形式保存到hdfs,由于ogg数据是保留修改前数据和修改后数据的,所以采用json格式保存文本{"table":"TEST.TT_SALES_RECORDS","op_type":"U","op_ts":"2020-05-19 02:05:03.000701","current_ts":"2020-05-19T10:05:10.427000","before":{"ID":178733,"PS_ORDER_NO":"PV2003110002","PS_ORDE.

2020-05-19 10:55:50 506

原创 SparkSreraming读kafka数据(json复杂格式)

项目简介:源端改造,使用ogg从oracle抽数据到kafka,需要自己写代码解析kafka中ogg数据,数据格式比较复杂,需要二次解析!spark:2.1.0版本kafka:0.9.0版本<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-streaming_2.11</artifactId> <versi

2020-05-13 16:30:05 147

原创 时间戳负数转换问题

由于甲方人员使用sqoop抽数据,把时间类型自动转换成了时间戳,而且是毫秒级别的。。于是我们尝试使用hive的时间戳方法转换成日期select from_unixtime(cast(-2114409600000/1000 as int),'yyyy-MM-dd HH:mm:ss')--1903-01-01 00:00:00select from_unixtime(cast(-220901...

2020-04-10 13:32:32 3232 2

原创 Hbase表使用总结

业务逻辑比较复杂,有很多是根据VIN码来判断的,于是使用hbase并且把VIN码作为rowkey进行设计。Column Family设计原则:一个静态数据,一个动态数据。VERSIONS设计原则:看历史数据保留价值。(1)创建Hbase表create 'testTable',{NAME=>'info', VERSIONS => 1},{NAME => 'dt', VERS...

2020-03-25 17:35:50 81

原创 [python]转换文件编码格式

临时需求,需要把两年的csv文件转换格式,因为utf-8文件用Excel打开是乱码。。。于是想着批量处理方案:# -*- encoding: utf-8 -*-"""fc_test.pyCreated on 2020/3/9 0009 下午 5:06@author: LHX"""import osimport sysimport codecsimport chardet# ...

2020-03-09 18:59:09 909

原创 数据库迁移问题

(一)Spark读数据为空问题近期数据库迁移,使用Sqoop抽数据到Hive,然后用Spark读数据。经过测试sqoop底层是使用MapReduce程序把Oracle数据导入到Hive中的所以我们应该使用hive的引擎去读这些表,需要在Spark代码中添加配置hiveContext.setConf("spark.sql.hive.convertMetastoreParquet","fals...

2019-12-30 13:48:17 138

原创 机器学习-KMeans聚类算法

K-Means和KNN区别:KNN是监督学习的分类算法,有对应的类别输出。KNN基本不需要训练,对测试集里面的点,只需要找到在训练集中最近的k个点,用这最近的k个点的类别来决定测试点的类别。K-Means是无监督学习的聚类算法,没有样本输出;K-Means则有明显的训练过程,找到k个类别的最佳质心,从而决定样本的簇类别。两个算法都包含一个过程,即找出和某一个点最近的点。两者都利用了最...

2019-12-29 21:33:17 142

原创 SparkSQL分区OutOfMemory

由于SparkSQL默认200个分区,为了处理小文件决定使用reparation和coalesce重分区,代码如下(方式一)df_1.coalesce(1).createOrReplaceTempView(“table_tmp”)竟然报错。。Job aborted due to stage failure: Task 1 in stage 8.0 failed 4 times, most r...

2019-12-26 18:28:39 147

原创 ES集群5.3.0升级7.3.0

最近有新项目需要使用中文分词,然鹅之前安装的ES5.3.0需要安装插件,而且老版也没有自带安全验证,考虑之后还是升级吧(一)下载所需要的软件wget -b https://download.java.net/java/GA/jdk11/13/GPL/openjdk-11.0.1_linux-x64_bin.tar.gzwget https://artifacts.elastic.co/dow...

2019-12-23 19:28:44 373

原创 机器学习-决策树

未完待续

2019-12-22 14:55:13 47

原创 机器学习-逻辑回归

后期补。。

2019-12-15 21:48:38 36

原创 CentOS7安装Elasticsearch 7.3.0

由于之前使用的是Elasticsearch 5.3.0,需要升级到Elasticsearch 7.3.0

2019-12-10 17:00:31 34

原创 梯度下降法(下)

梯度下降法2

2019-12-08 18:40:44 35

原创 梯度下降法(上)

梯度下降法

2019-12-08 18:39:49 30

原创 机器学习-回归算法(下)

评价分类结果(上)线性回归的评价指标《机器学习的敲门砖:归一化与KD树》特征工程系列:特征预处理(上)模型之母:简单线性回归&最小二乘法模型之母:简单线性回归的代码实现模型之母:多元线性回归《还不了解梯度下降法?看完这篇就懂了!》《手动实现梯度下降(可视化)》《线性回归中的梯度下降》...

2019-12-08 18:36:08 50

window平台 ncat工具

windows平台下ncat工具,Netcat用于从TCP/UDP连接中读取或发送网络数据。(使用方法:ncat.exe -l -k -p 6666)

2018-03-26

大数据及其常用组件介绍

本TTP为大数据及其常用组件的基本介绍(hdfs hive hbase kafka spark kudu impala kylin streamsets)仅供参考。

2018-11-06

n2n windows端

该文件对应csdn博客(n2n内网穿透搭建)中n2n本地服务器的windows端应用程序使用,请配套使用。

2018-05-23

Apache Kylin操作流程

Apache Kylin操作流程截图分享,及配套文字讲解,仅做参考。

2018-06-27

druid数据分析原理与实践

Druid实时大数据分析原理与实践.pdf 高清,欧阳辰,数据仓库架构必备。

2019-06-25

空空如也

空空如也

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

TA关注的人 TA的粉丝

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