自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 PaddleOcr项目的部署

paddleocr项目的部署创建虚拟环境:conda create env_name python=x.x激活虚拟机:activate env_name安装paddlepaddle:python -m pip install paddlepaddle==2.0.0rc1 -i https://mirror.baidu.com/pypi/simple安装shapely包:pip install shapely -i https://mirror.baidu.com/pypi/simple安装Pad

2021-12-01 18:03:22 302

原创 post和get真正真正真正...的区别

其实post和get都是http协议两种请求,而http是基于TCP/IP如何在万维网中进行数据通信的协议。所以post和get也都是基于TCP协议通信的,那他们到底有何不同?TCP就类似一个载体,而get post put delete就是形式上的定义,get把传送的数据放在了url上 ,post把传送的数据放在了requrest body里面是比较含蓄的携带但是最重要的区别还在于,get是一趟运输生成一个数据包,而post是两趟运输生成两个数据包,get在一趟中会把http header 和dat

2021-12-01 17:44:45 1779 1

原创 JavaScript初识

1、JavaScript的历史Netscape(网景)在最初将其脚本语言命名为LiveScript,是布兰登.艾克发明的。后来Netscape在与Sun合作之后将其改名为JavaScript。JavaScript最初受Java启发而开始设计的,目的之一就是“看上去像Java”,因此语法上有类似之处,一些名称和命名规范也借自Java。JavaScript与Java名称上的近似,是当时Netscape为了营销考虑与Sun微系统达成协议的结果。Java和JavaScript的关系就像张雨和张雨生的关系,只是名字

2021-09-02 18:25:10 134

原创 Flink入门

1.定义核心是用java和scala编写的框架和分布式处理引擎java api scala api,用于对无界(实时流数据)和有界数据流(离线数据也称为批量数据处理)进行有状态计算2.数据过程处理数据过程抽象为三个过程:source ->Transform -> Sink3.架构设计4.相关术语物理部署层-deploy层:负责解决Flink的部署模式问题,Runtime核心层:是Flink分布式计算框架的核心实现层,负责对上层不同接口提供基础服务。将DataStream和Data

2021-09-01 19:20:33 200

原创 Hadoop的缓存机制

1、分布式缓存一个最重要的应用就是在进行join操作的时候,如果一个表很大,另一个表很小,我们就可以将这个小表进行广播处理,即每个计算节点上都存一份,然后进行map端的连接操作,经过我的实验验证,这种情况下处理效率大大高于一般的reduce端join,广播处理就运用到了分布式缓存的技术。2、DistributedCache将拷贝缓存的文件到Slave节点在任何Job在节点上执行之前,文件在每个Job中只会被拷贝一次,缓存的归档文件会被在Slave节点中解压缩。将本地文件复制到HDFS中去,接着Client

2021-09-01 19:17:33 416

原创 Mapreduce的排序以及排序发生的阶段

1.排序的分类:(1)部分排序:MapReduce根据输入记录的键对数据集排序。保证输出的每个文件内部排序。(2)全排序:如何用Hadoop产生一个全局排序的文件?最简单的方法是使用一个分区。但该方法在处理大型文件时效率极低,因为一台机器必须处理所有输出文件,从而完全丧失了MapReduce所提供的并行架构。替代方案:首先创建一系列排好序的文件;其次,串联这些文件;最后,生成一个全局排序的文件。主要思路是使用一个分区来描述输出的全局排序。例如:可以为待分析文件创建3个分区,在第一分区中,记录的单词

2021-09-01 19:15:55 564

原创 MapTask和ReduceTask工作机制

(1)Read阶段:Map Task通过用户编写的RecordReader,从输入InputSplit中解析出一个个key/value。(2)Map阶段:该节点主要是将解析出的key/value交给用户编写map()函数处理,并产生一系列新的key/value。(3)Collect收集阶段:在用户编写map()函数中,当数据处理完成后,一般会调用OutputCollector.collect()输出结果。在该函数内部,它会将生成的key/value分区(调用Partitioner),并写入一个环形内存缓

2021-09-01 19:14:18 130

原创 hadoop序列化和反序列化

1.序列化和反序列化(1)序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储(持久化)和网络传输。(2)反序列化就是将收到字节序列(或其他数据传输协议)或者是硬盘的持久化数据,转换成内存中的对象。(3)Java的序列化是一个重量级序列化框架(Serializable),一个对象被序列化后,会附带很多额外的信息(各种校验信息,header,继承体系等),不便于在网络中高效传输。所以,hadoop自己开发了一套序列化机制(Writable),精简、高效。2.自定义bean对象要想序

2021-09-01 19:12:11 563

原创 redis

1.redis是什么redis是一个高性能的key-value内存型数据库2.特点:数据持久化,将数据保存在磁盘中,重启自动再次加载进行使用支持key-value类型的数据操作,还提供list,set,zset,hash等数据结构的存储支持数据的主从备份,采用master-slave模式的主从备份实现数据块的分布式存储和响应读写性能高所有操作均为原子性操作三种运行模式 单机部署 主备部署 分布式部署3.组件 MemoryCache-kv型缓存数据块:单进程多线程模式

2021-09-01 19:03:04 96

原创 Kafka

1.定义kafka是高吞吐量的分布式、支持分区(partition)、多副本(replication)、基于zookeeper协调的信息系统。2.专业术语1)Message:消息数据kafka的数据实体,组件Message Queue消息队列MQ2)Broker:kafka包含一个或多个服务器3)Topic:Kafka集群的消息都有一个类别,这个类别被称为Topic,相当于给一类消息管道起个名字4)partition:每个topic包含一个或多个partition,每个partition均会有三

2021-09-01 19:00:24 96

原创 覆写和多态

1.覆写覆写是子类和父类有一样的方法名,参数类别返回值都一样,此方法特指成员方法,且不能用于更低的访问权限,不能有更宽泛的异常1.1 优点: 满足当前需求错误越来越少使用范围越来越广功能越来越强1.2 final是修饰符,表示最终的 不可修改的final修饰的类不能被继承final修饰的成员方法不能被覆写final修饰的变量没有默认值,必须赋值且整个生命周期都不能被更改2.多态多态是父类类型创建引用类型变量指向子类创建的对象多态的三种形式2.1直接变量发生多态父类 变量 =

2021-09-01 18:57:36 143

原创 IO流的分类

1.流是什么数据传递的统称 流2.分类按数据处理数据类型:字符流 字节流 InputStream/OutputStream Reader/Writer按流向的方向:输入流 输出流按功能的不同:节点流 处理流3.转换流InputStream 字节输入流转为字符输出流4.缓冲流BufferedReaderBufferedWriter5.打印流6.shujuliu...

2021-09-01 18:57:04 104

原创 SparkStreaming

接收实时输入数据流并将数据分成批处理,然后由SparkCore引擎处理,以批量生成最终结果流1)build.sbt中添加spark-streaming依赖2)从SparkConf 开始3)指定运行模式.setMaster("local[]") setAppName("")4) 初始化ssc StreamingContext5) 从端口中读取文本数据ssc.socketTextStream6) 将DStream打平处理(将离散的的rdd进行打平处理)7)把单列的的word转换我饿双列kv结构

2021-09-01 18:56:12 105

原创 spark sql

spark处理结构化数据的模块(json,parquet,avro,csv)与基础RDD的API不同,Spark SQL中提供的接口将提供给更多关于结构化数据和计算的信息,并针对这些信息,进行额外的处理优化1.Spark Sql操作方式SparkSql shellDataFrames API :spark代码面向DF编程DataSets API:spark代码面向DS编程 数据抽象类型面向程序接口对接的操作:通过JDBC、ODBC等方式操作SparkSql2.SparkSql shell 操作

2021-08-31 16:52:22 316

原创 spark算子

1.MapReduce只有2个算子,Map和Reduce,绝大多数应用场景下,均需要复杂编码才能达到用户需求,而spark有八十多个算子2.转换算子:此种算子不触发提交作业,只有作业被提交后才会真正启动转换计算3.value型转换算子:4.一对一:map算子:给定一个输入通过map函数映到成一个新的元素输出flatMap算子:给定一个输入,将返回的所有结果打平成一个一维集合结构mapPartitions算子glom算子:以分区为单位,将每个分区的值形成一个数组5.多对一:union算子:两个R

2021-08-31 16:50:58 125

原创 spark入门

1.spark是什么spark为大规模数据处理而设计的快速通用的计算引擎。2.特点速度快,内存计算下 spark比hadoop快100倍易用性:80多个高级运算符 支持java,scala,Python,R,sql通用性:提供大量库,例如sql,dataframes等 可在同一个应用程序无缝编写程序支持多种资源管理器:hadoop、yarn、apache、mesos3.spark生态圈4.spark core架构设计图4.1相关术语1)RDD:弹性分布式数据集,是一组只读、可分区的分

2021-08-31 16:46:41 155

原创 hive是什么

1.hive是什么是hadoop应用层的数据仓库架构,面向分析。用的是3.1版本 市面很多还是2.x流程:在userInterface处有三个接口进行交互,面向命令的Hive CLI、Hive jdbc的Hive Client 、web交互的(很少用)HWI–>核心(两大部分四小块)Drive–sql parser对sql语句语法检查–优化–执行2.shell命令:hiveshow databases;use 数据库名;show tsbles;insert into 表名 value

2021-08-31 16:38:59 112

原创 hadoop

1.发展史:2009-2012 1.x 没有hasp,存储的数据较少2013-2017 2.x 加入yarn 进入了成熟阶段,被市面上普遍使用2017-至今 3.x 对2.x进行了升华,加速计算 实时计算核心组件:hdfs mapredduce yarn2.分布HDFS:分布式海量数据存储功能yarn:提供资源调度和任务管理功能MapReduce:分布式并行编程模型和计算框架Hive:提供数据摘要和查询数据仓库Streaming: 解决非 Java 开发人员使用 Hadoop 平

2021-08-31 16:37:16 117

原创 hdfs基础

1.特点:1)高容错、高可用性:利用备份和心跳自检快速恢复2)流式数据访问:批量的顺序处理,提高吞吐量3)弹性存储:灵活的增加或减少存储节点4)简单一致性模型:实现一次性写多次读的访问模式5)移动计算而非移动数据:对于大文件存储移动计算的成本更低6)协议和接口多样性:为上层应用提高多种接口,通常自己会有专用接口7)多样的数据管理功能:数据的压缩、数据加密、数据缓存、存储配额等都分配了多样的管理功能2.HDFS组件NameNode:记录文件如何分割成数据块以及数据存储到集群的哪个节点上。读写

2021-08-31 16:32:31 112

原创 Linux常用命令

一、基础命令1.用户相关添加用户 useradd [用户名]切换用户 su [用户名]查看当前登录的用户 whoami修改密码 passwd [用户名]2.系统相关关闭服务器 poweroff重启服务器 reboot切换目录 cd /…查看文件或子目录 ls3.文件相关在指定目录下创建文件夹 mkdir在该路径下创建一个文件 touch查看文件 cat [文件]向文件追加内容 echo “追加的内容” >> [文件名]拷贝 cp

2021-08-31 16:26:09 73

原创 Linux环境与简介

1.简述Linux服务器的NAT和桥接两种网络链接模式区别和联系NAT:虚拟机的网卡连接到宿主的VMnet8上。此时系统的NAT Service服务就充当了路由器的作用,负责将虚拟机发到VMnet8的包进行地址进行转换之后发到实际的网络上,再将实际网络上返回的包进行地址的包进行地址转换后通过VMnet8发送给虚拟机。桥接:这种方式下,虚拟机就像一台真正的计算机一样,直接连接到实际的网络上,与宿主机没有任何联系2.简述Linux文件操作的常用命令及作用,不低于10个用户:用户添加:useradd 用户

2021-08-31 16:24:27 177

原创 comparator比较器

可以让集合中的元素按照某个规则进行排序在源码中体现了,先判断是否有compare() 如果没有再判断是否有compareTo()Comparator<?super K> cpr = comparator;if(cpr != null){ do{parent = t; cmp = cpr.compare(key,t.key); if(cmp < 0) t = t.left; else if(cmp > 0) t = t.right; else return

2021-08-31 16:07:03 242

原创 java的异常机制

@TOC异常机制1.1 是什么 就是错误的一种说法 是java中提供的一种识别及相应错误的一种机制,有效的使用异常,可以使我们的程序更加健壮,易于调试 导致异常的原因 : 1 用户输入非法数据 2 要找的文件不存在 3 网络中断 4 内存溢出如果不解决,就会导致程序生命周期终止(错误代码之后的代码都不执行了1.2TryCatch1.2.1 第一种用法try{ FileInputStream fis = new FileInputStream("文件路径"); System.o

2021-08-31 15:56:39 76

原创 程序、进程、线程

1.定义程序是完成特定任务用某种语言编写的一组指令的集合,一段静态的代码,静态对象。进程 是程序的一次执行过程,或是正在运行的一个程序,是一个动态的过程,有它自身的产生、存在和消亡的过程。线程:进程的进一步细化**2.**一个java应用程序 java.exe至少有三个线程:main() gc()垃圾回收线程 异常处理线程3.并发和并行并行:多个CPU执行多个任务并发:一个CPU来回的切换同时执行多个任务4.多线程的优点单线程完成多个任务时间比多个线程完成的时间段。但是多线程提高应

2021-04-19 22:02:32 107 1

原创 数组

1.数组1.1 基于底层的数据结构,任何语言都有用于存储多个元素,是线性的空间是连续的,内存对象:栈内存指向对内存对象1.2 Java.util.Arrays类是Java提供操作的工具类型1.3 length:保存当前数组的长度1.4索引:采用第一个元素作为数组地址,通过偏移量查找1.5 声明静态声明:数据类型[] 变量={}动态声明:数据...

2021-04-13 12:00:29 61

原创 List,ste

1.List1.1特性有序可重复ArrayList:底层是Object[] 数组随机查询效率高,随机删除效率低,默认初始化时10,扩大之后是原来的1.5倍,并且是第一次添加数据的时候进行默认长度设置,只new的时候,不添加数据,则长度为0,LinkList:底层是双向链表,随机查询效率低,随机删除效率高1.2ArrayList方法:.add();尾部添加,也可以指定位置添加.set();更改指定位置元素.get(); 根据索引获得值.contains();是否包含.remove();删

2021-04-13 11:56:33 79

原创 集合,迭代器

1.集合集合位于java.util包中集合长度不固定且不能方基本数据类型(若要存放基本数据类型一定要装箱成对应的基本类型包装类)只能存放对象的引用1.1继承体系 iterator---Collection----List(ArrayList类 和LinkList类) iterator---Collection----Set(HashSet类 和SortedSet接口---treeset类)2.迭代器迭代器是一种模式又称光标,可使序列类型的数据结构遍历行为与被遍历的对象分离2.1迭代器的

2021-04-12 20:53:18 83

原创 面向对象,构造器,

1.面向对象面向对象和面向过程都是解决问题的思路,或者是程序设计范型,只是侧重点不同面向对象的基础也是面向过程,只是面向对象把具体的实现细节给封装了,让外界无法直接获取优点 :易于维护、可扩展性、可重用性2.构造器a.创建对象 b.初始化成员属性如果类中没有声明构造方法则有一个默认的公共的无参构造构造方法重载和方法重载一样语法:【权限修饰符】 类名(参数列表){方法体}成员方法名也可以和类名相同构造方法没有返回值3.类和对象同样的属性形成类,不同的属性形成不同的对象4.实例

2021-03-30 20:52:36 77

原创 循环

1.switchswitch(整型、字符串){case 值:代码;break;case 值:代码;break;…default:代码;}2.breakswitch每个分支必须有break 否则会case穿透3.循环3.1循环三要素起始值;终止条件;步长3.2 for又称 计数循环3.3嵌套循环3.4While又称真假循环,某个条件为真的时候执行,在集合学习时用得多。while(boolean表达式){代码;}3.5 Do while能保证代码至少执行一次

2021-03-24 19:49:25 107

原创 数据类型

1.数据类型分类注意:小数默认是double 整数默认是int型。float声明方式需要在值后面追加F/f,boolean不参与任何转换byte–short–int—long—float—double,混合运算时,byte,short,int,char任意一种或多种进行运算结果都是int。2… 变量和常量2.1 常量/字面量/直接量常量:在整个生命周期中值不可更改final修饰的变量 final int i = 2;字面量也叫常量又叫直接量,比如直接打印的system.out.pri

2021-03-23 19:36:57 76

原创 java基础

1.1EclipseIDE集成环境,提高开发效率,降低出错率1.2Eclipse的设置保存的时候,或者重新打开软件的时候,自动编译所有类,生成class文件字体设置:Window——>General——>Appearance——>colors——>Basic——>Text Font1.3Eclipse的使用构建项目:右键new——>java project或者other中搜索Java project删除项目: 右键delete(有两种一种是基于界面的显示的删

2021-03-22 19:33:38 74

原创 今日份只是总结(关于JAVA)

这里写自定义目录标题1.1EclipseIDE集成环境,提高开发效率,降低出错率1.2Eclipse的设置保存的时候,或者重新打开软件的时候,自动编译所有类,生成class文件字体设置:Window——>General——>Appearance——>colors——>Basic——>Text Font1.3Eclipse的使用构建项目:右键new——>java project或者other中搜索Java project删除项目: 右键delete(有两种一

2020-12-30 18:50:55 79

空空如也

空空如也

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

TA关注的人

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