自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

dgqg1223

一个程序老菜鸟的学习笔记

  • 博客(60)
  • 资源 (4)
  • 收藏
  • 关注

原创 Canal Scala API Demo

原理官方网站canal 模拟 MySQL slave 的交互协议,伪装自己为 MySQL slave ,向 MySQL master 发送dump 协议MySQL master 收到 dump 请求,开始推送 binary log 给 slave (即 canal )canal 解析 binary log 对象(原始为 byte 流)当前的 canal 支持源端 MySQL 版本包括 5.1.x , 5.5.x , 5.6.x , 5.7.x , 8.0.x安装mysql canall

2020-10-01 20:00:23 259 1

原创 SparkStreaming自定义数据源(即接收器)

自定义数据源(即接收器)实现接收sockey的接收器 集成Receiver抽象类 ,具体使用细节可查看Receiver 代码中注释部分有详细说明onStart启动一个子线程来结束数据接收到的数据通过调用store(data)传递给其他执行器进行处理如果发生异常,会重启接收器(按照顺序调用onStop,onStart)onStop释放资源package com.chen.sparksteaming.apiimport java.io.{BufferedReader, Inp

2020-08-27 17:41:00 353

原创 SparkSql自定义强类型、弱类型聚合函数

自定义弱类型package com.chen.sparksql.funcimport org.apache.spark.sql.expressions.{MutableAggregationBuffer, UserDefinedAggregateFunction}import org.apache.spark.sql.types.{DataType, DoubleType, LongType, StructField, StructType}import org.apache.spark.sql.

2020-08-25 16:42:41 457

原创 Spark广播变量与累加器

累加器解决了在Driver端创建的变量在Task中修改但最终不会修改Driver端的变量(Task修改的只是副本,不会同步回Execute)解决了共享变量写的问题当需要一个累加变量时,再Driver 定义作为计数的变量,会复制到Executor中RDD执行时候通过代码对其进行累加,但是结果不会被收集回Driver中,使用累加器可以把Executor的变量值收集回Driver并进行累加注意:累加器再Driver端定义初始化。1.6版本在Excutor不能使用.value 获取累加器的值Demoi

2020-08-23 17:22:00 144

原创 Spark分区器:HashParititioner、RandPartitioner、自定义分区器

HashParititioner聚合算子默认分区器 通过hash值分区RandPartitioner范围分区器排序类算子默认分区器使用水塘抽样算法(抽样概率相同),对数据进行抽样来划分数据边界数组:数组长度由分区数决定,通过水塘抽样计算出数据切分的范围 存放在边界数组中源码:/*** A [[org.apache.spark.Partitioner]] that partitions sortable records by range into roughly* equal range

2020-08-20 18:13:36 261

原创 Spark 使用 Kyro 序列化

序列化解决Driver端创建的对象 在Execute端传输问题方式一:使用Java Serializable接口【Spark默认】优点:简单,不需要额外的工作java自带,方便缺点:序列化速度慢序列化后size比较大hadoop中采取了自定义序列化 …Writable方式二: Kyro 第三方序列化【Spark支持】优点:序列化后的size 大概是Serializable 十分之一 val conf = new SparkConf().setAppName("Demo

2020-08-19 22:51:52 244

原创 scala之模式匹配

一句话解释类似java中switch ,比switch更强大,可以匹配类型基本使用格式:要匹配的值 match {case 选项 => 操作} val a = 10 val b = 20 val op: String = StdIn.readLine("请输入一个运算符:") val result:Int = op match { case "+" => a + b case "-" =>

2020-08-18 15:33:34 78

原创 scala之偏函数

一句话解释只对于偏爱的值进行处理,其他值不进行处理定义偏函数定义方式一【不推荐该方式】 val list1 = List(1, 2, 3, "a", true) // 实现 PartialFunction[输入类型,输出类型]{} val f = new PartialFunction[Any, Int] { // 只对返回true的时候交给apply处理 override def isDefinedAt(x: Any): Boolean = x.

2020-08-18 14:57:37 113

原创 Spark 基础知识点、三种模式安装

环境说明centos 7.5spark-2.1.1Spark 内置模块[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4F5IqC5c-1597227561772)(spark知识点/New Mockup 1.png)]Spark local 模式安装直接解压即可,无需配置(spark-2.1.1-bin-hadoop2.7.tgz 集成hadoop环境包 )local 模式下测试# 提交任务 使用spark案例 计算pibin/spark-submit -

2020-08-12 18:20:17 402

原创 Hive函数Demo3:排序函数

/*数据集孙悟空 语文 87孙悟空 数学 95孙悟空 英语 68大海 语文 94大海 数学 56大海 英语 84宋宋 语文 64宋宋 数学 86宋宋 英语 84婷婷 语文 65婷婷 数学 85婷婷 英语 78*/-- 创建表create table score(name string,subject string,score int)row format delimited fields terminated by "\t";--导入数据load data

2020-08-07 23:01:00 122

原创 Hive函数之窗口(开窗)函数

官方介绍LanguageManual WindowingAndAnalytics一句话解释开窗作用使用开窗函数可以在一个select语句中且不使用子查询的情况下,显示同一指标不同维度的数据。(这么说虽然片面,但是便于理解,实际开窗函数的作用远远超出该描述,具体请看下面案例理解)开窗函数格式格式:over(partition by 要分组字段**,order by** 要排序的字段 window_clause)其中 partition by ,order by ,window_clause 均为可

2020-08-07 21:35:49 865

原创 Hive函数Demo2:字符串拼接函数、炸裂函数、侧写、行专列、列转行

/* 相关函数*/-- 拼接字符串,输入多个字符串select concat('a','b','c');-- 拼接字符串并指定分隔符select concat_ws(',','a','b','c');-- 炸裂函数 拆分数组为一行多列 map为2行多列select explode(array('a','b','c'));-- 侧写 用法:LATERAL VIEW udtf(expression) tableAlias AS columnAlias-- 解释 用于和split, ex

2020-08-06 23:44:33 893

原创 Hive函数Demo1:基础常用函数

-- 查看说明desc function extended 函数名/**/。-- 返回时间戳select unix_timestamp();select unix_timestamp('2019-01-01 01:01:01');select unix_timestamp('20190101 010101','yyyyMMdd HHmmss');-- 时间戳转时间select from_unixtime(1546304461,'yyyy-MM-dd HH:mm:ss');-- 返回当

2020-08-06 19:48:26 125

原创 Hive自定义UDF&UDTF函数

pom.xml <properties> <project.build.sourceEncoding>UTF8</project.build.sourceEncoding> <hive.version>1.2.1</hive.version> </properties> <repositories> <repository>

2020-08-03 14:55:43 363

原创 hive安装Tez计算引擎

环境CentOS 7hive 1.2.1apache-tez-0.9.1安装步骤上传taz到hdfs中hadoop fs -mkdir /tezhadoop fs -put apache-tez-0.9.1-bin.tar.gz /tez解压缩tar -zxvf apache-tez-0.9.1-bin.tar.gz -C /opt修改名称mv /opt/apache-tez-0.9.1-bin /opt/tez-0.9.1在hive/conf目录下创建tez-

2020-07-30 14:41:01 188

转载 Kafka 资料

https://www.cnblogs.com/huxi2b/p/6223228.html

2020-07-23 16:03:01 93

原创 Flume之JMX监控三种方式

监控作用在flume运行期间,我们可以通过监控channel当前容量和已使用容量来调整channel是否需要扩容通过source向channel中put成功了多少event和sink从channel中take成功了多少个event,比较数据是否存在积压做出调整(通过sink组,和batchsize参数可增加sink读取速度)监控原理通过Java提供的JMX技术(java monitor extension)即 java监控扩展模块,是J2EE定义的14种技术规范之一。JMX可以帮助我们监控一个

2020-07-22 21:58:35 1183

原创 Flume自定义source、interceptor、sink

官方文档SourceSinkMaven 依赖<dependency> <groupId>org.apache.flume</groupId> <artifactId>flume-ng-core</artifactId> <version>1.7.0</version></dependency>自定义Source代码import org.apache.flume.Con

2020-07-22 19:59:59 131

原创 Kafka 自带测试脚本进行性能测试

压力测试用Kafka官方自带的脚本,对Kafka进行压测。Kafka压测时,可以查看到哪个地方出现了瓶颈(CPU,内存,网络IO)。一般都是网络IO达到瓶颈。producer 压力测试bin/kafka-producer-perf-test.sh --topic test --record-size 100 --num-records 100000 --throughput 1000 --producer-props bootstrap.servers=dw-node01:9092,dw-node0

2020-07-20 20:57:23 390

原创 Kafka辅助工具:KafkaManager、KafkaMonitor、KafkaTool

Kafka 辅助工具目前主流有3中 Kafka辅助工具KafkaManagerKafkaMonitorKafkaToolKafkaManagerhttps://github.com/yahoo/CMAK解压 kafka-manager-1.3.3.22.zip修改conf/application.confkafka-manager.zkhosts= 为 zookepper地址编写启动脚本nohup /opt/kafka-manager-1.3.3.22/bin/kafka-ma

2020-07-20 19:23:11 594

原创 Hadoop 安装LZO压缩、创建LZO索引

编译LZOhadoop本身并不支持lzo压缩,故需要使用twitter提供的hadoop-lzo开源组件。hadoop-lzo需依赖hadoop和lzo进行编译,编译步骤如下。Hadoop支持LZO环境准备maven(下载安装,配置环境变量,修改sitting.xml加阿里云镜像)gcc-c++zlib-develautoconfautomakelibtool通过yum安装即可,yum -y install gcc-c++ lzo-devel zlib-devel autoconf

2020-07-20 15:13:35 237

原创 hadoop压缩方式deflate、gzip、bzip2、lzo、snappy

关于压缩压缩会减少磁盘空间、磁盘IO以及网络IO的负担,但会增加CPU负担在任意的MapReduce阶段都可以启动压缩使用原则运算密集型的job,少用压缩IO密集型的Job,多用压缩MR支持的压缩压缩格式Hadoop集成算法扩展名是否可splic更换压缩格式是否需要修改代码DEFLATE直接使用DEFLATE.deflate否不需要修改Gzip直接使用DEFLATE.gz否不需要修改bzip2直接使用bzip2.bz2是

2020-07-20 13:35:22 1980

原创 CentOS7.5安装Mysql5.5.6

环境centos 7.5MySQL-server-5.6.24-1.el6.x86_64.rpm卸载rpm -qa|grep -i mysql 查找mysql 是否已经安装rpm -ev 卸载查询到的软件包名依赖需要安装 perl依赖,否则安装完成后无法自动部署yum -y install autoconf安装mysql出现以下提示 安装成功[root@dw-node02 mysql-libs]# rpm -ivh MySQL-server-5.6.24-1.el6.x86_64.rp

2020-07-19 22:08:14 78

原创 hadoop基准性能测试

HDFS写性能测试内容:向HDFS集群写10个128m的文件hadoop jar /opt/hadoop-2.7.2/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.2-tests.jar TestDFSIO -write -nrFiles 10 -fileSize 128MB20/07/17 08:09:34 INFO fs.TestDFSIO: ----- TestDFSIO ----- : write20/07/17

2020-07-17 19:03:26 271

原创 大数据常用端口

Hadoop50070:HDFS WEB UI端口8020 : 高可用的HDFS RPC端口9000 : 非高可用的HDFS RPC端口8088 : Yarn 的WEB UI 接口19888:jobhistory WEB UI端口8485 : JournalNode 的RPC端口8019 : ZKFC端口Zookeeper2181 : 客户端连接zookeeper的端口2888 : zookeeper集群内通讯使用,Leader监听此端口3888 : zookeeper端口 用于选举l

2020-07-16 13:34:41 80

原创 Hive知识点:索引、分区表、分桶表、抽样查询

索引在指定列上建立索引,会产生一张索引表(Hive的一张物理表),里面的字段包括,索引列的值、该值对应的HDFS文件路径、该值在文件中的偏移量;分区表 PARTITIONE BY将表中的数据,分散到表目录下的多个子目录(分区目录)中目的在执行查询时只查询某些子目录中的数据加快查询效率导入数据时候需要指定向哪个分区导入数据相当于在表中增加一列分区列分区 使用 “列名=值” 的形式已有数据 可通过自动修复分区分桶表 CLUSTERED BY和MR中分区是一个概念,把数据分散到多个文件中分桶

2020-07-15 20:31:34 383

原创 Hive 练习题

hive 蚂蚁森林https://blog.csdn.net/qq_34264067/article/details/103157266

2020-07-14 15:51:55 99

原创 Nginx生成日志案例

#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;events { worker_connections 1024;}# load modules compiled as Dynamic Shared Objec.

2020-07-14 15:42:04 303

原创 动态代理与AOP面向切面知识点

一句话描述代理模式是一种设计模式,简单说即是在不改变源码的情况下,实现对目标对象的功能扩展。Java的三种代理模式1. 静态代理/** * 创建接口 */public interface ISinger { void sing();}/** * 目标对象实现了某一接口 */public class Singer implements ISinger { public void sing() { System.out.println("唱一首歌");

2020-07-14 13:35:42 210

原创 MR知识点

MapReduce中常用组件Mapper :map阶段核心处理逻辑Reducer : reducer阶段核心逻辑处理MR 程序必须指定一个输入目录,一个输出目录InputFormat 输入格式FileInputFormat :普通文件DBInputFormat : 处理数据库中的数据SequnceFileInputFileFormat :SequeceFile (hadoop提供的一种文件格式)RecodeReader: 记录读取器,负责从输入格式中读取数据,读取后封

2020-07-10 22:13:41 276

原创 HDFS知识点.md

版本 hadoop-2.7.2HDFS 运行模式core-default.xml 中 fs.defaultFs本地模式 fs,defaultFs=file:/// (默认)分布式模式 fs.defaultFs=hdfs://MR运行模式core-default.xml 中 fs.defaultFs本地模式 mapreduce.framework.name=local (默认)分布式模式 mapreduce.framework.name=yarn本地模式指在本地运行hadoop 配置文件组

2020-07-10 22:13:08 141

原创 linux 常用知识点

新增硬盘# 查看硬盘(已分区的磁盘)df -h# 查看所有磁盘fdisk -l# 分区磁盘fdisk /dev/sdbm #查看帮助n #添加一个新建分区p #创建主分区1 #分区号1-41 #起始磁柱回车 #默认结束磁柱# 格式化mkfs -t ext4 /dev/sdb1# 挂载(临时)mkdir /newdiskmount /dev/sdb1 /newdiskdf -h# 开机自动挂载 blkid /dev/sdb1 #生成磁盘uuidvi /etc/

2020-07-10 22:11:09 85

转载 Python PEP8 编码规范

Python 的代码风格由 PEP 8 描述。这个文档描述了 Python 编程风格的方方面面。在遵守这个文档的条件下,不同程序员编写的 Python 代码可以保持最大程度的相似风格。这样就易于阅读,易于在程序员之间交流。1.变量_xxx,单下划线开头的变量,标明是一个受保护(protected)的变量,原则上不允许直接访问,但外部类还是可以访问到这个变量。这只是程序员之间的一个约定,用于警告说明这是一个私有变量,外部类不要去访问它。class Student(object): def __

2020-06-08 13:00:33 156

原创 资源清单、init容器、检测探针Demo

资源清单格式apiVersion: group/apiversion # 如果没有给定 group 名称,那么默认为 core,可以使用 kubectl apiversions# 获取当前 k8s 版本上所有的 apiVersion 版本信息( 每个版本可能不同 )kind: #资源类别metadata: #资源元数据namenamespacelablesannotations # 主要目的是方便用户阅读查找spec: # 期望的状态(disired state)status:# 当前状

2020-06-04 21:03:08 129

原创 k8s使用docker私有仓库配置并测试k8s集群【简记】

# 在所有节点docker配置文件中加入 私有仓库地址(解决安全认证问题)vi /etc/docker/deamon.json },"insecure-registries": ["https://hub.myhub.com"]}# 重启docker systemctl restart docker# 添加hostvi /etc/host192.168.2.2 hub.myhub.com# 一下操作在私有仓库node进行# 上传 docker-composemv docke

2020-06-04 15:00:09 545

原创 Kubeadm 部署安装

kube-proxy开启ipvs的前置条件modprobe br_netfiltercat > /etc/sysconfig/modules/ipvs.modules <<EOF#!/bin/bashmodprobe -- ip_vsmodprobe -- ip_vs_rrmodprobe -- ip_vs_wrrmodprobe -- ip_vs_shmodprobe -- nf_conntrack_ipv4EOFchmod 755 /etc/sysconfig/mo

2020-06-03 23:06:24 1428

原创 centos7 安装k8s系统设置

设置系统主机名以及 Host 文件的相互解析hostnamectl set-hostname k8s-master01安装依赖包yum install -y conntrack ntpdate ntp ipvsadm ipset jq iptables curl sysstat libseccomp wget vimnet-tools git设置防火墙为 Iptables 并设置空规则systemctl stop firewalld && systemctl disabl

2020-06-03 22:06:52 159

原创 kettle整合CDH hadoop、hive、hbase

环境说明Hadoop 2.6.0cdh5.14.0kettle 8.2准备工作设置hadoop文件系统权限查看hadoop文件系统方式一: 浏览器访问 hadoop namenode地址:50070端口方式二: 通过终端 hadoop fs -ls创建目录 hadoop fs -markdir -p /hadoop/test 查看用户是否有创建权限使用 sudo -u hdfs hadoop fs -chmod -R 777 / 改变hadoop目录访问权限,之后再次创建

2020-05-19 20:33:48 954

原创 完整CDH搭建,适用于Docker下安装CDH

1.1 环境说明CentOS 6.9JDK 1.8CDH 5.14.0Cloudera Manager 5.14.0MySql 5.1.73JDBC mysql-connector-java-5.1.32-bin.jar1.2 CDH相关下载cloudera 官网地址cloudera manager 离线安装的tar包下载地址cloudera-manager-installer.bin下载地址CDH下载地址1.3 虚拟机节点CDH Server :cdh-serverCDH

2020-05-19 17:16:10 1331

转载 两种方法迁移 Docker 的默认安装(存储)目录【转载】

如果是通过 Ubuntu 的 apt-get 安装的 Docker,默认的安装目录应该是:/var/lib/docker。为了完全确定,可以使用以下的命令查询真正的安装路径: sudo docker info | grep "Docker Root Dir"前置工作下文以 /store/software/docker 这个路径作为要迁移的新 Docker 安装(存储)目录在开始迁移之前,首先复制原 Docker 安装(存储)目录到新的路径下: cp -a /var/lib/docker /

2020-05-12 20:58:10 3075

80x86汇编语言程序设计教程

80x86汇编语言程序设计教程 系统安全必备 滴水文档 汇编文档

2019-01-16

myeclipse.10.0

myeclipse.10.0破解、操作简单;按照步骤;绝对可激活

2019-01-16

寺冈条码机驱动_UP46_UP462_UP463_GP-470

寺冈条码机驱动_UP46_UP462_UP463_GP-470 【简单介绍】 基本参数打印方式: 热敏、热转印 打印分辨率: 203-300 接口: usb,并口 支持网络打印: 支持 品牌: 寺冈Teraoka 型号: GP-470 简单方便,实现功能多样,详情 Mr xian

2019-01-16

RealVNC(WinVNC)v5.3.1(带序列号)

RealVNC(WinVNC)是一套功能强大轻量型的远程控制计算机软件,通过VNC(Virtual Network Computing)帮助你可以使用另一台电脑桌面上的一个简单的客户端程序("VNC查看器")。支持跨平台进行一世相关的操作,例如,你可以使用VNC查看Windows桌面及Linux或在家里及办公室的Mac电脑。非常的简单,它更是一个Java的浏览器,可以远程控制及使任何桌面,而无需安装软件,所有的操作都在浏览器内完成。

2019-01-16

空空如也

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

TA关注的人

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