自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 资源 (6)
  • 收藏
  • 关注

原创 Canal实时监控mysql数据库

1. canal原理概述 *** canal将自己伪装成mysql的从节点,当mysql的binlog日志发生改变,作为从节点的canal服务端会发生dump行为, 拿到日志变化的数据,然后通过canal客户端进行交互获取到变化数据,进行实时处理 2. 实现条件 *** mysql5以上、mysql作为主节点开启binlog日志功能 2.1 修改mysql配置文件 vi /etc/my.cnf [client] user=root password= port = 3306 socket = /

2021-03-06 12:51:17 2259 2

原创 Kafka面试集结

1. Kafka的哪些设计让他有如此高的性能 1.1 分布式 1.2 顺序写磁盘(减少磁盘寻指针的过程) 1.3 零拷贝(内存读写不过代码) 2. Kafka Controller如何根据offset查找相应的消息 1.1 二分法先在index文件定位 1.2 然后查找log文件数据 3. Kafka有哪些选举 1.1 Controller的资源争夺 1.2 leader的ISR选举:根据数据同步的时间快慢 4. Kafka重复消费、遗漏消费 1.1 重复消费: 先处理数据,后提交offse

2021-03-04 00:19:25 354 3

原创 ***实现Kafka完全不重复消费或者丢失消费

1. 存在原因:丢失消费/重复消费 1 自动提交offset: 1.1 当自动提交时间为1s时,间隔时间达到1s,offset(100)已经提交,但是数据处理尚未完成(只处理了80)出错了(挂了),此时从新启动后会从已经提交的offset(100)开始消费处理,那么81-100这些数据就未处理,导致丢失消费 1.2 当自动提交时间为3s时,数据1s已经处理完了一批,突然挂了,由于提交时间未到,offset未提交,重新启动时,会重复处理已经处理过的数据,导致重复消费 2 官方手动提交(与上雷同问题) 2

2021-03-02 00:26:21 1331 5

原创 Kafka系统学习

1. 概念 1. Kafka是一个分布式的基于发布/订阅的消息队列,应用于大数据实时处理。 1.1 消息队列就是为了让消费者跟生产者解耦,实现高效,但是安全性肯定降低,需要额外处理。 1.2 大数据一般处理流程:日志收集者(flume) ---> Kafka ---> 消息消费者(spark、flink)。 1.3 消息队列分两种: 1.3.1 点对点(一对一) 1.3.2 发布/订阅(一对多) 2. 架构 #mermaid-svg-hRlFqWswHqAu39I1 .label

2021-01-11 20:49:41 1123 3

原创 python3安装分布式ray集群

分布式ray

2022-12-23 17:53:29 1397

原创 Linux安装python3

python3安装

2022-12-23 10:50:00 878

原创 cdh6安装

前提安装了mysql、jdk、scala 创建所需数据库 ## amon create database amon default character set utf8; grant all on amon.* to 'amon'@'%' identified by 'amon'; ## hive create database hive default character set utf8; grant all on hive.* to 'hive'@'%' identified by 'hive'.

2021-06-15 11:26:31 472 1

原创 Linux实现主从时间同步服务

各节点安装ntp服务 yum install ntp # 如果是离线 可以自己下载ntp服务安装包安装 修改ntp服务配置文件 vi /etc/ntp.conf 3. 关闭各个从节点的ntpd服务 systemctl stop ntpd systemctl disable ntpd 各个从节点同步主节点时间 ntpdate cdh-master 设置每日凌晨0点同步时间 crontab -e 0 0 * * * usr/sbin/ntpd cdh-master ..

2021-06-13 13:44:17 428

原创 Linux永久关闭防火墙以及关闭selinux

永久关闭防火墙 systemctl stop firewalld systemctl disable firewalld iptables -F 永久关闭selinux vi /etc/sysconfig/selinux SELINUX=disabled # 查看是否关闭 sestatus

2021-06-13 13:07:38 462

原创 mac安装虚拟机配置网络主机名

配置网络 永久修改主机名 hostnamectl set-hostname cdh-worker2

2021-06-13 10:49:32 301

原创 hive实际操作

1. 建表语句 create table person( id string, name string, age int ) row format delimited fields terminated by ';' stored as textfile; 2. 加载数据如进表 load data local inpath '/usr/hive/data/person.txt' into table person; ...

2021-05-26 16:45:41 139

原创 kettle整合

1. kettle整合hadoop hdfs 1.1 从Hadoop集群etc/hadoop下拷贝core-site.xml和hdfs-site.xml 1.2 放入data-integration/plugins/pentaho-big-data-plugin/hadoop-configurations/cdh510下面 1.3 修改data-integration/plugins/pentaho-big-data-plugin/plugin.properties 指定hadoop配置文件识别目录:act

2021-05-26 16:45:23 199

原创 kettle学习

1. kettle安装部署 1.1 安装包下载 链接: https://pan.baidu.com/s/1AhxnpUzuHTGaOESAWHxNvQ 密码: sppw 1.2 windows安装 运行Spoon.bat 1.3 mac安装 运行Spoon.sh 1.4 Linux安装 直接解压 2. 实际使用 2.1 先在windows或者mac开发好转换或者作业的工作流文件 2.2 然后将工作流文件放在Linux上直行即可 2.2.1 pan.sh 执行转换文件 ./pan.sh -file:

2021-05-25 15:30:38 195

原创 大数据面试小结

hdfs 1. hdfs读流程: 1.1 程序提交写请求给客户端 1.2 client对数据进行block切分 1.3 向namenode寻求数据写入的位置datanodes 1.4 client获取到datanodes信息后,开始向datanode写数据以及副本同步 1.5 写完后向程序反馈写完相应 java HashMap: 数组+链表+红黑树(jdk8) 1.1. 线程不安全 1.2. 结构Array(Entry1<T,T>->Entry<T,T&g..

2021-04-22 01:43:26 254

原创 logparser使用:解析nginx-access.log文件

1. java-maven加入依赖 <dependency> <groupId>nl.basjes.parse.httpdlog</groupId> <artifactId>httpdlog-parser</artifactId> <version>5.7</version> </dependency> 2. 定义log日志格式 2.1 理解nginx的access.log文件 ngin

2021-04-13 23:54:45 1979 1

原创 Canal之HA高可用

1. canal高可用 1.1 canal的HA分为两个部分:clientHA和serverHA 1.2 canal的HA需要借助于zookeeper来实现高可用 1.3 serverHA:针对每一个实例instance要做到同一时间只能有一个处于running状态,其他处于standby状态 1.4 clientHA:同一时间只能有一个client进行接收instance的数据,否则无法保证有序 2. canal serverHA实现 2.1 修改canal server的配置文件canal/conf/

2021-03-17 23:07:52 694 1

原创 shell一键免密互信

#!/bin/bash installpath=$(cd `dirname $0`; pwd) echo "安装路径: ${installpath}" #myip=`ip addr | grep 'state UP' -A2 | tail -n1 | awk '{print $2}' | cut -f1 -d '/'` #echo "当前主机IP: ${myip}" filepath=${installpath}/files echo "由于当前环境还未做免密 所以需要安装远程带密码的工具 sshpass"

2021-03-10 18:03:00 373

原创 shell一键安装hive

#!/bin/bash # 脚本启动方式 bash hive_install.sh 172.16.149.150 3306 root 123456 ipath=/opt/bigdata echo "安装hive集群" installpath=$(cd `dirname $0`; pwd) echo ${installpath} filepath=${installpath}/files echo "解压hive压缩包" tar -xvf ${filepath}/hive.tar.gz > /dev/n

2021-03-10 18:00:56 351

原创 shell一键安装Kafka(3节点)

shell一键部署jdk_三台 shell一键部署Scala_三台 1. 准备好三台已经安装好jdk和scala的机器 172.16.149.150 cdh-master 172.16.149.151 cdh-worker1 172.16.149.152 cdh-worker2 2. 编写代码 #!/bin/bash ipath=/opt/bigdata echo "安装kafka集群" installpath=$(cd `dirname $0`; pwd) echo ${installpath} fil

2021-03-10 17:59:14 310

原创 shell一键安装zookeeper(3节点)

shell一键部署jdk_三台 1. 准备好三台已经安装好jdk的机器 172.16.149.150 cdh-master 172.16.149.151 cdh-worker1 172.16.149.152 cdh-worker2 2. 编写脚本 #!/bin/bash ipath=/opt/bigdata echo "安装zookeeper集群" installpath=$(cd `dirname $0`; pwd) echo ${installpath} filepath=${installpath}

2021-03-10 17:57:38 265

原创 shell一键安装spark(3节点)

shell一键部署jdk_三台 shell一键部署Scala_三台 1. 准备好三台已经安装好jdk和scala的机器 172.16.149.150 cdh-master 172.16.149.151 cdh-worker1 172.16.149.152 cdh-worker2 2. 编写脚本 #!/bin/bash ipath=/opt/bigdata echo "安装spark集群" installpath=$(cd `dirname $0`; pwd) echo ${installpath} fil

2021-03-10 17:45:03 307

原创 shell一键安装hadoop(3节点)

shell一键部署jdk_三台 1. 准备好三台已经安装好jdk的机器 172.16.149.150 cdh-master 172.16.149.151 cdh-worker1 172.16.149.152 cdh-worker2 2. 编写脚本 #!/bin/bash ipath=/opt/bigdata echo "安装hadoop集群" installpath=$(cd `dirname $0`; pwd) filepath=${installpath}/files echo "解压hadoop压缩

2021-03-10 17:41:54 262

原创 canal监控mysql到Kafka(protobuf存储)

紧接上一篇:Canal实时监控mysql数据库 1. canal客户端代码 package com.qu.canal; import com.alibaba.fastjson.JSON; import com.alibaba.otter.canal.client.CanalConnector; import com.alibaba.otter.canal.client.CanalConnectors; import com.alibaba.otter.canal.protocol.CanalEntry;

2021-03-08 01:10:13 667

原创 实时数仓:项目学习

1. 技术选型 *** 当下flink流行度又高、又稳定。成为当下实时计算最优选择 2. 项目分析 2.1 业务数据:一般存储在mysql(需要canal做实时采集) 2.2 日志数据:一般以log文件形式存在,采用日志采集框架flume做实时采集 3. 实现方案 3.1 数据少于20万,可直接通过实时查询mysql,适当对关联字段做索引即可 3.2 数据量比较大,mysql查询时间无法达到查询效果或者实时性太差 4. 实时数仓架构 ...

2021-03-06 11:26:25 2379 6

原创 shell一键部署mysql

1. 创建专门用以执行安装脚本的目录,并在此目录创建压缩文件所需要的目录 mkdir -p /opt/shell/files cd /opt/shell vi mysql_install.sh 2. 编辑shell脚本 #!/bin/bash #离线安装mysql #我们需要安装mysql的目录 ipath="/usr/local" #获取当前脚本目录的路径 $0-shell本身的文件名 installpath=$(cd `dirname $0`; pwd) echo ${installpath} #提前

2021-03-05 16:48:00 402 2

原创 Kafka监控工具kafka-eagle安装使用

1. 修改Kafka启动脚本kafka-server-start.sh,并分发到各节点 if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2g -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccup

2021-03-02 23:36:47 378

原创 shell一键安装Scala(三台)

#!/bin/bash #离线安装scala #我们需要安装scala的目录 ipath="/usr/local" #获取当前脚本目录的路径 $0-shell本身的文件名 installpath=$(cd `dirname $0`; pwd) echo ${installpath} #提前在脚本目录创建files文件夹 上传安装包到该目录 filepath=${installpath}/files j=`whereis scala` #查看是否已经安装scala scala=$(echo ${j} | gr

2021-03-02 11:46:58 261

原创 shell脚本一键安装jdk(三台)

#!/bin/bash #离线安装jdk #我们需要安装jdk的目录 ipath="/usr/local" #获取当前脚本目录的路径 installpath=$(cd `dirname $0`; pwd) echo ${installpath} #提前在脚本目录创建files文件夹 上传安装包到该目录 filepath=${installpath}/files j=`whereis java` #查看是否已经安装jdk java=$(echo ${j} | grep "jdk") echo ${java}

2021-03-02 11:23:41 744

原创 Redis安装(完整版)

1. 检测系统是否已安装g++、gcc rpm -qa | grep gcc-c++ 2. 安装g++、gcc 2.1. 下载安装rpm包 链接: https://pan.baidu.com/s/1-Muqk_KBzzsEs9MooBeHfw 密码: ercb 2.2 上传到/opt/gcc目录下安装 rpm -Uvh *.rpm --nodeps --force 2.3 测试是否安装成功 gcc -v g++ -v 3. 安装redis 3.1 下载解压 tar xzvf redis-

2021-02-24 17:59:29 250

原创 python_surprise_KNNWithMeans_GridSearchCV

# 使用GridSearchCV调整KNNWithMeans算法参数 from surprise import KNNWithMeans from surprise import Dataset from surprise.model_selection import GridSearchCV # Use movielens-100K data = Dataset.load_builtin('ml-100k') param_grid = {'n_epochs': [5, 10], 'lr_all': [

2021-01-11 22:42:12 352

原创 Windows:NodeJs安装、配置cnpm

首先下载node安装包 链接:https://pan.baidu.com/s/1HmZ_m29K31CDiT-plQiZXw 提取码:qdnz 复制这段内容后打开百度网盘手机App,操作更方便哦 一路next,安装完毕 检查安装是否成功 配置node全局模块所在的路径,以及缓存cache的路径 安装cnpm、配置环境变量 npm install -g cnpm --registry=https://registry.npm.taobao.org ...

2020-12-01 22:32:37 343

原创 有趣的ES:解决es返回结果数量限制问题

es返回结果最大10000条 es_sql返回结果最大1000条

2020-10-26 15:29:49 6085

原创 Linux系统为防火墙开启端口

添加端口开启 firewall-cmd --zone=public --add-port=9999/tcp --permanent 查询端口是否开启 firewall-cmd --query-port=9999/tcp 重启防火墙 firewall-cmd --reload 查询所有开启的端口: firewall-cmd --list-port

2020-09-04 15:56:09 250

原创 Mac系统安装brew: Failed to connect to raw.githubusercontent.com port 443: Connection refused

修改hosts sudo vi /etc/hosts 添加如下内容: 199.232.28.133 raw.githubusercontent.com

2020-09-02 17:18:49 196

原创 Fink学习:时间语义与水位线WaterMark

2020-09-02 08:39:57 173

原创 Flink学习:窗口Window

2020-09-02 08:37:57 144

原创 Fink学习:常用Sink实现(KafkaSink、ESSink、ReidsSink、JDBCSink)已测试

1. KafkaSink package com.qu.sink import java.util.Properties import com.qu.source.SensorReading import org.apache.flink.api.common.serialization.SimpleStringSchema import org.apache.flink.streaming.api.scala.StreamExecutionEnvironment import org.apache.f

2020-07-27 22:24:16 966

原创 Flink学习:UDF(map,filter,flatMap)(匿名函数、匿名类、自定义函数、富函数四类实现方式)

1. map算子(匿名函数、匿名类、自定义函数、富函数四类实现方式) package com.qu.udf import com.qu.source.SensorReading import org.apache.flink.api.common.functions.{IterationRuntimeContext, MapFunction, RichMapFunction, RuntimeContext} import org.apache.flink.streaming.api.scala.Strea

2020-07-26 15:41:00 1416

原创 Flink学习:常用transform转换算子API

import com.qu.source.SensorReading import org.apache.flink.streaming.api.scala.{ConnectedStreams, DataStream, KeyedStream, SplitStream, StreamExecutionEnvironment} import org.apache.flink.api.scala._ object TransFormTest { def main(args: Array[String])

2020-07-26 00:57:07 234

原创 Flink学习:Source数据源算子API操作

import java.util.Properties import org.apache.flink.api.common.serialization.SimpleStringSchema import org.apache.flink.streaming.api.scala.StreamExecutionEnvironment import org.apache.flink.api.scala._ import org.apache.flink.streaming.api.functions.sourc

2020-07-26 00:54:03 347

Spark ml pipline交叉验证之线性回归.docx

Spark ml pipline交叉验证之线性回归 工具开发 //创建回归评估器,用于基于训练集的多次训练后的模型选择 //创建交叉验证器,他会把训练集分成NumFolds份,然后在其中(NumFolds-1)份里进行训练 //在其中一份里进行测试,针对上面的每一组参数都会训练出NumFolds个模型,最后选择一个最优的模型 //对最优的模型做一个模型评估

2019-08-10

Spark ml pipline交叉验证之逻辑回归.docx

Spark ml pipline交叉验证之逻辑回归 模型训练 输入参数 训练代码 模型评估 输入参数 评估代码

2019-09-03

Spark ml pipline交叉验证之决策树分类.docx

Spark ml pipline交叉验证之决策树分类 模型训练 输入参数 训练代码 模型评估 输入参数 评估代码

2019-09-03

Spark ml pipline交叉验证之KMeans聚类.docx

Spark ml pipline交叉验证之KMeans聚类 模型训练 输入参数 训练代码 模型评估 输入参数 评估代码

2019-09-03

Spark ml pipline交叉验证之朴素贝叶斯.docx

Spark ml pipline交叉验证之朴素贝叶斯 模型训练 输入参数 训练代码 模型评估 输入参数 评估代码

2019-09-03

Spark ml pipline交叉验证之决策树回归.docx

Spark ml pipline交叉验证之决策树回归 //ML的VectorAssembler是一个transformer,要求数据类型不能是string,将多列数据转化为单列的向量列,比如把age、income等等字段列合并成一个 userFea 向量列,方便后续训练 //创建机器学习工作流 //创建回归评估器,用于基于训练集的多次训练后的模型选择 //获取最大迭代次数和正则参数,一共可以训练出(maxDepths*maxBins)个模型 //创建交叉验证器,他会把训练集分成NumFolds份,然后在其中(NumFolds-1)份里进行训练 //在其中一份里进行测试,针对上面的每一组参数都会训练出NumFolds个模型,最后选择一个最优的模型

2019-08-10

空空如也

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

TA关注的人

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