- 博客(158)
- 资源 (1)
- 收藏
- 关注
原创 Maven支持scala
1.支持将scala代码编译成class文件2.声明绑定道mavne的compile阶段3.scala打包功能<build> <plugins> <!-- 该插件用于将 Scala 代码编译成 class 文件 --> <plugin> <groupId>net.alchim31.maven</groupId> <arti
2022-03-08 10:31:24
314
原创 Spark分析和推荐系统
Step1Driverimport org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Job;import org.apache.hadoop.mapreduce.lib.input.FileI
2021-12-12 11:13:11
1278
原创 tez的 Container killed on request. Exit code is 143问题
今天遇到了一个tez的错误记录一下:在导入数据的时候出现了下面错误, 起初我以为是内存问题, 但一想,插入那么多数据都没问题,怎么插入几条数据就出现问题了呢?Container killed on request. Exit code is 143Container exited with a non-zero exit code 143Failing this attempt. Failing the application解决分析: 我查了查原表的数据和分区, 才发现原表的这个分区根本就没
2021-12-01 09:21:32
1111
原创 Flink的内部原理
1. 四大组件的作用作业管理器(JobManager):JobManager 会向资源管理器(ResourceManager)请求执行任务必要的资源,也就是任务管理器(TaskManager)上 的插槽(slot),一旦获取到足够的资源, 就会将 '执行图’发送到运行的他们的TaskManager上,进行执行资源管理器(ResourceManager):主要负责管理任务管理器(TaskManager)的插槽(slot),TaskManger 插槽是 Flink 中 定义的处理资源单元, 启动的tas
2021-11-27 13:48:59
1765
转载 flink的两种yarn模式
Flink on Yarn模式部署始末:Flink的Standalone和on Yarn模式都属于集群运行模式,但是有很大的不同,在实际环境中,使用Flink on Yarn模式者居多。 那么使用on yarn模式到底好在哪呢? &...
2021-11-26 19:06:41
2611
原创 window10更改为linux 服务器
这篇文章主要是为了将老式的win10系统,转换linux的服务器,前几天安装的时候找资料, 遭到了碰壁,这里主要是想记录一下!!!1. 制作一个启动盘找一个u盘进行格式化使用UltraISO工具将linux的iso镜像进行提取到新的刚刚格式化好的磁盘中(UltraISO试用版的就足够使用了,这个就自己去下载吧,很简单)最好再创建一个文件夹,存放一个完整的iso镜像,使用的linux图形化安装界面配置安装源的时候,会用到2. 进入到blos界面,使用u盘安装系统这一步因为各个版本的机器不太
2021-11-26 17:44:19
1747
原创 命令行运行jar包的常见方式
java 命令行运行jar包的两种方式:第一种方式: 如果没有指定主函数的话,需要使用这种方式进行运行java -classpath xxxxx.jar 主函数全类名 <args>第二种方式:如果使用带有 主函数的打包方式,可以使用这种,较为简便,但还是推荐上面那一种方式java -jar xxxxx.jar <args>hadoop 命令行运行jar包的方式:hadoop jar xxxxx.jar 主函数全类名 <args>flin
2021-11-26 17:12:38
12209
转载 Error:Connection activation failed: No suitable device found for this connection
centos 网路出现错误CentOS的启动出错:systemctl start network出现错误:Error:Connection activation failed: No suitable device found for this connection解决办法:chkconfig NetworkManager offchkconfig network onservice NetworkManager stopservice network start...
2021-11-22 09:58:08
205
原创 数仓分层基础理论
1 .为什么要分层?数据仓库为什么要进行分层呢? 当然肯定是有好处的把复杂的任务进行简单化, 拆分为一个一个的小任务,方便错的时候进行定位通过中间的分层数据,能极大的提高一次性结果的复用性,减少数据的重复性计算隔离开原始数据, 与原始数据解耦开来,提高数据的安全性2. 数据集市与数据仓库的区别(面试)?数据集市其实就是一种微型的数据仓库, 不管是主题,还是历史数据,都要小于数据仓库,是部门级的,只能为某个部门的人员提供服务,而数据仓库则是企业级的,数据可以为企业做一个决策支持3.数仓理论
2021-11-20 19:27:52
1566
原创 002__Hive的tez引擎的配置步骤
第一步:由于各个集群之间都需要使用tez,而将tez分发到各个集群,又很浪费磁盘空间,所以我们可以将 tez的tar.gz包上传到 hdfs上面供各个机器使用hadoop fs -mkdir /tezhadoop fs -put /opt/software/apache-tez-0.9.1-bin.tar.gz /tez第二步:将tez的tar.gz包进行解压后, 进入到hive/conf下vim tez-site.xml<?xml version="1.0" encod
2021-11-20 18:47:01
2524
原创 flume后台启动的脚本
以启动file_flume_kafkaChannel.conf Flume配置服务为例:case $1 in"start") for i in hadoop101 hadoop102 do echo "$i正在启动flume服务------------" ssh $i "nohup /opt/module/flume/bin/flume-ng agent -c /opt/module/flume/conf/ -n a1 -f /
2021-11-18 13:41:28
778
3
原创 linux中的黑洞文件
linux上的黑洞文件/dev/null说明: 为什么称呼他为黑洞文件呢?那是因为无论我们往里面写多少东西, 他都会消失不见, 所以在很多时候我们会将一些没用的日志文件写入到里面原始写法: 1>/dev/null 2>/dev/null快捷写法: >/dev/null 2>&1解释:0: 用户的输入内容1: 正常的日志信息2: 错误的日志信息场景使用: 一般情况下,当我们看到一些过多的日志信息时,想要将它进行屏蔽,这个时候我们就可以用
2021-11-17 18:22:06
1758
原创 shell登陆和非shell登陆
shell登陆: 其实就是使用账号密码的形式进行登陆linux非shell登陆: 使用ssh的方式进行登陆 linux说明:使用shell登陆的方式是会自动加载/etc/profile文件中的内容,也会去刷新/etc/profile.d/中的所有*.sh文件;而使用非shell登陆并不会去自动加载/etc/profile 文件中的内容,但是会刷新/etc/profile.d/*.sh文件综上所诉: 还是使用将环境放在/etc/profile.d/*.sh的脚本中,更加的方便快捷一点...
2021-11-17 18:14:23
672
原创 hadoop经验调优
说明: 这个参数调优借鉴之尚硅谷课程1. 配置hdfs存储多目录生产环境的磁盘情况问题: 需要增加的磁盘? 如何进行存储说明:HDFS的DataNode节点保存数据的路径由dfs.datanode.data.dir参数决定,其默认值为file://${hadoop.tmp.dir}/dfs/data,若服务器有多个磁盘,必须对该参数进行修改。如服务器磁盘如上图所示,则该参数应修改为如下的值。hdfs-site.xml<property> <name>dfs
2021-11-17 13:19:41
1070
原创 常见的几种推荐系统算法
引入: 随着互联网时代的发展, 数据量的产生越来越来, 如何能够利用起来呢? 我们先来说说最常用的推荐系统几种算法,并且加以区分一丶基于统计学的推荐概述:基于统计学的推荐系统,其实就是对大量的历史数据, 根据自己的业务需求,来获取到想要的信息例如:热门商品的排行, 最近的热门商品排行, 对商品的评分求取平均值得到最优质的商品等等,这些都是对统计学推荐的应用二丶基于协同过滤的推荐概述:基于协同过滤的推荐又分为:基于用户的协同过滤的推荐, 基于物品的协同过滤的推荐,基于(隐语义)模型
2021-11-10 20:32:27
3966
原创 linux 常用脚本模板
集群命令启动脚本:#!/bin/bashif [ $# -lt 1 ]then echo "请放入参数!" exit;ficase $1 in"start")for zk in hadoop202 hadoop203 hadoop204do echo ==========$zk:zookeeper启动======= ssh $zk "/opt/module/zookeeper-3.4.10/bin/zkServer.sh start"done;;"s
2021-10-28 08:53:42
401
原创 flink环境搭建
standalone模式修改,并生效环境变量修改配置文件 vim flink-conf.yamljobmanager.rpc.address: hadoop202 # 将主节点的ip映射名写入修改conf/slaves文件,写入从节点将flink文件进行分发如果要使用hdfs文件系统,需要将jar包放入到 flink根目录/lib下jar包下载通道: 点击进入传送通道百度网盘提取码: 6666进行任务测试: 使用的是hdfs文件系统, 如果使用本地文件系统,需要保证每一台从
2021-10-25 12:04:43
250
原创 推荐系统分类
一丶监督学习概述:通过已有的数据结果,分析训练出一个预测模型,使模型能够对任意给定的输入,对其相应的输出做出一个好的预测。 即: 根据训练集训练出模型, 再根据测试集对结果预测.1.回归模型1.1线性回归概念: 一般用于求一个变量随着另一个变量的变化而变化的情况多元线性回归:现实生活中, 一个变量所受的影响往往不只是会受另一种的变化,而是会受到多种情况的影响,这就需要使用多元线性回归求解的两种方式: 最小二乘法和梯度下降法2.分类模型2.1 k近邻核心思路:在训练集中数据和
2021-10-16 10:53:30
152
原创 python语法总结:
1. 关于np.array的矩阵的运算:简单使用:import numpy as npaArray = np.array([1, 2, 3])#创建一维数组aArray = np.array([(1, 2, 3),(4, 5, 6)])#创建二维数组bArray = np.arange(1, 5, 0.5)#生成浮点数cArray = np.random.random((2, 2))#生成随机数dArray = np.linspace(1, 2, 10, endpoint = False)#创
2021-09-10 23:26:57
115
原创 Redis05_应用问题
缓存穿透问题:特点: 查询太多新的没有的数据,多次请求mysql导致崩溃缓存击穿问题:特点: 多次请求热点key, 热点key正好过期,这个时候会大量请求直接访问数据库,导致崩溃缓存雪崩问题:特点: 同一时间内,导致大量key过期,同时请求数据库;分布式锁问题:问题描述: 单纯的Java API并不能提供分布式锁的能力,只能实现在同一机器上实现锁分布式锁主流的实现方案:基于数据库实现分布式锁基于缓存(Redis等)基于Zookeeper每一种分布式锁解决方案都
2021-09-06 00:56:35
171
原创 Redis04_持久化技术
RDB技术概述: 在指定的时间间隔内将内存中的数据集快照写入磁盘, 也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里执行过程:Redis会单独创建(fork)一个子进程来进行持久化;会先将数据写入到 一个临时文件中,待持久化过程都结束了,再用这个临时文件替换上次持久化好的文件。整个过程中,主进程是不进行任何IO操作的,这就确保了极高的性能 如果需要进行大规模数据的恢复,且对于数据恢复的完整性不是非常敏感,那RDB方式要比AOF方式更加的高效。RDB的缺点是最后一次持久化后
2021-09-04 19:28:03
107
原创 Redis03_事务
概述Redis事务的作用: 就是串联多个命令防止别的命令插队。事务之间的关系:主要分为两种模式: 组队中和执行先来看一下命令:mulit: 发起组队, 将进行的操作写入到事务中exec: 执行事务discard:终止事务的执行事务的错误的两种情况:组队中遇到错误, 全部都会执行失败执行中遇到错误, 其他的继续执行, 错误的就失败图解情况:为什么要有事务呢?答: 为了防止多个客户端对同一条数据作处理, 导致数据紊乱的问题事务冲突的问题怎么解决呢?解决的两种方式:悲
2021-09-03 21:39:02
123
原创 Redis01_安装使用
下载安装包wget http://download.redis.io/releases/redis-6.2.1.tar.gz解压到tar -zxvf redis-6.2.1.tar.gz -C /opt/module因为redis是c/c++ 编写,所以需要c的运行环境,安装tclyum -y install gcc-c++yum -y install tcl编译redis: 默认安装到/usr/local/bin下面主要命令: make: 编译 .
2021-09-02 23:42:05
116
原创 Redis02_数据类型及常用命令
Redis的相关知识:是非关系型数据库: (NOSQL, 主要用于缓存数据,一般情况下, myslq等数据库的并发支持量只有数百~ 1000, 为了单机数据库的高并发问题,就可以使用redis的缓存来解决)可以实现持久化使用单线程+多路IO复用的形式来操作文件对比: 串行处理: 多线程+锁: 单线程+ 多路IO复用常用命令对于Redis的键key的操作命令:keys * :查看当前库所有key (匹配:keys *1)exists key :判断某个key是否存在type
2021-09-02 23:26:49
161
原创 HBase_ 协处理器的实用技巧
场景:为什么要使用协处理器呢?答: 使用hbase内部的组件, 可以提高我们数据的发送保存效率图解:如何使用hbase的协处理器呢?创建类( 继承BaseRegionObserver类),实现prePut或者postPut关联表(在表创建时,就进行关联)将jar包(及依赖jar包) 放到hbase的lib当中,并集群分发注意: 如果使用协处理器之后, 导致HregionServer进程掉线,查看日志,可能是协处理器代码出现问题了实操代码:/** * 协处理器 : 1.创建
2021-08-28 11:29:26
249
原创 自定义Annotation的实用场景和实操代码(hbase交互)
场景注解的实用,当然是为了让我们的代码更具有扩展性, 更加的高大上, 例如将 数据库表与对象添加注解,进行对应.例如:我们可以直接将一条半结构化数据经过处理放到hbase数据库中,但是这样的话,如果列非常多的情况,我们的代码也要很长,但是实用注解配合反射的用法,可以提高扩展性,在数据量大,列多的情况,可以简化我们的代码代码:自定义注解:/*** 规则: 列名为""时, 属性名就是列名*/@Target({ElementType.FIELD})@Retention(RetentionPol
2021-08-27 16:06:00
155
原创 HBase_rowkey的设计
引出问题:Rowkey的设计, 在hbase中是非常的重要的, 会直接影响到我们查询的效率,不好的rowkey的设计也会直接造成数据的热分布长度性 : 长度最好为10-100 位,太长会导致查询的效率和存储的效率, 最好也是8的倍数唯一性 : 最好保证rowkey的设计是唯一的散列性 : 一般防止数据的分区分配不均衡的几种方式3.1 盐值散列: 随机数+时间戳 的方式3.2 字符串反转: 对手机号 或者 时间戳进行 反转3.3 计算分区号: 根据某一特定的值,计.
2021-08-27 00:36:34
132
原创 5.Hive环境搭建
任务概述: 将mysql数据库安装到slave1上,以slave2 为hive服务器, 以master为hive的客户端进行连接服务器1. 安装数据库1.1 安装数据库yum install mysql-community-server1.1开启服务systemctl start mysqldsystemctl status mysql # 查看状态1.3 查看密码: vim /var/log/mysqld.log1.4 登陆后修改密码:set global val
2021-08-22 19:53:55
200
原创 4.搭建hadoop环境(2.X)
1.解压安装2. 配置hadoop环境变量HADOOP_HOME3. 配置Hadoop运行环境JAVA_HOMEhadoop-env.shyarn-env.shhdfs-env.sh将这3个文件中的JAVA_HOME都进行修改,并且直接使用绝对路径不容易出错4.设置全局参数 core-site.xml<!--指定NN的IP为master ,端口号为 9000--><property><name>fs.default.name</name&g
2021-08-22 18:52:57
206
原创 3.搭建zookeeper
1.解压安装2.配置ZOO系统环境变量(ZOOKEEPER_HOME)3.修改文件名为zoo.cfg4.修改数据存储路径和日志存放路径dataDir=dataLogDir=5.设置集群列表master 1 slave1 2 slave2 3例:server.1=master:2888:38886.创建所需文件夹zkdata 和 zklogdata7.创建myid,写入对应的序号8.启动zookeeper服务zkServer.sh start 启动服务zkServ
2021-08-22 18:41:57
128
原创 2. 搭建前虚拟机环境准备
1.hostnamectl set-hostname 主机名 bash生效2.systemctl stop firewalld3. vim /etc/hosts4-7 时区: tzselect4.1将得到的东西写入TZ配置环境变量4.2写入:server 127.127.1.0fudge 127.127.1.0 stratum 104.3 再修改网段限制4.4 重启 ntpd 服务 : systemctl restart ntpd// 同步时间ntpd
2021-08-22 18:38:34
165
原创 mysql安装启动服务失败问题
8.0版本:问题描述: 依赖安装什么的没问题,使用命令进行初始化的时候就出现问题了 ,mysqld服务也无法启动原因解决:以防止 有mysql残余文件数据, 先去/var/lib/mysql文件夹中删除所有文件直接使用systemctl start mysqld 启动,不能使用 mysqld --initialize --user=mysql命令...
2021-08-22 10:03:22
269
原创 HADOOP常见异常问题
1. yarn和hdfs启动停止问题dfs:HDFS_DATANODE_USER=rootHADOOP_SECURE_DN_USER=hdfsHDFS_NAMENODE_USER=rootHDFS_SECONDARYNAMENODE_USER=rootyarn:RN_RESOURCEMANAGER_USER=rootHADOOP_SECURE_DN_USER=yarnYARN_NODEMANAGER_USER=rootYARN_RESOURCEMANAGER_USER=root2.
2021-08-19 22:44:22
294
原创 3.__使用xpath和wordcount代码
xpath的基本使用:#前提: pip install requests ; pip install lxml # 先启动 service mysql start service apache2 start 开启mysql和apache2服务# 导入requests库 import requests# 根据 url获取到对象 response = requests.get("https://www.cnblogs.com/lone5wolf/p/10905339.html")
2021-08-19 20:00:53
119
原创 001__Hadoop搭建前环境准备
1.安装yum源原因:因为centos7自带的yum源可能更新比较慢,下载速度慢, 比赛的时候会给我们提供好yum源的相关文件操作:常规操作: 将备份/etc/yum.repos.d/CentOS-Base.repo和epel.repo 文件,然后下载腾讯, 阿里等等多种yum源的其中之一比赛操作:将准备好的yum源文件,放在/etc/yum.repos.d文件下面或者使用wget来进行下载:示例: 阿里云wget -O /etc/yum.repos.d/CentOS-Base.repo
2021-08-13 22:48:00
1281
3
原创 2.__hadoop环境搭建相关
1. hadoop动态添加/删除节点(hadoop2.x版本的)1. 添加节点先将待添加节点的一切其他配置准备好, ssh, ip映射修改所有的节点的slaves文件,添加新的启动新节点的进程hadoop-daemon.sh start datanodeyarn-daemon.sh start nodemanager#主节点刷新[root@slave-004 hadoop]# hdfs dfsadmin -refreshNodes#均衡block[root@
2021-08-13 22:47:45
164
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅