自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 安装虚拟机踩坑

最近准备重新安装一下虚拟机上的hadoop集群,结果确遇到不少问题,这里总结一下目录修改静态主机名查看防火墙是否关闭映射关系xftp传输文件修改网络的配置文件ssh免密安装mysql出现问题进入系统界面,修改静态主机名首先查看主机名: hostnamectl status修改静态主机名: hostnamectl --static set-hostname 主机名再次查看是否修改成功查看防火墙是否关闭命令:systemctl status fir

2022-03-18 22:53:39 1720

原创 spark wordcount

附上依赖<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.11</artifactId> <version>2.4.5</version></dependency>import org.apache.spark.rdd.RDDimport org.apache.spa.

2022-03-18 13:12:05 1855

原创 spark整合hive

spark sql在编译时是不包含hive表,开启hive依赖后,可以访问hive中的表以及UDF函数通常我们用spark整合hive,说的是spark接管外部已经使用很长时间的hive,里面大大小小的表非常多,为了提高hive的查询效率,会使用spark来代替原来的mapreduce计算引擎,提升计算效率1、在hive的hive-site.xml修改一行配置,增加了这一行配置之后,以后在使用hive之前都需要先启动元数据服务<property><name>hive.

2022-03-09 03:08:12 1156

原创 spark sql idea常规操作

maven依赖<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-sql_2.11</artifactId> <version>2.4.5</version></dependency>1、常规准备1)写代码创建环境2)导入隐式转换3)需要使用到sql的需要先创建视图4)读取..

2022-03-09 01:21:24 396

原创 spark sql笔记1

目录SparkSql的特点DataFrameDataSetSparkSql语法创建DataFrame的方法SQL语法DSL语法RDD、DataFrame、DataSet联系Spark sql的前身是Shark,Shark是一个为Spark设计的大规模数据仓库系统,它与Hive兼容。但是Shark继承了Hive的大且复杂的代码使得Shark很难优化和维护。于是后面就分化出了两个框架,一个是SparkSql,一个是hive on spark与hive和mapred

2022-03-08 15:08:04 2693

原创 flink window API

目录window的类型window API使用方法EventTime乱序数据的处理水位线(Watermark)watermark的传递watermark的使用Windows 是处理无限流的核心。Windows 将流分成有限大小的“桶”,我们可以在这些桶上应用计算。也就是类似spark streaming的默认模式,每隔一段时间,计算前一段时间窗口内的数据。window的类型时间窗口(TimeWindow):滚动时间窗口、滑动时间窗口、会话窗口计数窗口(Cou.

2022-03-07 16:26:00 1697

原创 flink基础笔记2

首先我来把上次的词频统计代码打包上传到集群运行首先来看一看flink的独立集群(standalone)启动命令 start-cluster.sh启动之后就会出现这两个进程,前往网页8081访问

2022-03-06 17:12:39 1072

原创 flink的sink

1

2022-03-06 00:30:41 1203

原创 flink常用算子

官网链接:Apache Flink 1.11 Documentation: 算子目录官网链接:Apache Flink 1.11 Documentation: 算子map算子flatMap算子Filter算子KeyBy算子Reduce算子Aggregations算子Window算子Union算子SideOutPut旁路输出map算子map算子就是将每一条数据,根据map里面的逻辑处理我这里都是将一个单词,转化成kv格式import org...

2022-03-05 17:18:48 435

原创 flink的source

常见的Source可以分为大概4类:1、基于本地集合的 source2、基于文件的 source3、基于网络套接字的 source4、自定义的 source 常见的有 Apache kafka、Amazon Kinesis Streams、RabbitMQ、Twitter Streaming API、Apache NiFi 等,当然你也可以定义自己的 source首先了解一下常见的测试source:也就是上面的前3个package com.zh.sourceimport or

2022-03-04 23:28:44 1321

原创 flink基础笔记1

附上官网链接​​​​​​​​​​​​​Apache Flink: Stateful Computations over Data Streams官方对于flink的解释是:Apache Flink 是一个框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算。Flink 能在所有常见集群环境中运行,并能以内存速度和任意规模进行计算。无边界指的是源源不断地有数据传输过来,有界指得是数据量已知。比如说游戏服务器,他会7*24小时接收来自玩家产生地数据,这算无界流;有界流就比如说我们的读.

2022-03-04 14:09:31 432

原创 flink wordcount

依赖<properties> <flink.version>1.11.2</flink.version> <scala.binary.version>2.11</scala.binary.version> <log4j.version>2.12.1</log4j.version></properties><dependencies><dependency

2022-03-04 12:34:08 261

原创 spark复习

在学习spark之前我们应该已经学习了Scala语法,spark是通过scala语言编写的,对scala语言的支持较好一、spark的搭建模式local:一般用于测试代码和学习的standalone:用的是spark自身的集群,spark自身提供了计算资源,由一个主节点Master和其余的从节点Worker构成提交任务有2种方式,cient(客户端)和cluster(集群)模式,client模式的driver端在本地启动,运行日志也会在本地打印,数据量一大,所有日志拉到一台机器上导致网卡

2022-01-05 21:57:34 1018

原创 spark算子

转换算子和行为算子,懒执行是什么?转换算子:RDD的转换操作是:一个RDD的经过转换操作后,返回一个新的RDD转换算子都是懒执行的,你在里面写好了逻辑,单独一个这样是不会运行的,需要操作算子使用了这些RDD才会执行里面的逻辑行为算子:行为算子用于执行计算并按指定的方式输出结果。行为算子接受 RDD,但是返回非 RDD,即输出一个值或者结果。在 RDD 执行过程中,真正的计算发生在行为算子操作之前。spark程序中有一个操作算子,就会生成相同数量的job懒执行的证明:写个l.

2021-12-30 20:48:53 1869

原创 Scala中的map方法和flatMap方法的区别

map方法和flatMap方法都是根据我们传入的集合,取出里面的内容变成一个新的集合返回但是他们的用法有些区别map方法的返回值是B,也就是自定义的,你想返回啥都可以,可以是一个String,一个数值,一个集合...flatMap方法返回值必须是GenTraversableOnce[B]类型,也就是集合类型,因为flatMap方法有一个扁平化操作,如果返回值不是集合类型,最终结果看起来会很奇怪,可以把返回值设置成一个字符串看看结果是什么样的我写了一个map,里面的key是一个字符串,

2021-12-26 19:49:16 1142

原创 pandas数据简单清洗

数据清洗,第一步对空值的处理import pandas as pddf=pd.read_csv('../data/patient_rate.csv')df

2021-12-20 23:45:05 1218

原创 崩坏三精准池python模拟

最近一周学了python,正好崩坏三出来后崩坏鸭的精准池子,利用列表,字典,随机数匹配范围,简单模拟一下抽卡本次UP武器:重炮:蓝焰银隼0019 2.479%双枪:空无之钥 0.413%太刀:天殛之钥 0.413%大剑:天鹅湖 0.413%拳套:无存之钥 0.413%镰刀:血渊之眸 0.413%骑枪:永寂之赫勒尔 0.413%[4★圣痕]真理之翼套装:布洛妮娅.次生银翼(上、中、下)...

2021-12-20 13:50:07 1205

原创 Scrapy爬虫框架

Scrapy架构Scrapy 是用 Python 实现的一个为了爬取网站数据、提取结构性数据而编写的应用框架。我们可以通过Scrapy快速完成一个爬虫程序这是官网的架构图各部分组件的功能如下:Engine(引擎): 负责Spider、ItemPipeline、Downloader、Scheduler 中间的通讯,信 号、数据传递等。 Scheduler(调度器): 它负责接受引擎发送过来的Request请求,并按照一定的方式进行整理排 列,入队,当引擎需要时,交还给.

2021-12-17 16:06:47 1061

原创 pandas的简单操作

pandas提供了使我们能够快速便捷地处理大量结构化数据,pandas兼具NumPy高性能的数组计算功能以及电子表格和关系型数据库灵活的数据处理功能SeriesSeries 类似表格中的一个列(column),类似于一维数组,可以保存任何数据类型。Series 由索引(index)和列组成,既然有索引就可以通过索引查找对应的值如果我们只传入了值,会自动生从0开始的索引也可以通过手动传入索引numpy中的大部分函数也是可以使用的,比如最大值max()和平均数mea...

2021-12-15 21:45:36 3622

原创 pandas绘制饼图

绘制饼图需要用到matplotlib包,这是我使用的数据,里面记录了关于学生id,name,,age,gender,clazz信息的数据题目要求按照每个班级男生女生比例绘制饼图前置工作是提取出需要的信息,那就是标签,与及需要我们计算的数据这个题目里面需要的就是班级+性别 作为数据的标签,具体的数据就是每个班级的男生女生的人数先 根据班级和性别分组,在count每个分类中数据有多少条clazz_gender_stu=stu.groupby(['clazz','gender'])[

2021-12-15 21:06:06 7344

原创 Numby简单入门操作

Numby是一个用于矩阵化运算、科学计算的python组件,想要使用的话,首先我们要来下载这个包换源在pycharm默认的下载源是国外的,为了下载速度着想,可以换成国内的软件源我们需要在windows的用户目录下创建一个pip的文件夹,里面创建一个pip.ini的文件文件内容如下[global]index-url = http://mirrors.aliyun.com/pypi/simple/[install]trusted-host=mirrors.aliyun.com.

2021-12-14 20:55:32 1096

原创 python函数参数

目录位置参数默认参数关键字参数多值参数:位置参数这是一个求等差数列和的函数,使用必需要传入一个参数n,这就是位置参数def sum(n): sum=0 i=1 while i<=n: sum+=i i+=1 return sumresult=sum(100)print(result)默认参数默认参数就是,我在函数中已经将一个参数提前设置好了值,如果你没有传入这个参数的值,就会用我事先设.

2021-12-13 23:04:47 762

原创 python读写文件

python中读写都是通过open函数完成的这是open方法源码中的参数选项def open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)通常选择三个就可以了file:文件的路径mode: 读,写,创建文件等操作都对应了一个选项字符,通常选读(‘r')或者写('w')就可以了(mode='a' 是在文件末尾追加内容,可以留意一下)读文件有按字节读取.

2021-12-13 21:42:14 429

原创 python打印99乘法表

首先这是最简单的写法:只需要设置成类似java中的样子,内循环中,加上制表符分割,外循环再给上print()换行,for i in range(1,10): for j in range(1,i+1): print(i,'*',j,'=',i*j,end='\t') print()还有一行就可以生成99乘法表的方法,需要运用到下面的三个知识首先来介绍:列表生成式,join方法,和format方法列表生成器列表生成器是Python内置的非...

2021-12-13 20:41:48 963

原创 python数据的容器

目录列表(list)元组(turple)字典(dictiontary)集合(set)列表(list)定义:列表(list)是一个有序的序列结构,序列中的元素可以是不同的数据类型以及四个python容器,list使用的是[ ]特点:可以包含多种数据类型,可以有重复的元素,有序(可以通过索引找到对应的元素),里面的元素可以修改list1=[1,2,3,4,1,2,3,"hello",True,False,1.11,[1,2,3],(1,24,2),{"key":"v

2021-12-12 22:10:43 674

原创 插入排序实现

插入排序:将n个待排序的元素看成一个有序和无序表,第一个元素认定就是有序的,后面的元素一一插入,插入的时候与排序过的元素进行比较放入合适的位置int arr[]={3,4,2,1,5}首先认定第一个元素就是有序的, 未排序表中的元素一一插入,与排序表中的元素比较放入合适的位置3 | 4 ,2 ,1, 53 ,4 | 2 , 1 , 52 , 3 , 4 | 1 , 51 , 2 , 3 , 4 | 51 , 2 , 3 , 4 , 5 |代码实现:还是每次的过程都...

2021-12-12 17:18:24 118

原创 选择排序的实现

1. 工作原理:选择排序是每次在未排序序列中找到最大(小)的元素,然后提到序列的前面arr={6,3,4,8,1}我们来看一个这几个数用选择排序的过程是什么样的吧,我这里就按从小到大的顺序排序(1)首先假定数组第一个元素就是最小的,和后面的进行比较,如果有比他还要小的数,就交换他们的值以及索引,然后一直比较到最后一个,我们记录下这个最小的数的值以索引,与数组第一个元素交换他们的值以及索引1 | 6,3,4,8(2)从第二次开始,我们就上一次的结果出发,假设未排序的序列中第一个元素就是.

2021-12-12 11:05:52 747

原创 冒泡排序实现

冒泡排序大家都很熟悉,他是每次拿开头的元素与后面的元素进行比较,如果遇到比他大的数就交换位置,这样一趟下来就会有一个最大的数到了数组的尾部。下一次进行比较,那些已经被排入到数组末尾的数就不再参与比较有时候看这个双重循环突然有些懵逼了,怎么也想不通,温习的时候可以将每趟排序是什么样的都写下来,再把这个单层循环的方法改进成双重循环加深理解import java.util.Arrays;/** * 实现的过程就是2个相邻的元素进行比较,如果前面的比后面的大,就交换他们两个的位置 * 每一趟的比较

2021-12-11 23:37:34 323

原创 flume使用

1.flume介绍flume是一个实时的、分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。flume的数据流由事件(Event)贯穿始终。事件是Flume的基本数据单位,Event携带日志数据(字节数组形式)并且携带有头信息,Event由Agent外部的Source生成,当Source捕获事件后会进行特定的格式化,然后Source会把事件推入(单个或多个)Channel中。你可以把Channel看作是一个缓冲区,它将保存事件直到Sink处理完该事件。Sink负责将这些信息传输到目标位置2.f

2021-12-09 22:31:08 1755

原创 hbase调优知识点(预分区和rowkey)

一、预分区默认情况下,在创建HBase表的时候会自动创建一个region分区,当导入数据的时候, 所有的HBase客户端都向这一个region写数据,直到这个region足够大了才进行切分。 一种可以加快批量写入速度的方法是通过预先创建一些空的regions,这样当数据写入 HBase时,会按照region分区情况,在集群内做数据的负载均衡。如果知道hbase数据表的key的分布情况,就可以在建表的时候对hbase进行region的预分区。这样做的好处是防止大数据量插入的热点问题,提高数据插入的效率

2021-12-05 21:51:24 1176

原创 java使用hbase过滤器

1.什么是过滤器过滤器可以根据列族、列、版本等更多的条件来对数据进行过滤, 基于 HBase 本身提供的三维有序(行键,列,版本有序),这些过滤器可以高效地完成查询过滤的任务,带有过滤器条件的 RPC 查询请求会把过滤器分发到各个 RegionServer(这是一个服务端过滤器),这样也可以降低网络传输的压力。2.比较运算符 LESS < LESS_OR_EQUAL <= EQUAL = NOT_EQUAL <> GREAT

2021-12-05 20:24:53 3455 1

原创 HBase BulkLoading

参考hive,如果指定文件在hdfs上的存储路径, 已经有文件就会自动加载到表中;hbase的storefile也会在hdfs存储,那么我们应该也可以利用这一点,将数据以这种方式导入到hbase中,但是存放文件的目录不能像hive一样随便,应该是放在、一、定义HBase BulkLoading:它是利用hbase的数据信息按照特定格式存储在hdfs内这一原理,直接生成这种hdfs内存储的数据格式文件,然后上传至合适位置,即完成巨量数据快速入库的办法。配合mapreduce完成,高效便..

2021-12-05 19:35:47 674

原创 hbase中的mapreduce

import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.Path;import org.apache.hadoop.hbase.TableName;import org.apache.hadoop.hbase.client.Result;import org.apache.hadoop.hbase.client.Scan;impo.

2021-12-05 15:17:44 1498

原创 hbase笔记1

1.为什么要使用hbase?我们在学习hbase之前应该对hive有了一个了解,hive是管理存储在hdfs上的数据(离线处理),hive处理数据是通过mapreduce处理,那么假设是100个T的数据,一个maptask如果按block块的大小128m处理, 每个maptask运行时间大概是1-5分钟,就算是1000台机器的集群也能跑个几十天, 他的效率太低所以我们要学习hbase :他是属于半结构化的NoSql,查询效率高,并且可以进行实时查询2.hbase的简介1.HBase.

2021-12-01 20:07:16 1002

原创 hbase通过行键查询多VERSIONS数据

一段非常长的数据,第一个是加密后的用户信息,后面依次是开始时间,结束时间,区县编码,经度,纬度....现在我希望创建一张表,导入这些数据,查询一个用户最新的三次地点经纬度我们就筛选一下数据,传入第一个,第二个,第四个,第五个就行我将每个步骤分开了,下面的测试模块都是在第一个代码中的一、创建连接1、创建一个配置文件, 需要输入zookeeper节点信息,以及你的三台主机名称2、创建连接3、如果需要对表结构操作 则getAdmin;对数据进行操作,则getTableimp.

2021-12-01 16:36:46 1365

原创 hbaseAPI操作

根据自己用的hbase版本 需要导入的依赖<dependencies> <dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-client</artifactId> <version>1.4.6</version> </dependency><

2021-12-01 11:15:46 2389

原创 hive查询语句与mysql不同的地方

1.mysql支持where后面跟子查询select ename from emp where sal>(select sal from emp where ename='SMITH');hive不支持where后面跟子查询:出现一堆错误2.mysql支持非等值连接select * from emp join dept on emp.DEPTNO>dept.DEPTNO;hive不支持非等值连接,我写大于 、小于、不等于 都是不行的h...

2021-11-28 20:03:20 840

原创 hive20道查询例题

网上很多数据库例题都有的两张表:emp和dept 表员工信息表emp:字段:员工id,员工名字,工作岗位,部门经理,受雇日期,薪水,奖金,部门编号部门信息表dept:字段:部门编号,部门名称,部门地点英文名:DEPTNO,DEPTNAME,DEPTADDR建表语句:create table emp( EMPNO int ,ENAME string ,JOB string ,MGR int ,HIREDATE string ,SAL i.

2021-11-28 16:16:25 2295 1

原创 hive用户连续登录天数问题

从左往右依次是用户id 存钱时间 每次存钱的金额我们要求出:用户的连续登录时间,连续登录开始时间,连续登录结束时间,每次连续登录期间存储的总金额,以及中间没有登录的时间这是向表中插入的部分数据:建表语句create table deal_tb( id string ,datestr string ,amount string)row format delimited fields terminated by ',';然后将数...

2021-11-27 20:42:04 647

原创 hive部分函数

目录1.行转列,列转行 2.窗口函数 window子句 4种排名函数3. window as with as1.行转列,列转行行转列:数据来源weight.txt//建表语句create table rowtest( name string, weight array<string>)row format delimited fields ...

2021-11-26 22:26:48 790

空空如也

空空如也

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

TA关注的人

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