自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 springboot远程连接服务器

然而我这些都做了,springboot跑起来之后本地电脑依旧无法访问该网页。找到.jar后缀的地方,就是表示jar包运行的进程号,kill -9杀死。输入命令:表示当关闭服务器时依旧可以访问到该项目(以及网页)将springboot项目打包,上传到服务器文件夹中。或者设置安全组,加规则(TCP协议+端口号)输入该指令后,会出现一个进程号:12076。如果忘记了已经运行了哪些java进程。若想关闭访问接口,直接杀死进程。先把宝塔面板防火墙关了。

2023-04-05 21:46:09 317 1

原创 初始化springboot项目时遇到的问题解决

2.关于初始化时java默认版本过高,创建项目时选择低版本的springboot即可。1.初始化之后plugins爆红。设置中更改文件路径即可。

2023-03-28 16:58:33 238

原创 JDBC API详解

释放空闲数据超过最大空间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。url:连接路径,语法 jdbc:mysql://ip地址(域名):端口号/数据库名称?而SQL注入说的是,例如当密码输入的是’or ‘1’='1时,会将那条SQL语句改成了恒为1,则一直登录成功。SQL注入:SQL注入是通过操作输入来修改事先定义好的SQL语句,用以达到执行代码对服务器进行攻击的方法。DML:对数据的增删改 DDL:对表和数据库的增删改 DQL:对数据的查询。

2022-12-28 22:47:16 365

原创 Word Count案例

上面的做法是直接在程序中指出了主机名hostname和端口号port,在实际生产中是从参数或配置文件中读取。在虚拟机开启一台服务器hadoop102,并且输入 nc -lk 7777。7777是指设定一个端口号。执行前还要修改一下配置信息。

2022-11-13 23:57:21 531

原创 树实验--

二叉树递归实现先序遍历、二叉树层次遍历、哈夫曼树的构造

2022-11-06 20:41:24 74

原创 运算符、流程控制

在java中:当字符串s1和s2内容相同但地址不同时,用“==”比较符则为false。循环时默认步长为1,相当于java中的 i ++,但可以人为设置,选择跳着取循环变量 i 的值,例如 i 为1-10范围内的偶数。而在Scala中判断的直接是s1与s2的内容是否相同,所以==和equals结果相同。当循环变量范围设置为从小到大,但步长设置为负数时,循环不会输出内容,因为表示步数后退。但java中有自增“++”和自减“–”,而Scala没有。不同之处:在Scala中,if和else if语句是有返回值的。

2022-11-01 13:25:00 149

原创 输入输出、文件读写、数据类型

而char是字符型,跟字节不属于一个类别,所以byte不会转换成char。在java中,若是要声明一个静态变量,可以在A类中用public static String s=" ";注意,当用val声明了一个对象时,该常量的值也就是对象不能直接赋值成其他对象。当程序出现异常,不返回任何值时,就用Nothing接收,因为异常不返回值,所以不能用null。Scala中的object声明的是单例对象,也叫伴生对象,意思是跟另外一个类相伴相生。而在Scala中,将该变量声明在类的伴生对象中,引用:对象名.变量名。

2022-11-01 07:57:29 171

原创 Hive快速入门

使用分隔符拼接字符串,结果为www.itcast.cn。2.通过describe function extended funcname(函数名)来查看函数的使用方式。返回两个字符串拼接的结果。返回字符串反转的结果。

2022-10-04 15:36:09 98

原创 MapReduce

MapReduce 是一个分布式运算程序的编程框架,是用户开发“基于 Hadoop 的数据分析应用”的核心框架。1.不擅长实时计算,MySQL更擅长(ms级)。通常处理的是分钟级别的,有时还可能要算几天。2.不擅长流式计算。2.Mapper的输入数据时KV对的形式(KV的类型可自定义)4.Mapper的输出数据是KV对的形式(KV的类型可自定义)4.适合海量数据运算(TB/PB),几千台服务器共同计算。3.Mapper中的业务逻辑写在map()方法中。1.用户自定义的Mapper要继承自己的父类。

2022-10-03 21:24:32 721

原创 Hadoop_HDFS_API

配置好API环境后,可以在idea内编写代码操作HDFS。

2022-09-12 21:16:45 269

原创 Hadoop_HDFS_Shell

chgrp 、-chmod 、-chown:Linux文件系统中的用法一样,修改文件所属权限。-copyFromLocal:从本地系统中拷贝文件到HDFS路径去。-appendToFile 追加一个文件到已经存在的文件末尾。HDFS特性,只能追加内容到文件里面,而不能修改文件内容。-cp :从HDFS的一个路径拷贝到HDFS的另一个路径。-copyToLocal:从HDFS拷贝文件到本地。-setrep :设置HDFS中文件的副本数量。-rm -r :递归删除目录及目录里面的内容。

2022-09-12 09:16:29 529

原创 SQL练习

Between的格式为“表达式 [Not] Between value1 value2”,但“表达式”的值是否在value1和value2范围内,可以在筛选、有效性规则和SQL语句中使用。本题B)选项和C)选项没有使用“#”号,选项D)没有Between。如果所有的表达式都是空值,最终将返回一个空值。使用COALESCE在于大部分包含空值的表达式最终将返回空值。[ ]:匹配[ ]中的任意一个字符(若要比较的字符是连续的,则可以使用连字符“-”表达);[^ ]:不匹配[ ]中的任意一个字符;

2022-09-11 21:06:14 90

原创 数仓(四)

presto能够处理PB级别的海量数据分析,但presto并不是吧PB级数据都放在内存中计算的,是边读数据边计算,再清内存,再读数据再计算,这种耗的内存并不高。但是连表查,就可能产生大量的临时数据,因此速度会变慢。早在2015年eBay的生产环境中就能支持百亿记录的秒级查询,之后在移动的应用场景中又有了千亿记录秒级查询的案例。3)亚秒级响应:Kylin拥有优异的查询相应速度,这点得益于预计算,很多复杂的计算,比如连接、聚合,在离线的预计算过程中就已经完成,这大大降低了查询时刻所需的计算量,提高了响应速度。

2022-09-04 19:41:59 168

原创 全流程调度

配置azkaban.properties文件和azkaban-user.xml文件,在/opt/module/azkaban/azkaban-web路径下启动AzkabanwebServer,bin/start-web.sh(注意这里要使用cluster.sh stop关闭采集通道)在路径/opt/module/azkaban/azkaban-exec/下启动AzkabanExecutorServer,bin/start-exec.sh。解压到/opt/module/azkaban目录下。

2022-08-23 01:42:43 390

原创 数仓环境搭建

1.将/opt/module/spark/conf/目录下spark-env.sh.template文件改成spark-env.sh,之后添加内容export SPARK_DIST_CLASSPATH=$(hadoop classpath);进入/opt/module/hadoop-3.1.3/etc/hadoop中,修改core-site.xml文件,添加内容。2.进入/opt/module/hive/conf目录下的hive-site.xml,加上下面的内容。再次执行insert操作即可成功。

2022-08-21 16:35:12 102

原创 数仓(三)

启动和关闭集群时出现了一系列问题,原本不需要多次输入密码,结果不知道修改了哪里的权限导致有些集群启动需要输入密码,查看集群状态也需要输入密码。解决方法:进入/opt/module/hadoop-3.1.3/etc/hadoop中,编辑core-site.xml文件。将电脑文件拖拽入xshell中(预打算放入/opt/software中)传输失败。在hdfs页面对文件进行删除操作时,删除失败且报错。步骤三:切换成root用户重复步骤一和二。猜想这应该是权限问题和免密设置问题。失败原因:文件修改权限不够。...

2022-08-13 21:39:40 348

原创 数仓(二)

在hadoop102的/home/cat 目录下创建bin目录,这样脚本可以在服务器任何目录执行。通过终端输入用户名、密码,登录系统之后得到的就是一个login shell。标准输出1:输出到屏幕(即控制台) /proc/self/fd/1。错误输出2:输出到屏幕(即控制台) /proc/self/fd/2。标准输入0:从键盘获得输入 /proc/self/fd/0。(1)生成均衡计划(我们只有一块磁盘,不会生成计划)(3)查看当前均衡任务的执行情况。...

2022-08-08 00:51:03 310

原创 数仓(一)

数据仓库并非数据的最终目的地,而是为数据最终的目的地做好准备。这些准备包括对数据的备份、清洗、聚合、统计等。技术选型主要考虑因素数据量大小、业务需求、行业内经验、技术成熟度、开发维护成本、总成本预算;数据仓库是为企业指定决策,提供数据支持的。可以帮助企业改进业务流程、提高产品质量等。4.分析设备、会员、商品、地区、活动等电商核心主题,统计的报表指标近100个。数据仓库的输入数据通常包括业务数据、用户行为数据和爬虫数据。6.对集群性能进行监控,发生异常需要报警。1.用户行为数据采集平台搭建。...

2022-07-31 00:53:06 68

原创 分区、进程管理

服务本质就是进程,但是是运行在后台的,通常会监听某个端口,等待其他程序的请求,比如(MySQL,sshd防火墙等),因此我们又称为守护进程,是Linux中非常重要的知识点。原理Linux无论有几个分区,分给哪一目录,它归根结底就是只有一个根目录,一个独立且唯一的文件结构,Linux中每个分区都是用来组成整个文件系统的一部分。若某个进程执行一半需要停止时,或是已消耗了很大的系统资源时,可以考虑停止该进程。在Linux中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个ID号。...

2022-07-23 14:36:44 283

原创 组、权限管理、任务调度

应用创建一个组police,在police中创建一个用户tom,然后使用tom来创建一个文件ok.txt。应用使用root创建一个文件apple.txt,然后将其所有者修改成tom。除文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组。通过chmod修改文件或者目录权限。创建一个用户tom,放在acm组中。passwdtom//设置密码。换用户tom登录,创建文件。chown用户名文件名。指令ls-ahl。groupadd组名。...

2022-07-22 11:59:58 118

原创 稀疏数组和队列

2.rear变量含义的调整,改为指向队列最后一个元素的后一个位置。3.当满足(rear+1)%maxSize=front时,队列满。1.读取稀疏数组的第一行,分别为二维数组的行和列,有效数据个数。队列是一个有序列表,可以用数组或链表实现。1.front变量含义的调整,改为指向队列的第一个元素。非线性结构二维数组、多维数组、广义表、树结构、图结构。2.将稀疏数组后几行的数据赋值给二维数组即可。常见的线性结构数组、队列、链表和栈。3.将二维数组有效数据存入稀疏数组。改进将这个数组改成模拟环形队列。......

2022-07-17 19:43:03 92

原创 实用指令--

然后打开VMware虚拟机,找到centos的命令行,在命令行里面给mydate.txt追加写入新的内容,可以看到xshell窗口中mydate.txt的内容也立即更新了。常用的运行级别是3和5,要修改默认的运行级别可改文件/etc/inittab的id5initdefault这一行中的数字。假设当前位置在/usr下的/lib目录中,也就是/usr/lib,要求通过相对路径达到/root位置。应用一压缩多个文件,将/home/a1.txt和/home/a2.txt压缩成a.tar.gz。...

2022-07-16 13:54:09 876

原创 用户管理--

Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。每行含义登录名,加密口令,最后一次修改时间,最小时间间隔,最大时间间隔,警告时间,不活动时间,失效时间,标志。在操作Linux中,如果当前用户的权限不够,可以通过su-指令,切换到高权限用户,比如root。应该,因为若某程序员离职了,只删除用户,但是该用户的工作数据应该保留不能删除。每行含义用户名,口令,用户标识号,注释性描述,主目录,登录shell。...

2022-07-15 19:31:39 514

原创 开机、重启和用户登录注销

syn把内存的数据同步到磁盘,建议关机前执行一次把内存的数据写入磁盘,防止数据丢失。shutdown-hnow立即关机。shutdown-h1一分钟后关机。shutdown-rnow立即重启。reboot重启系统。

2022-07-15 13:07:31 89

原创 Linux实操篇

vixxx进入文件后,先按Esc键由编辑模式进入正常模式,然后光标移动到需要复制的那一行,输入yy即可赋值,按p粘贴。同理将光标移动到需要复制的位置,输入5yy,即可复制这行开始数往下五行的内容,p粘贴。修改完成之后,按Esc键,然后输入wq,按回车键,内容即可保存。在命令行输入/要查的单词,回车光标所在位置即是,输入n光标移动到下一个该单词的位置。输入viHello.java若没有该文件,则创建并进入该文件,若该文件已存在,则进入该文件。如果打开文件后修改了文件,想要保存,则使用wq。...

2022-07-15 09:46:41 341

原创 视图---

常见的数据库对象为什么使用视图视图是一种虚拟表,本身是不具有数据的,占用很少的内存空间,它是SQL中的一个重要概念。视图建立在已有表的基础上,视图赖以建立的这些表称为基表。视图的创建和删除只影响视图本身,不影响对应的基表。但是当对视图中的数据进行增删改操作时,数据表中的数据会相应地发生变化。修改基表同时也会修改视图中的数据。向视图提供数据内容的语句位select语句,可以将视图理解为存储起来的select语句。视图是向用户提供基表数据的另一种表现形式。通常小型项目的数据库可以不使用视图,但在大型项

2022-07-13 22:29:52 850

原创 约束---

为什么需要约束?数据完整性是指数据的精确性和可靠性。它是防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的。为了保证数据的完整性,SQL规范以约束的方式对表数据进行额外的条件限制。从以下四个方面考虑:什么是约束?约束是表级的强制规定。可以在创建表时添加约束(通过create table 语句),或者在表创建之后通过alter table语句添加或删除约束。约束的分类非空约束关键字not null特点:例:在alter table时删除约束唯一

2022-07-13 10:29:49 121

原创 MySQL数据类型

DDL:创建和管理表DML:增删改查DCL:1.TCL:commit和roll back 2.数据类型:数据类型的属性:指定字符集整型类型当使用zerofill时,自动添加unsigned(无符号)标志适用场景float和double这两种数据类型的区别float占用字节数少,取值范围小。double占用字节数多,取值范围也大。注意所以浮点类型不用刻意去加unsigned标志,因为对大于0部分的数据范围无影响。数据精度说明存在四舍五入四舍五入后超出范围因为浮点

2022-07-12 16:01:41 183

原创 双指针算法、位运算

给定一个长度为 n 的整数序列,请找出最长的不包含重复的数的连续区间,输出它的长度。输入格式第一行包含整数 n。第二行包含 n 个整数(均在 0∼1e5 范围内),表示整数序列。输出格式共一行,包含一个整数,表示最长的不包含重复的数的连续区间的长度。数据范围1≤n≤105输入样例:51 2 2 3 5输出样例:3大致模板:一般暴力解法:代码如下:数组元素的目标和给定两个升序排序的有序数组 A 和 B,以及一个目标值 x。数组下标从 0 开始。请你求出满足 A[i]+B[j]=x 的数对

2022-07-10 00:17:02 105

原创 数据处理之增删改

添加数据注意方式二中,若在表2中查询字段信息插入到表1,则表2中字段的长度不能超出表一字段长度的范围,否则有添加不成功的风险。若插入的数据没超出范围,则不会失败,报错,反之则报错。可以实现批量修改数据。update…set…where…同时修改一条数据的多个字段修改数据时有可能出现修改不成功的情况。(可能是由于约束的影响造成的)删除id=1的数据删除数据时也可能因为约束的影响删除失败。小结:DML操作默认情况下执行完后会自动提交(commit)数据。若不希望主动提交数据,则需要使用SET aut

2022-07-08 12:11:21 220

原创 数据库的创建、修改与删除

在MySQL中,一个完整的数据存储过程总共有4步,分别是创建数据库、确认字段、创建数据表、插入数据。从系统架构的层次上看,MySQL数据库系统从大到小依次是数据库服务器、数据库、数据表、数据表的行与列。创建数据库查看数据库的结构show create database mytest1管理数据库查看当前连接中的数据库有哪些show databases;切换数据库use db_test;查看当前数据库中有哪些表show 表名;查看当前使用的数据库select database() from

2022-07-07 19:08:28 2099 1

原创 排序、查找

分治思想快速排序、归并排序、二分查找快速排序步骤一:设置两个指针,一头一尾步骤二:设置处于数组中间位置的下标mid=(r+l)/2步骤三:划分区域,左边小于a[mid],右边大于a[mid]归并排序步骤一:原数组a[m],取中间值mid=r+l>>1,创建一个空数组q[m]步骤二:将整个数组一分为二,设置两个头指针分别指向两个数组的第一元素,两指针所指元素比较大小,较小的那个放进q数组中,指针继续移动,较大的停下来比较大小。步骤三:将新数组q里面的元素再重新赋值给a数组二分查找分为整型查

2022-07-05 15:19:35 108

原创 子查询---

子查询指一个查询语句嵌套在另一个查询语句内部的查询。查询employees表中比员工a工资高的员工姓名和薪水:称谓的规范:外查询(或主查询)、内查询(或子查询)子查询(内查询)在主查询之前一次执行完成。子查询的结果被主查询(外查询)使用。注意事项子查询要包含在括号内。将子查询放在比较条件的右侧。单行操作符对应单行子查询,多行操作符对应多行子查询。① 按内查询的结果返回一条还是多条记录,将子查询分为 单行子查询、多行子查询 。② 按内查询是否被执行多次分为 相关子查询(或关联)和不相关子查询(或

2022-07-05 13:43:22 968

原创 聚合函数--

SQL函数还有一类,叫做聚合(或聚集、分组)函数,它是对一组数据进行汇总的函数,输入的是一组数据的集合,输出的是单个值。

2022-07-04 23:20:14 207

原创 单行函数(二)

流程控制函数加密与解密函数password(),encode()和decode()在MySQL8.0中已经被弃用了。MySQL信息函数其他函数课后习题2.3.4.5.6.

2022-05-29 17:15:01 75

原创 单行函数(一)

MySQL的内置函数及分类从实现的功能角度可以分为数值函数、字符串函数、日期和时间函数、流程控制函数、加密与解密函数、获取MySQL信息函数、聚合函数等。也可分为两类:单行函数、聚合函数(或分组函数)。...

2022-05-28 22:45:42 69

原创 排序、分页、多表查询

排序数据如果没有进行排序的操作,那么查询出来的数据就是根据添加的顺序显示的。使用order by对查询到的数据进行排序操作注意:强调格式from先执行,然后执行where,然后执行select,然后再执行order by。因此列的别名是在执行完where后才执行的,所以列的别名不能在where中使用。二级排序若写成order by department_id,salary 则表示先从对department_id升序排序,department_id相同的情况下再对salary升序排

2022-05-21 15:32:24 308

原创 运算符---

/ 也可以写div,% 也可以写出mod。数字和字符串运算时,字符串同样看做0。除法运算除法的结果不管能不能整除,都是浮点型若分母为0,结果为null取模运算 % mod运算结果的正负号只与前面那个数有关。练习比较运算符<>和!=都是不等于的意思。当null参与进来时commission_pct=null的计算结果是null,而查询结果只会显示出计算结果为1的,所以查询结果为空,并不会显示出commission_pct为null的表格数据。解决该问题的方

2022-05-16 19:13:40 297

原创 SQL概述和分类

==SQL语言的规则与规范==导入现有的数据表、表的数据

2022-05-13 22:21:01 96

原创 MySQL的基本使用

登录服务器方法一:在命令行登录服务器输入mysql -uroot -p然后输入安装时设置的密码方法二:点开对应的MySQL版本输入密码登录方式三:指定端口号,可以登录对应的MySQL服务器还可以指定主机ip登录服务器,比如登录本机的或:-u表示用户名,-P(Port)表示端口号,-h(host主机)表示ip地址,这些-u,-P,-h后面写不写空格都行,但是-p(表示password)后面直接输入密码时不能加空格,不然会被当做密码,要么直接按回车在下一行输入密码。若访问的就是本机的

2022-05-10 23:40:34 466

空空如也

空空如也

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

TA关注的人

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