自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 对于新旧hive版本中grouping_id计算方式不同造成的差异化解决方案

工作中使用多维度分组时并不想写一大堆union all,为了便于代码简洁喜欢使用grouping_id这个函数,使用久了会发现hive_1.2.1版本以前的grouping_id计算方式和以后的计算方式会有所不同步。这样造成使用这个函数的时候如果存在历史数据使用时存在着矛盾,这时很多聪明人会想到的解决办法就是把不同的grouping_ID产生的数据按照时间分段开来重新计算,这样会造成许多大量重复的代码。在没有想到下面这个解决方案时,那种根据不同时间段groupingID 分段计算是一种解决方案但不是最佳方案

2021-10-10 11:44:49 702

原创 男人也来大姨妈,你不信?痛苦不堪

一个平静的周六和往常一样,早晨被闹钟惊醒,睡眼朦胧的睁开,一看手机6:45,心想还早,继续睡一个回笼觉。一个小时后被加班的节奏再次清醒,原来今天要上班,快速走马观花式的洗漱完成,按照不知重复了多少次的起床节奏从睁眼一分钟闭眼俩分钟贪睡一俩分钟就这样循环着猛一惊开始了早晨的报道。时间到了8:00出门的时间到了,已不知到重复了多少遍的步伐,来到电梯前按下了一天的路程起点,直到达一层。中间还好没什么人,一个不留神的机会瞄了一眼电梯里镜面照射出来的人神。这是哪个鬼神仙,刚洗的头未吹干的头发承托着一个微胖的脸型上,格

2020-10-25 20:44:06 520 1

原创 centos07安装高可用集群实战从零开始

从centos06过来的人喜欢使用命令行性质的黑窗口。显然cnetos7中的inittab中已经无法修改,但还是可以看到修改方法介绍。命令行中:cat /etc/inittab获取当前模式 systemctl get-default修改启动模式为命令行模式 systemctl set-default multi-user.target1.在安装集群之前请确保系统安装了jdk等必备软件。开始克隆虚拟机。2.修改虚拟机名称和存放位置,选择完整克隆,不要链接克隆。一路下一步等待3.克隆完成修改完

2020-10-08 21:06:05 417

原创 你脱不了单赖谁,人生大智慧

今天的天气尽管是晴天,晴空高照,但是外面有点风,吹在身上凉飕飕的。还是有点凉的。今天是国庆佳节和中秋节双节放假最后一天,历史难遇的八天假期,终于要结束了。当然在这么长的假期里,很多像我一样的适龄儿童,肯定将脱单必须提上日程,已不负这难得的假期。这个节日里你似乎会发现所有人的朋友圈里更多的是晒结婚照的,晒娃的,甚是幸福的狠哪。人类繁衍所要经历的正常过程是在不足为怪嘛。平常心态,就是平常心态嘛,见多了晒幸福也就激不起内心的波澜。但是还是要祝福人家还是幸福的嘛。早生贵子可好。当然对于我们这样的黄金单身老大难,

2020-10-08 11:28:32 1984 3

原创 clickhouse安装部署详细步奏,让你学习之路少走坑

1.安装前准备工作1.1设置CentOS7 打开文件数限制sudo vim /etc/security/limits.conf soft nofile 65536 hard nofile 65536 soft nproc 131072 hard nproc 131072在sudo

2020-10-06 22:15:09 6882 1

原创 centos07系统安装jdk

1.准备软件 jdk-8u73-linux-x64.tar.gz通过 ftp 工具把软件传到 linux 服务器上去2.配置centos用户sudo权限用于后面普通用户操作,使用root用户操作风险比较大vim /etc/sudoers3.把软件解包解压缩出来到安装路径下去: tar -zxvf jdk-8u73-linux-x64.tar.gz -C /usr/local/4、 配置环境变量 vi /etc/profile 或者配置用户环境变量 vi ~/.bashrc or vi

2020-10-06 21:04:28 90

原创 虚拟机环境搭建centos7系统

本来以为学习一下clickhouse,不料都装好了,报错,系统不兼容环境不行,群友们助攻逼着我需要重新安装一个centos7系统,不得发福利来了,记录一下装机过程。1.去阿里镜像站下载一个镜像包http://mirrors.aliyun.com/centos/7/isos/x86_64/2.打开VMware,选择创建虚拟机-自定义3.一路默认下一步。选择稍后安装虚拟机系统4.选择linux操作系统5.选择虚拟机内存,看自己的宿主机情况而定6.选择网络类型7.继续一路默认选择

2020-10-06 20:17:16 216

原创 Hive对周一的写法入坑实战演练

最近在做需求发现算周表的时候将数据存储在每个星期的周一。在国内的语法实现完全没问题,但是将相同的脚本发送给海外部署新加坡站点俄罗斯站点部署时在国内测试通过的语句。在海外部署报错语法错误,这不折磨一通,难道hive不是适合国际化的趋势吗?研究发现果不其然还真是不是兼通海内外,随着我的排查思路待我慢慢道来。就拿今天举例子吧,且看日历第一种实现:就什么时间格式转换且自己自行百度转换成标准时间格式xxxx-xx-xx就okhive计算周一的日期;SELECT DATE_SUB(‘2020-09-05’,

2020-09-05 18:54:54 438

原创 浅谈一波hive中参数设置的含义

分布式框架计算特性1、数据量大不是问题,数据倾斜是个问题2、jobs 数比较多的作业运行效率相对比较低,比如即使有几百行的表,如果多次关联多次汇总,产生十几个 jobs,耗时很长。原因是 map reduce 作业初始化的时间是比较长的3、sum,count,max,min 等 UDAF,不怕数据倾斜问题,hadoop 在 map 端的汇总合并优化,使数据倾斜不成问题4、count(distinct userid),在数据量大的情况下,效率较低,如果是多 count(distinctuseri

2020-08-16 19:19:28 525

原创 hive3.0惊天大bug发现,grouping()函数只能小写,大写直接报错,hive不是不区分大小写吗.

在最近写脚本时发现,一直使用的grouping()函数只能小写,改成大写直接报错。下面例子来证明一下。1.如下图为表的数据hive> select * from dwd_user_page_view_dm;OKuser_id pv pt_d0006D2BC14DF914C0 62 2020101183AD10183789E78D4 4 2020101115AE1A14B8

2020-08-09 18:09:56 896 1

原创 奔三的年纪想像猪一样一直高产已然不可能了,但是我们还是要谈一谈2020年被极度渲染的焦虑这个敏感词

2020年七月份悄无声息的过去了,真的就招呼都不打撇开了你。人来人往的职场中终于坚持了几个月还是坚持不下去有人走了,可能不是这样的,另有奔向有前景的工作去了。祝福吧!回想这半年来,翻遍了习惯的逛遍的论坛博客,好像都没有找到有关自己的身影的记录。噢,原来这大半年来都在干嘛呢,脑袋追忆到年初,丝毫没有了印迹。2020年注定是不平凡的一年,编剧好像跟着商量好的一样,瞅准了中年焦虑这个词,一顿狂轰滥炸。从年初的电视剧我是余欢水,到湖南中一节目乘风破浪的姐姐们,再到如今的三十而已。不管是综艺还是剧集都逃不掉中年焦虑

2020-08-02 14:50:00 160

原创 小姐姐在工作中窗口函数LEAD LAG FIRST_VALUE LAST_VALUE用的那么溜

小姐姐,工作中窗口用的那么溜,毕竟我也是一个爱好学习的人,怎么也得研究一把,说干咱就干准备数据1、 创建库:create database if not exists bicoredata;2、 查看库:show databases;3、 切换数据库:use bicoredata;4、 建表CREATE EXTERNAL TABLE IF NOT EXISTS bicoredata.dwd_user_page_view_dm(user_id VARCHAR(32) COMMENT ‘用户ID

2020-08-01 16:36:50 508 1

原创 咦,奔三的程序员学历一般技能一般存款不足三十万颜值更一般还没对象无房无车是靠什么在社会中存活下来的?

想必看到了标题就基本上就有了一个人设在自己的脑海中,就这么一个条件很low很一般的人靠什么在社会立足生存下来。曾几何时我也恐慌了一阵子,害怕失业,担心失去了唯一的生活来源,拿什么来对付每个月按时就要来的房租。按时缴纳的房租就好比女生的生理期一样,每个月都会来,或来的晚一点或来的早一点,反正迟早都是要来的,逃都逃不掉。既然逃不掉就不如正确面对它,寻找出路破局就成为了关键。对于我们普通的不能再普通有点想法的人,将考虑如果某天你失业了,你会靠什么谋生这种忧虑拿上考虑的日程。别人不知道,反正我是在积极寻找退路。尤

2020-07-27 10:23:43 404

原创 win命令提示符中DOS界面命令

打开dos界面的俩种方式1.运行+cmd命令2.开始-》所有程序-》附件-》命令提示符命令:1.切换盘符:直接输入d:c:e:2.查看 文件目录清单dir 查看的路径dir /s 所有子目录下的文件dir /p 分屏显示dir /s/p 按任意键 下一页3.改变目录cd 目录名 cd d:/回退上一级 目录 cd…回退到 根目录 cd/4.新建文件夹md 目录名5.建立文件copy con 文件名.扩展名内容ctrl + Z 退出6.显示文件内容typ

2020-06-21 10:28:33 273

原创 一道经典hive面试题输入 1,2,4,5,6,8,9 输出能连续上的搞在一起 用hive解决 1,2 4,5,6 8,9

经典hive面试题输入1,2,4,5,6,8,9输出 就是能连续上的搞在一起 用hive解决1,24,5,68,9直接进入主题:建表CREATE TABLE people(number varchar(256),id int,pt_d int)ROW FORMAT SERDE‘org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe’STORED AS INPUTFORMAT‘org.apache.hadoop.mapred.Te

2020-06-07 16:20:50 208

原创 Mysql的分区partition关于reorganize演示

我们一般业务用于展示层喜欢用mysql存储,这不可避免我们需要建立mysql分区表。建表:DROP TABLE IF EXISTS people;CREATE TABLE IF NOT EXISTS people (name varchar(20) DEFAULT NULL,address varchar(30) DEFAULT NULL,id int(11) NOT NULL...

2020-04-27 22:52:53 3453

原创 String,StringBuffer,StringBuilder比较

String,StringBuffer,StringBuilder比较1.String创建字符串的方式有很多,归纳起来有三类:;一,使用new关键字创建字符串,例如 String s=new String(“abc”);二,直接指定,例如 String s=“abc”;三,使用字符串生成新的字符串,例如 string s =‘’‘abc’+‘’cd‘’;字符串的一些特性,string类位于...

2020-04-19 15:45:58 142

原创 mysql中事务

事务存储引擎数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能。Mysql的核心就是存储引擎。InnoDB是事务型数据库的首选,执行安全性数据库,行锁定和外键。mysql5.5之后默认使用。MyISAM插入速度和查询效率较高,但不支...

2020-04-11 20:17:15 115

原创 hive中关于 msck repair table 和with as的用法解释

在hive3.0之前我们一般建立hive外部表后,遇到增加字段或者修改字段类型长度等,我们习惯做法,删表重建后全表修复文件MSCK REPAIR TABLE table_name,一般对于没有错误历史数据的表,这样修复是可以的。但是我们如果遇到一些比较复杂的场景,这时我们只需要修复特定分区即可 MSCK REPAIR TABLE table_name partition(pt_d=‘2020033...

2020-04-10 21:05:56 747

原创 mysql制造变量自动排序或者实现类似hive中row_number over(partition by id,name order by salary desc)组内排序

mysql制造变量自动排序或者实现类似hive中row_number over(partition by id,name order by salary desc)组内排序建表:create table if not exists student(name VARCHAR(256),age INT,class VARCHAR(256),project VARCHAR(256),sco...

2020-04-05 00:25:56 313

原创 反射机制概览

获取Class对象/1.获取Class对象Class clz = Class.forName(“com.zhang.reflect.Student”);//读取配置文件(动态创建调用)//2.通过类名.class(加锁)Class clz1 = Student.class;//3.对象.getClass() (类的Class对象时唯一的)Student stu = new Stud...

2019-06-02 21:40:30 146

原创 jdbcutil封装成一个工具类

package review.jdbc;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;im...

2019-06-02 21:27:07 327

原创 JDBC封装增删改查 使用反射BaseDao

package jdbc.jdbcutils;import java.lang.reflect.Field;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.sql.SQL...

2019-06-02 21:23:30 429

原创 彻底删除kafka中的topic和数据

这里没有单独的清空数据的命令,这里要达到清空数据的目的只需要以下步骤:一、如果当前topic没有使用过即没有传输过信息:可以彻底删除。二、 如果当前topic有使用过即有过传输过信息:并没有真正删除topic只是把这个topic标记为删除(marked for deletion)。想要彻底删除topic数据要经过下面两个步骤:①:删除topic,重新用创建topic语句进行创建topic②...

2019-05-19 13:47:38 500

原创 spark通过java的api创建hive的UDF用户自定义函数

public class UDF {public static void main(String[] args) {SparkConf conf = new SparkConf().setMaster(“local”).setAppName(“udf”);JavaSparkContext sc = new JavaSparkContext(conf);SQLContext sqlConte...

2019-05-19 13:37:45 935 1

原创 spark使用java的api读取mysql的几种方式

public class CreateDFFromMysql {public static void main(String[] args) {SparkConf conf = new SparkConf();conf.setMaster(“local”).setAppName(“mysql”);/*** 配置join或者聚合操作shuffle数据时分区的数量/conf.set(“...

2019-05-19 13:28:43 840

原创 通过java代码打包调用linux命令执行shell脚本

package linux;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class JavaExecuShell {public static void main(String[] args) {// TODO Auto-generate...

2019-04-06 20:44:19 888

原创 mapreduce wordcount代码的实现

pom文件package cm.zhang.com.zhang.mapreduce;import java.net.URI;import java.net.URISyntaxException;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.ap...

2019-03-16 17:45:52 288

原创 有两个很大文件,两个文件中存储的都是url,求出两个文件中相同的url

有两个很大文件,两个文件中存储的都是url,求出两个文件中相同的url大文件的时候怎么办?我们也采用分而治之的思想:将两个大文件都进行切分,每个大文件都切成多个小文件一个大任务=4*4个小任务这样虽然可以达到目的但是效率太低?怎么办?排序,切分(规则同一) 最终将任务减少到4个但是大文件排序仍然是一个非常消耗性能的事情,如果不需要排序就可做到这个效果尽量不要排序怎么办? has...

2019-03-16 17:36:13 3127

原创 有一个很大(4T)的文件,文件中存储的是ip 每行存储一个 要求求出出现次数最多的那个ip

有一个很大(4T)的文件,文件中存储的是ip 每行存储一个 要求求出出现次数最多的那个ippackage day2;import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;import java.util.HashMap;import java.util.Iterat...

2019-03-16 17:32:05 951

原创 hive整合hbase的解析

HBase 整合 Hive1、原理Hive 与 HBase 利用两者本身对外的 API 来实现整合,主要是靠 HBaseStorageHandler 进行通信,利用 HBaseStorageHandler,Hive 可以获取到 Hive 表对应的 HBase 表名,列簇以及列,InputFormat 和 OutputFormat 类,创建和删除 HBase 表等。Hive 访问 HBas...

2018-11-03 11:46:07 339

原创 java的api从hbase中读数据

package hbase.com.cn.hbase;import java.io.IOException;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import org.apache.hadoop.conf.Configuration;import org.apache.had...

2018-11-03 11:35:01 1563

原创 hbase的增删改查

package hbase.com.cn.hbase;import java.io.BufferedReader;import java.io.FileReader;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import org.apache.hadoop.conf.Config...

2018-11-03 11:32:14 297

原创 hbase的api的使用

1、 先进入 hbase shell 命令行在你安装的随意台服务器节点上,执行命令:hbase shell,会进入到你的 hbase shell 客户端[root@hadoop01 ~]# hbase shell2、 进入之后先别着急,先看一下提示。其实是不是有一句很重要的话:HBase Shell; enter ‘help’ for list of supported commands...

2018-11-03 11:28:22 179

转载 idea非常好用的快捷键和安装配置介绍

http://www.phperz.com/article/15/0923/159053.html

2018-10-06 18:54:23 129

原创 SparkStreaming整合kafka直连模式direct方式

org.apache.spark spark-streaming_2.10 1.6.2 org.apache.spark spark-streaming-kafka_2.10 1.6.2 val checkpoint =“hdfs://bdha/checkpoint”val conf = new Spark...

2018-10-05 20:11:24 981

原创 将hive采集的数据结构导入MySQL

#!/bin/sh###############collect mysql data import into hdfs约定:变量都用大写,多个单词之间使用下划线分割mysql: test/t_userhdfs : /input/data-clean/t_user在""中会执行``命令,但是在’'中,无法解析${}#################source配置文件functi...

2018-10-05 14:49:00 319

原创 flume采集方案nginx日志到hdfs上

###########################################################主要作用是监听目录中的新增文件,采集到数据之后,输出到hdfs#########################################################a1.sources = r1a1.sinks = k1a1.channels = c1#对...

2018-10-05 14:38:16 764

原创 spark使用状态函数updateStateByKey算子实现数据入库

def calcProvinceClickTop(dateProvinceCityAdCountsDS:DStream[(String, Int)], sqlContext:SQLContext): Unit = {//当前批次的记录val dateProvinceAdCounts:DStream[(String, Int)] = dateProvinceCityAdCountsDS.map{...

2018-10-04 09:36:08 371

原创 java的api连接数据库的

1.连接数据库工具类package jdbc.jdbcutils;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.ut...

2018-10-04 09:22:11 1126

空空如也

空空如也

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

TA关注的人

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