自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 nginx各种代理配置

nginx各种代理配置,注意路径有无斜杠的区别。

2022-11-28 19:42:40 1535 1

原创 一篇很好的机器学习介绍

机器学习这个词是让人疑惑的,首先它是英文名称Machine Learning(简称ML)的直译,在计算界Machine一般指计算机。这个名字使用了拟人的手法,说明了这门技术是让机器“学习”的技术。但是计算机是死的,怎么可能像人类一样“学习”呢?传统上如果我们想让计算机工作,我们给它一串指令,然后它遵照这个指令一步步执行下去。有因有果,非常明确。但这样的方式在机器学习中行不通。机器学习根本不接受你输入的指令,相反,它接受你输入的数据!也就是说,机器学习是一种让计算机利用数据而不是指令来进行各种工作的方法。

2022-11-28 19:15:17 196

原创 微信小程序获取openid、sessionKey

按照微信开放文档,服务端拿到小程序发送的code,去微信服务器换取openid。HttpClientUtils见。获取accessToken。

2022-11-28 18:55:48 885

原创 Java httpClient请求工具包

封装了一些HttpClient常用请求。

2022-11-28 18:44:54 320

原创 Anaconda之导出/导出配置好的虚拟环境

对于好不容易配置好的虚拟环境,将其中的包及相应版本号等导出备份,这样我们要在另一台电脑配置相同的虚拟环境,或者对该虚拟环境进行复现就十分方便。

2022-09-30 15:59:05 4438 1

原创 Shell

HOME 、 $PWD 、 $SHELL 、 $USER 等(1)定义变量:变量=值(2)撤销变量:unset 变量(3)声明静态变量:readonly变量,注意:不能unset(1)变量名称可以由字母、数字和下划线组成,但是不能以数字开头,环境变量名建议大写。(2)等号两侧不能有空格(3)在bash中,变量默认类型都是字符串类型,无法直接进行数值运算。(4)变量的值如果有空格,需要使用双引号或单引号括起来。#定义函数 [ function ] funname [() ] {

2022-09-30 11:05:43 1585

原创 python处理nc文件中的一些问题

依赖较多使用anaconda方便一些。主要使用xarray库处理。用到了两个方法,读取和拼接。在anaconda环境中。

2022-09-16 22:00:03 534

原创 Hadoop序列化

序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储到磁盘(持久化)和网络传输。反序列化就是将收到字节序列(或其他数据传输协议)或者是磁盘的持久化数据,转换成内存中的对象。在企业开发中往往常用的基本序列化类型不能满足所有需求,比如在Hadoop框架内部传递一个bean对象,那么该对象就需要实现序列化接口。具体实现bean对象序列化步骤如下7步。(1)必须实现Writable接口(2)反序列化时,需要反射调用空参构造函数,所以必须有空参构造super();}...

2022-08-31 17:20:23 90

原创 MapReduce概述

MapReduce是一个分布式运算程序的编程框架,是用户开发“基于Hadoop的数据分析应用”的核心框架。MapReduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。...

2022-08-31 17:06:37 93

原创 rz命令未找到

在centos7最小安装时,找不到rz命令。

2022-08-28 17:10:26 3111

原创 NameNode和SecondaryNameNode、DataNode

这样又会带来新的问题,当在内存中的元数据更新时,如果同时更新FsImage,就会导致效率过低,但如果不更新,就会发生一致性问题,一旦NameNode节点断电,就会产生数据丢失。但是,如果长时间添加数据到Edits中,会导致该文件数据过大,效率降低,而且一旦断电,恢复元数据需要的时间过长。但如果只存在内存中,一旦断电,元数据丢失,整个集群就无法工作了。(1)一个数据块在DataNode上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。...

2022-08-24 15:25:11 129

转载 HDFS的读写流程

(7)客户端开始往dn1上传第一个Block(先从磁盘读取数据放到一个本地内存缓存),以Packet为单位,dn1收到一个Packet就会传给dn2,dn2传给dn3;(1)客户端通过DistributedFileSystem向NameNode请求下载文件,NameNode通过查询元数据,找到文件块所在的DataNode地址。(5)客户端通过FSDataOutputStream模块请求dn1上传数据,dn1收到请求会继续调用dn2,然后dn2调用dn3,将这个通信管道建立完成。(重复执行3-7步)。

2022-08-24 15:14:47 115

原创 HDFS的API操作

参数优先级排序:(1)客户端代码中设置的值 >(2)ClassPath下的用户自定义配置文件 >(3)然后是服务器的自定义配置(xxx-site.xml) >(4)服务器的默认配置(xxx-default.xml)客户端去操作HDFS时,是有一个用户身份的。默认情况下,HDFS客户端API会从采用Windows默认用户访问HDFS,会报权限异常错误。注意:如果执行上面代码,下载不了文件,有可能是你电脑的微软支持的运行库少,需要安装一下微软运行库。查看文件名称、权限、长度、块信息。

2022-08-24 15:05:15 1307

原创 HDFS的Shell操作(开发重点)

这里设置的副本数只是记录在NameNode的元数据中,是否真的会有这么多副本,还得看DataNode的数量。因为目前只有3台设备,最多也就3个副本,只有节点数的增加到10台时,副本数才能达到10。hadoop fs 具体命令 OR hdfs dfs 具体命令。

2022-08-24 14:56:16 128

原创 HDFS概述

随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统。HDFS只是分布式文件管理系统中的一种。HDFS(Hadoop Distributed File System),它是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。HDFS的使用场景:适合一次写入,多次读出的场景。

2022-08-24 14:45:32 417

原创 hadoop入门

学习笔记

2022-08-22 13:01:12 2178

原创 Hadoop运行环境搭建(一)

hadoop环境搭建

2022-08-22 12:32:16 853

原创 hadoop概述

hadoop概述

2022-07-14 20:33:20 339

原创 PLSQL

9、触发器的 helloworld: 编写一个触发器, 在向 emp 表中插入记录时, 打印 ‘helloworld’对给定部门(作为输入参数)的员工进行加薪操作, 若其到公司的时间在 (?13、编写一个触发器, 在对 my_emp 记录进行删除的时候, 在 my_emp_bak 表中备份对应的记录。7、定义一个存储过程: 获取给定部门的工资总和(通过 out 参数), 要求:部门号和工资总额定义为参数。10、行级触发器: 每更新 employees 表中的一条记录, 都会导致触发器执行。

2022-03-15 09:52:38 283

原创 CentOS 7 开放端口

CentOS 7 开放端口firewall-cmd --zone=public --add-port=6379/tcp --permanent# 重启防火墙firewall-cmd --reload# 查看端口是否开放firewall-cmd --query-port=6379/tcp

2021-04-12 23:30:32 105

原创 CentOS 7 使用yum安装MySQL5.6

CentOS 7 使用yum安装MySQL5.6检查系统是否已安装mysql# 返回空值,说明没安装rpm -qa | grep mysql新版CentOS7,默认数据库Mariadb,直接执行yum install mysql会更新Mariadb,并不会安装Mysql先卸载已安装Mariadb再安装mysql# 查看Mariadb版本rpm -qa|grep -i mariadb# 卸载rpm -qa|grep mariadb|xargs rpm -e --nodeps下载安装包

2021-04-12 23:27:49 415

原创 CentOS7 不能联网问题

CentOS7 不能联网问题修改网卡配置文件cd /etc/sysconfig/network-scripts/ lsvi ifcfg-ens32# 开机启动网卡ONBOOT=yes# DNS解析问题# 在文件末尾添加 下边是阿里的DNSDNS1=233.5.5.5DNS2=223.6.6.6重启网络服务service network restart...

2021-04-12 23:24:42 78

原创 Hadoop全分布式配置

用户名三台机子要一致主节点 hadoop0从节点 hadoop1、hadoop11、创建/usr/program目录su - #切换到到root用户cd /usr/localmkdir programchown -R hadoop0:hadoop program/ 给hadoop用户访问权限 hadoop0:主机名 hadoop:用户名2、编辑hosts文件vi /etc/hosts#添加以下内容192.168.159.100 hadoop0192.168.159.101 h

2021-04-10 20:19:25 303

原创 批量图片旋转 python

from PIL import Imageimport os# 图片旋转# new_path转后后图片完整路径,photo_path原始完整路径(带文件名)def change_photos(new_path, photo_path): im = Image.open(photo_path) im_rotate = im.rotate(-90, expand=1) # expand=1 表示原图直接旋转 im_rotate.save(new_path)path =.

2020-10-05 16:06:52 705

原创 pip换源(使用命令行)

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple国内源:阿里云 http://mirrors.aliyun.com/pypi/simple/中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/豆瓣(douban) http://pypi.douban.com/simple/清华大学 https://pypi.tuna.tsinghua.edu.cn/s.

2020-09-24 18:20:49 2860 1

原创 Springboot 注解

Springboot 注解1. @SpringBootApplication申明让spring boot自动给程序进行必要的配置,这个配置等同于:@Configuration ,@EnableAutoConfiguration 和 @ComponentScan 三个配置。2. @Controller用于定义控制器类,在spring项目中由控制器负责将用户发来的URL请求转发到对应的服务接口(service层),一般这个注解在类中,通常方法需要配合注解@RequestMapping。3. @Resp

2020-09-24 14:42:32 71

原创 图片压缩、修改尺寸python实现

图片压缩、修改尺寸python实现from PIL import Imageimport osdef get_size(file): # 获取文件大小:KB size = os.path.getsize(file) return size / 1024def get_outfile(infile, outfile): if outfile: return outfile dir, suffix = os.path.splitext(infi

2020-09-24 13:58:40 448

原创 视频抽帧Java实现

视频抽帧Java实现依赖:<!-- https://mvnrepository.com/artifact/org.bytedeco/javacv --> <dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv</artifactId> <version>1.0&l

2020-09-24 13:57:29 3111

转载 FastDFS 安装步骤

FastDFS 安装步骤1、安装包上传到/usr/local/srcFastDFS_v5.08.tarlibfastcommon-master.zipnginx-1.8.0.tar.gzfastdfs-nginx-module_v1.16.tar.gz2、安装gccyum -y install gcc gcc-c++3、安装 libfastcommoncd /usr/local/srctar -zxf libfastcommonV1.0.7.tar.gzcd libfastco

2020-07-18 21:26:08 322

翻译 Java 位运算 带符号右移 与 无符号右移

>>:带符号右移。正数右移高位补0,负数右移高位补1。比如:4 >> 1,结果是2;-4 >> 1,结果是-2。-2 >> 1,结果是-1。>>>:无符号右移。无论是正数还是负数,高位通通补0。对于正数而言,>>和>>>没区别。对于负数而言,-2 >>> 1,结果是2147483647(Integer.MAX_VALUE),-1 >>> 1,结果是2147483

2020-05-26 20:49:35 253

转载 LRU缓存机制

LRU缓存机制(最近最少使用)双向链表 + 哈希表(不使用自带 LinkedHashMap)双向链表按照被使用的顺序存储了这些键值对,靠近头部的键值对是最近使用的,而靠近尾部的键值对是最久未使用的。哈希表即为普通的哈希映射(HashMap),通过缓存数据的键映射到其在双向链表中的位置。首先使用哈希表进行定位,找出缓存项在双向链表中的位置,随后将其移动到双向链表的头部,具体的方法如下:对于 get 操作,首先判断 key 是否存在:如果 key 不存在,则返回 −1;如果 key 存在

2020-05-26 20:41:37 131

转载 寻找两个正序数组的中位数

寻找两个正序数组的中位数二分法根据中位数的定义,当 m+n 是奇数时,中位数是两个有序数组中的第 (m+n)/2 个元素,当 m+n 是偶数时,中位数是两个有序数组中的第 (m+n)/2 个元素和第 (m+n)/2+1 个元素的平均值。因此,这道题可以转化成寻找两个有序数组中的第 k 小的数,其中 k 为 (m+n)/2 或 (m+n)/2+1。假设有两个正序数组A、B,要找第 k 个元素,我们可以比较 A[k/2−1] 和 B[k/2−1]。由于 A[k/2−1] 和 B[k/2−1] 的前面分别有

2020-05-25 19:20:29 269

翻译 拓扑排序,广度优先

使用一个队列来进行广度优先搜索。初始时,所有入度为 0 的节点都被放入队列中,它们就是可以作为拓扑排序最前面的节点,并且它们之间的相对顺序是无关紧要的。在广度优先搜索的每一步中,取出队首的节点 u: 将 u 放入答案中; 移除 u 的所有出边,也就是将 u 的所有相邻节点的入度减少 1。如果某个相邻节点 v 的入度变为 0,那么就将 v 放入队列中。在广度优先搜索的过程结束后。如果答案中包含了这 n 个节点,那么就找到了一种拓扑排序,否则说明图中存在环,也就不存在拓扑排序了。...

2020-05-18 10:39:12 668

翻译 快速幂Java实现

算法思想:如果我们要求x的n次幂,假定我们已经知道了x的n/2次幂,那么只需再平方即可,;若n是奇数, = * * x , 若n是偶数, = * ,然后递归即可。 public static double myPow(double a, int b){ if (b < 0) { a = 1/a; b ...

2020-05-02 17:52:27 182

转载 vivim 的使用

vi/vim 的使用基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。 这三种模式的作用分别是:命令模式:用户刚刚启动 vi/vim,便进入了命令模式。此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。以下...

2020-04-25 16:41:26 133

原创 Linux 目录结构

Linux 目录结构/bin: bin是Binary的缩写,这个目录放着最经常使用的命令。/boot: 这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。/dev: dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。/etc: 这个目录用来存放所有的系统管理所需要的配置文件和子目录...

2020-04-25 15:57:27 91

原创 Linux常用命令ls、cd、pwd、mkdir、rm、mv、cp、ps

注意:命令行复制,如果目标文件已经存在会提示是否覆盖,而在 shell 脚本中,如果不加 -i 参数,则不会提示,而是直接覆盖!当第二个参数为目录时,第一个参数可以是多个以空格分隔的文件或目录,然后移动第一个参数指定的多个文件到第二个参数指定的目录中。移动文件或修改文件名,根据第二参数类型(如目录,则移动文件;Print),能使用正则表达式搜索文本,然后把匹配的行显示出来;a :显示终端上的所有进程,包括其他用户的进程。x :显示所有程序,不以终端机来区分。ps 命令的作用是显示进程信息的;

2020-03-09 22:56:00 289

原创 0-1背包问题、动态规划

1、算法思想对于每一个物品,只有两种选择,拿或者不拿,并且不能重复拿;若背包容量小于该物品重量时,不能拿;若背包容量大于或者等于背包容量时,要比较拿该物品的价值与不拿该物品的价值,取价值较大者。2、代码import java.util.Scanner;public class Pack { public static void main(String[] args) {...

2020-03-09 18:21:17 128

原创 docker 常用操作

1、镜像操作操作命令说明检索docker search 关键字 eg:docker search redis我们经常去docker hub上检索镜像的详细信息,如镜像的TAG。拉取docker pull 镜像名:tag:tag是可选的,tag表示标签,多为软件的版本,默认是latest列表docker images查看所有本地镜像删除...

2020-03-08 15:18:49 109

原创 Centos 7 安装 docker

Centos 7 安装 docker安装dockeryum install docker启动 dockersystemctl start docker检查启动成功docker -v出现版本信息,说明成功设置开机启动dockersystemctl enable docker停止 dockersystemctl stop docker...

2020-03-08 15:04:22 79

空空如也

空空如也

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

TA关注的人

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