自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java-JDBC-之常用的几种创建Mysql的连接方式

常用的java-jdbc创建Mysql的连接方式package com.shufang.jdbc1;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.Driver;import java.sql.DriverManager;import java.sql.SQLException;import java.util.Properties;publ

2021-04-10 00:46:48 9

原创 Hive-之常用的列转行案例

该案例主要是解决将相同的column放在同一row进行展示,不同的值形成不同的列--from test1.a test1.b test1.c1 2 34 5 6--to typ val1 val2a 1 4b 2 5c 3 6--查询SQL,主要是将a列的所有值与'a'搭上关系,然后扁平化然后再聚合,实现思路不止一种,集思广益select typ,

2021-03-17 21:24:27 5

原创 Hive-之即席查询引擎选型考量

Hive-之即席查询引擎选型1 背景为什么需要使用到即席查询的数据表,这个取决于数仓的上层应用于数仓的规模,通常如果需要给Hive的上层服务提供快速响应,那么即席查询是必不可少的数仓组件,常见的即席查询组件有以下。DruidKylinPrestoImpalaSpark SQLES2 各种即席查询引擎的功能对比对比点DuirdKylinPrestoImpalaSparkSQLES亚秒级响应YYNNNN百亿级数据集YYYYYY

2021-03-15 19:06:01 11

原创 JVM详细解析(Java 8 HotSpot VM内存分配、GC)

JVM详细解析(Java 8 HotSpot VM内存分配、GC)1 简介JVM是Java虚拟机的简称,是为了保证Java程序能运行在不同操作系统上的一个虚拟机器,它不直接与操作系统交互,而是运行在操作系统上,所有的Java线程都会调用操作系统的线程,通常是C线程,所有的系统线程均通过CPU进行管理与分配。2 JVM角色虚拟机Stack本地方法栈程序计数器堆方法区类加载器执行引擎2.1 线程私有内存线程的私有内存包括虚拟机栈、本地方法栈、程序计数器。

2021-02-24 22:41:25 25

原创 常用的shell命令(cut sed sort awk nl head …)

常用的shell命令(cut sed sort awk nl head …)cut (既可以编辑文本,也可以通过管道符号|进行操作)#准备文件vim test.txthello:mother:fucker:with:my:namehello:mother:fucker:with:my:namehello:mother:fucker:with:my:namehello:mother:fucker:with:my:namecut -b 2,3 test.txt #查看占用第2个字符的文本内

2021-02-23 16:51:34 22

原创 社保卡是什么?有什么作用?

社保卡是什么?有什么作用?社保卡是我们觉得熟悉,但是又很陌生的东西,这里来解释以下社保卡是什么。1 社保卡组成社保卡分为2个账户社保账户银行账户主要包含3个大类的功能:社保功能(医保报销等)、金融功能(银行账户)可以让社保卡当作普通的借记卡进行使用,可以存取现金,同时养老金,失业金都会发放到该银行账户里面,但是需要激活金融功能、城市服务功能,如公交、地铁、身份证认证使用注意:如果需要激活当地的电子社保卡,必须去社保卡银行的网点激活金融功能,才能在网上使用电子社保卡功能,可以通过不同的

2021-02-17 22:04:32 47

原创 社保断缴的影响

社保断缴的影响社保包含以下5档养老生育失业医疗工伤【注意】社保断缴主要重大影响如下,断缴一段时间影响最大的只有医疗和生育保险。对于养老保险的影响微乎其微,什么时候能交了续上就行了。对于工伤和失业保险,断缴的影响也是忽略不计。1 不会清零的项目(社保断缴)这个主要介绍社保断缴之后影响较小的的项目1.1 养老保险养老保险个人账户余额不会清零累计缴费年限不会清零只要退休前保证累计缴纳满15年养老保险,就可以按月领取养老金如果是断档少交了很多年,那么每月算下来的养老

2021-02-17 21:44:48 43

原创 Flink-之术语介绍

Flink-之术语介绍1 Gragh的概念StreamGragh:Flink中的数据结构,在Cluster客户端生成的Flink程序的拓扑结构,单纯的显示拓扑StreamEage:代表拓扑中2个算子处理之后的流的连接点StreamNode:每个StreamNode代表1个拓扑算子节点JobGrap:Flink中的数据结构,将可以形成Chain的算子进行合并,减少节点之间 的数据传输带来的性能消耗(序列化,反序列化)JobVertex:这是在JobGraph中的角色,每个JobVerte

2021-02-01 09:34:43 21

原创 Hive-之UDTF解析解析JsonArray

package com.shufang.hive;import org.apache.hadoop.hive.ql.exec.UDFArgumentException;import org.apache.hadoop.hive.ql.exec.UDFArgumentTypeException;import org.apache.hadoop.hive.ql.metadata.HiveException;import org.apache.hadoop.hive.ql.udf.generic.Gen

2021-01-24 22:16:01 38

原创 Hive-之Load data into table[partition](hdfs -> ods ,ods -> dw)

Hive-之Load data into table[partition]--创建表,确定schema和各种formatDROP TABLE IF EXISTS shufang.students;CREATE TABLE IF NOT EXISTS shufang.students( id int , name string, create_time string ) partitioned by (dt string) --指定分区表row format delimite

2021-01-24 10:28:42 42

原创 支持连接Hive数据库的可视化工具(DBeaver & DataGrip)

支持连接Hive数据库的可视化工具(DBeaver & DataGrip)

2021-01-23 22:28:02 165

原创 Hadoop-之yarn容量调度器之多队列配置与解读

Hadoop-之yarn容量调度器之多队列配置与解读前言通常来说Yarn作为一个资源管理器,可以给不同类型的Application分配资源,并合理调度job执行,Yarn支持的调度策略有3种。FIFO SCHEDULERCAPACITY SCHEDULERFAIR SCHEDULER但是默认是CAPACITY SCHEDULER容量调度器,该调度器支持多个队列,每个队列中至多同时运行1个Application(一个Hive-MR进程或者Spark进程都会为各自申请Application Ma

2021-01-23 22:16:44 108

原创 Sqoop import -之MySQL到HDFS(LZO)的脚本编写与简单实践

sqoop-之MySQL到HDFS(LZO)的脚本编写与简单实践1 连接数据库#sqoop help#sqoop list-databases --helpsqoop list-databases --connect jdbc:mysql://shufang102:3306/ --username root --password 8888882 sqoop importsqoop import指令支持将RDBMS中的数据分别以以下形式导入到HADOOP导入到HDFS路径(比较常用的方式,让

2021-01-23 12:31:08 63

原创 CentOS 7 安装Sqoop-1.4.7-bin-hadoop

CentOS 7 安装sqoop1.4.7-bin-hadoop前言Sqoop是一个可以将数据在关系型数据库与Hadoop进行转移的工具,底层通过MapResult的MR任务将数据按批次的形式进行转移,同时自定义了对应的InputFormat和OutputFormat,吞吐量很大,功能很强。下载地址:https://mirrors.bfsu.edu.cn/apache/sqoop/1.4.7/1 下载安装包# 1 tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.t

2021-01-22 13:05:30 18

原创 Java常用集合类型-之ArrayList & LinkedList比较

Java常用集合类型-之ArrayList & LinkedList比较1 ArrayList特点public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.SerializableArrayList是一个线性的表,数据存储也是线性连续的ArrayList底层实现是数组,所以每个元素都有自己的

2021-01-19 11:11:57 14

原创 kafka-之bin内部脚本的使用(包括分区重分配、消费者组消费情况、索引文件查看)

kafka-之/bin/内部脚本的使用(包括分区重分配、消费者组消费情况、索引文件查看)1 topic相关操作kafka-topic.sh --create --zookeeper zkhost:2181 --partitions 1 --replication-factor 2 --topic topic_name # 创建topickafka-topic.sh --zookeeper zkhost:2181 --list # 列出所有的topickafka-topic.sh --descri

2021-01-17 21:51:56 63 1

原创 Kafka-之集群节点数量 与 分区数量 确定

Kafka-之集群节点数量与分区数量确定1 节点数量kafka的集群数量得按照实际业务需求来确定,主要是看kafka的生产者端消息的峰值生产速度,最好保证盈余一点。通常生产的集群节点数量确认遵循以下经验公式# kafka_broker_nums = 2*(峰值生产速度()*2/100) + 1 # 假如峰值生产速度为50MB/s(通常是20+MB/s比较正常)kafka_broker_nums = 2*(50*2/100)+1 = 3台2 分区数量性能测试可以参考:首先在单节点创

2021-01-16 20:44:47 260

原创 CentOS 7 安装Flume-1.9.0

CentOS 7 安装Flume-1.9.00 前言flume官网:http://flume.apache.org/flume是一个日志采集框架,最开始就是用来采集日志信息到HADOOP的采集框架,能够达到实时的效果。flume的安装和配置很简单,下面就开始介绍在centos 7上安装flume,flume并不是一个分布式的应用,所以没有集群的概念。1 Flume安装流程下载并解压相关的tar包tar -zxvf apache-flume-1.9.0-bin.tar.gz -C /opt/m

2021-01-16 16:53:36 45

原创 spark-之访问Hive数据源(外部、内部Hive、thrift server)

spark-之访问Hive数据源(外部、内部Hive、thrift server)spark本身就使用的是Hive的Catalog作为内部shema的标准,如果在类路径下访问不到Hive的conf文件,那么就会在本地生成Hive相关的元数据、数据目录,这些内容被称为Spark的内置hive,通常我们需要连接的数据源是外部hive.由于不管是哪种模式,就算是最简单的local模式,我们也可以连接hive数据源进行相关操作,以下操作都是基于local模式,当然你可以使用standalone和yarn进行

2021-01-16 13:06:28 63

原创 CentOS 7 安装Spark-2.1.1-bin-hadoop-2.7(standalone & yarn)

CentOS 7 安装Spark-2.1.1-bin-hadoop-2.71 local模式(1台节点)这种版本主要是用来自己测试,自己玩一下内部Hive的连接与外部Hive的连接,这种模式安装很简单 ,官网下载地址从官网下载对应的离线安装版本,上传到服务器。解压tgz格式的离线安装包指定的目录。更改目录名称进入spark_home目录,在bin目录下启动spark-shell,不报错说明正常本地模式安成功。1.1 使用local模式访问内部Hive# 解压tar -zxvf spar

2021-01-16 09:58:23 45

原创 ClickHouse-之MergeTree引擎分析

ClickHouse-之MergeTree引擎分析0 前言clickhouse引擎介绍:https://clickhouse.tech/docs/en/engines/table-engines/#mergetreeclickhouse索引什么时候会被使用到:https://clickhouse.tech/docs/en/engines/table-engines/mergetree-family/mergetree/#functions-support想了解更多请参考:https://click

2021-01-14 16:22:01 71

原创 ClickHouse-之数据类型

ClickHouse-之数据类型1 ClickHouse与MySQL、Hive数据类型的对比下面分别是Hive、MySQL、ClickHouse的数据类型的介绍~,我就不一一赘述了Hive数据类型MySQL数据类型ClickHouse数据类型2 ClickHouse数据类型介绍Int类型(有符号的整型,有正负之分)在ClickHouse中类型的生命对大小写敏感,遵循驼峰规则,Int8而不是int8Int8Int16Int32Int64Int128Int25

2021-01-13 11:41:36 289

原创 CentOS 7 安装分布式ClickHouse(3台节点)

CentOS7-之安装分布式Click-House(3台节点)0 前言本文主要介绍如何在CentOS7操作系统上通过.tgz包的方式安装分布式的ClickHouse集群。安装方式有很多种。rpm包安装tgz包安装源码编译安装and so on …1 前提准备在安装之前首先需要在操作系统上进行相关的环境准备及配置,这些环境准备需要在每天节点上执行1.1 修改系统文件的限制首先分别修改以下2个文件,必须是root权限执行,如果是其它用户必须在sudoer中配置管理员权限。sudo

2021-01-12 10:35:00 54

原创 Hadoop-之重要生产参数调优(yarn调度资源容量配置,namenode心跳及请求线程池大小配置)

Hadoop之-生产参数调优NameNode是HDFS的集群管理的主节点,用于处理用户请求与DataNode心跳,该节点维护一个线程池来处理这些请求,这个县城池的参数可以通过参数进行控制。vim hdfs-site.xml<!--该参数的默认值为10,也就是会初始化10个线程来处理请求--><!--官方的推荐是20*log(cluster nums),该值以对数的方式趋势进行增加--><!--The number of Namenode RPC server th

2021-01-11 16:02:50 48

原创 Hadoop-之性能测试(基准测试)

Hadoop-之性能测试(基准测试)Hadoop的基准测试一般是在集群搭建完成之后,在各个参数设置合理的情况下进行基准测试(有点类似于kafka的读写性能测试),基准测试比较耗时间,因为涉及到集群的性能压榨,那么下面就开始进行基准测试吧。测试内容如下。写性能IO测试读性能IO测试Mapreduce计算能力测试1 写性能测试#向HDFS写10个128M的文件,其中10根据集群的规模来测试,集群同时能跑多少个map taskhadoop jar /opt/module/hadoop-2.7.

2021-01-11 15:45:04 78 1

原创 GreenPlum-之官网文档阅读指南(教你如何看逛官网)

GreenPlum-之官网文档阅读指南(教你如何看逛官网)GP官网:https://greenplum.org/当然GP还有自己的中文官网,可以通过在微信公众号或者其它的渠道进行关注,对英文没障碍的还是建议观看英文官网,进一步提升自己的阅读实践能力,拓宽语法与专业词汇量其实还是非常有用的。0 前言现在萌新们都没有养成一个阅读官网的习惯,或者说在调研一门技术之前无从下手,官网其实都已经很详细的给大家做了归类,这些归类通常包括以下几个方面。产品介绍社区与博客安装包下载路径官方文档培训入口

2021-01-10 13:34:24 92 1

原创 Hadoop-之配置LZO压缩完整手册

Hadoop-之配置LZO压缩完整手册1 前言HADOOP本身除了GIP、DEFLATE、BZIP2等压缩之外是不支持LZO压缩的,所以我们加入需要让HDFS支持LZO(一种可切分的压缩形式,压缩率也很低)压缩,我们需要引入Twitter的Hadoop-LZO,参考地址为:https://github.com/twitter/hadoop-lzo/2 hadoop-lzo的编译-构建与配置流程2.1 环境准备maven下载安装,环境变量,修改阿里云镜像gcc-c++zlib-

2021-01-09 16:13:12 77 1

原创 Hadoop-之数据均衡

Hadoop-之数据均衡操作数据的不均衡可能发生在集群的不同节点上,也可能发生在同个节点的不同磁盘上,我们为了作数据的均衡是一定会设计到数据的迁移与传输的。可能是跨节点,也可能是跨磁盘。1 节点之间的均衡hadoop默认提供数据均衡的shell脚本,访问路径如下/opt/module/hadoop-2.7.7/sbin/start-balancer.sh切记在集群空闲的时候进行操作,不然的话rpc跨节点网络传输很考费资源,可能造成集群任务长时间获取不到资源而运行失败。# start-banl

2021-01-09 14:25:57 51 1

原创 Hadoop -之历史服务器的配置与启动&日志聚集

Hadoop -之历史服务器的配置与启动&日志聚集具体配置可以上官网搜寻:https://hadoop.apache.org/docs/r2.10.1/hadoop-mapreduce-client/hadoop-mapreduce-client-core1 history server配置开启历史服务器,我们可以在官方网址里面寻找对应的配置选项,以下是核心的配置选项,我们通过vim mapred-site.xml来进行配置<!--vim mapred-site.xml,添加下面2个选

2021-01-09 12:46:56 42

原创 postgreSQL(GP)编程-之语法指南示例、数据结构(需google搜索)

you can find it this way,old babies~~~https://www.postgresqltutorial.com/postgresql-any/

2021-01-08 22:51:50 58 1

原创 GreenPlum[postgreSQL]之-Grouping Sets、grouping()函数、cube方式

GreenPlum[postgreSQL]之-Grouping Sets前言grouping sets是为了简化代码而设计的一种风格,通常可以将不同纬度的统计数据放在同一个视图或者表中,有点类似于cube立方体的风格。参考网址:https://www.postgresqltutorial.com/postgresql-grouping-sets/1 需求现有以下数据,其中brand\segment是纬度,我们需要根据这2个纬度算出所有维度组合下的所有的sum()度量metrix。DROP TAB

2021-01-08 22:31:34 64

原创 数仓常用的刷数shell脚本(限制之间范围)

数仓常用的刷数shell脚本(限制之间范围)#!/bin/bashEXPORT_START_DATE=$1EXPORT_END_DATE=$2#确定刷数的起始、结束时间from_date=$(date -d ${EXPORT_START_DATE} +%F)to_date=$(date -d ${EXPORT_END_DATE} +%F)echo $from_datei=$from_datewhile [[ $i < `date -d "+1 day $to_date" +%Y-

2021-01-08 15:34:26 43

原创 oracle、sqlServer、postgreSQL、greenplum递归查询、递归视图

sqlServer、postgreSQL、greenplum递归查询参考博客:https://blog.csdn.net/wenzhihui_2010/article/details/43935019递归查询通常可用作将有层级关系的数据进行扁平化展示,如组织机构,包含关系等1 测试数据创建--创建表create table tb(id varchar(3) , pid varchar(3) , name varchar(10)); --插入测试数据insert into tb value

2020-12-30 11:17:37 74

原创 GreenPlum(postgreSQL)自定义查询函数

GreenPlum(postgreSQL)自定义查询函数具体可以参考postgreSQL的官网:自定义函数and others1 基本语法如下CREATE [OR REPLACE] FUNCTION name ( [ [argmode] [argname] argtype [ { DEFAULT | = } defexpr ] [, ...] ] ) [ RETURNS { [ SETOF ] rettype | TABLE ([{ argname arg

2020-12-29 17:19:38 90

原创 Kafka-之消息传输保障(传输语意、幂等、事务以及代码示例)

Kafka-之消息传输保障(传输语意、幂等、事务以及代码示例)1 消息传输语义(保障)不管是Kafka还是其它的消息队列,对消息传输的保障都是基于不同层级的语义At most once至多一次,消息很可能会丢失,但是绝不会出现重复传输At least once至少一次,消息不可能丢失,但是可能会出现重复传输exactly once精准一次,消息不可能丢失,也不可能重复传输对于生产者而言,一旦消息被成功提交到kafka的日志文件,由于多副本机制的存在,那么这条消息就不

2020-12-29 11:43:58 86

原创 kafka-之分段日志文件索引(偏移量索引、时间戳索引)

kafka-之分段日志文件索引0 前言kafka的日志文件索引是用来快速检索日志的,在kafka中日志索引分为2种类,kafka中索引以稀疏索引的方式构建索引,它不保证每个消息在索引文件中都存在索引,每当写入一定数量log.index.interval.bytes default(4KB = 4096)的时候,偏移量索引以及时间戳索引各自创建一个对应的索引项,我们可以通过该参数调整索引的密度。通过MappedByteBuffer将索引文件映射到内存中。偏移量索引baseoffset.index文

2020-12-28 16:18:55 259

原创 Kafka-之数据日志存储(格式变化与压缩)

Kafka-之数据日志存储1 kafka的日志布局kafka的数据存储是基于文件系统的,kafka的数据以日志的形式存储在磁盘上,具体的日志布局可以看下图。很明显,kafka以topic来进行数据划分,我们可以通过在server.properties文件指定log.dirs来指定数据日志存储#指定日志存储路径log.dirs=/tmp/kafka-logs1,tmp/kafka-logs2,....虽说kafka按照topic进行数据划分,但是在物理存储上还是按照topic-partitio

2020-12-28 10:43:55 214

原创 Kafka-之控制器(Controller选举、leader选举)

Kafka-之控制器(控制器选举,leader选举)1 控制器是什么,如何选举kafka控制器管理着整个集群中分区以及副本的状态,控制器的选举需要依赖于Zookeeper,在kafka集群启动的时候,会在ZK中创建一个临时节点(EPHEMERAL)/controller,在每个Broker启动的时候,都会先去访问ZK中的这个节点,如果不存在Broker就会则创建这个节点,先到先得称为Controller,其它Broker当访问这个节点的时候,如果读取到brokerid不等于-1,那么说明Control

2020-12-18 16:03:21 290 4

原创 Kafka-之分区数确定(生产者、消费者性能测试)

Kafka-之分区数确定(生产者、消费者性能测试)kafka-topic的分区数的确定到目前为止没有权威的答案,但是可以肯定一点,kafka的分区数与性能表现有着直接的关系。那么这篇我就和读者大大们谈谈kafka的生产者和消费者的性能测试。kafka-producer-perf-test.sh用于测试生产者的性能kafka-consumer-perf-test.sh用于测试消费者性能1 kafka-producer-pref-test.sh测试简单的测试脚本执行方式如下:bi

2020-12-16 18:04:17 99

原创 Kafka-之分区管理(优先副本选举、分区重分配、副本复制限流,修改副本因子)

Kafka-之分区管理(优先副本选举、分区重分配、副本复制限流,修改副本因子)kafka内部的分区管理可以从几个方面去介绍。1、优先副本的选举2、分区重新分配3、复制限流4、修改副本因子1 优先副本选举优先副本选举主要是为了让所有的分区尽可能分布在不同的broker上的一种机制,那么什么是优先副本?优先副本是AR种的第一个副本,这个副本通常为leader,假如这个副本不是leader,那么这个副本就是非优先副本。假如我们通过以下方式创建一个topic_a,分区数为3,副本因子也为3./ka

2020-12-16 15:13:06 181

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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