- 博客(25)
- 资源 (1)
- 收藏
- 关注
原创 Mysql2020最新教程(高级部分)之存储引擎与简单的sql优化
一Mysql的体系结构概览整个MySQL Server由以下组成Connection Pool : 连接池组件Management Services & Utilities : 管理服务和工具组件SQL Interface : SQL接口组件Parser : 查询分析器组件Optimizer : 优化器组件Caches & Buffers : 缓冲池组件Pluggable Storage Engines : 存储引擎File System : 文...
2020-07-06 13:39:18
346
原创 MySQL2020最新教程(高级部分)之存储过程和函数
一存储过程和函数概述存储过程和函数是 事先经过编译并存储在数据库中的一段 SQL 语句的集合,调用存储过程和函数可以简化应用开 发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。存储过程和函数的区别在于函数必须有返回值,而存储过程没有。函数 : 是一个有返回值的过程 ;过程 : 是一个没有返回值的函数 ;二存储过程创建存储过程CREATE PROCEDURE procedure_name ([proc_parameter[,...]...
2020-07-05 15:27:16
398
原创 MySQL2020最新教程(高级部分)之视图
一 视图概述视图(View)是一种虚拟存在的表。视图并不在数据库中实际存在,行和列数据来自定义视图的查询中使用的表, 并且是在使用视图时动态生成的。通俗的讲,视图就是一条SELECT语句执行后返回的结果集。所以我们在创建视 图的时候,主要的工作就落在创建这条SQL查询语句上。视图相对于普通的表的优势主要包括以下几项。简单:使用视图的用户完全不需要关心后面对应的表的结构、关联条件和筛选条件,对用户来说已经是过滤 好的复合条件的结果集。安全:使用视图的用户只能访问他们被允许查询的结果集,对表的..
2020-07-05 11:11:54
367
原创 MySQL2020最新教程(高级部分)之索引
一 索引概念MySQL官方对索引的定义为:索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护者满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据, 这样就可以在这些数 据结构上实现高级查找算法,这种数据结构就是索引。简而言之索引就是一种数据结构,用来指向数据的数据结构。一般来说索引本身也很大,不可能全部存储在内存中,因此索引往往以索引文件的形式存储在磁盘上。索引是数据 库中用来提高性能的最常用的工具。二 索引优势劣势优势1) ...
2020-07-05 10:46:37
340
原创 2020最实用的sql命令及其概念整理(初学者)
一·、数据库的好处1.实现数据持久化2.使用完整的管理系统统一管理,易于查询二、数据库概念1.DB数据库database2.DBMS数据库管理系统,如MySQL3.SQL语言三、常用命令(mysql)net start/stop 服务器名(一般为mysql) 启动/关闭服务器mysql -h 【主机名】 -P(必须大写) 【端口号】 -u 【用户名】 -p 【密码】 登录exit或者ctrl+c 退出use 库名; 打开指定库show d...
2020-07-03 10:29:54
511
原创 Java虚拟机之执行引擎
一、执行引擎概述执行引擎是Java虚拟机核心的组成部分之一。“虚拟机”是一个相对于“物理机”的概念,这两种机器都有代码执行能力,其区别是,物理机的执行引擎是直接建立在处理器、缓存、指令集。和操作系统层面上的,而虚拟机的执行引擎则是由软件自行实现的,因此可以不受物理条件制约地定制指令集与执行引擎的结构体系,能够执行那些不被硬件直接支持的指令集格式。JVM的主要任务是负责装载字节码到其内部,但字节码并不能够直接运行在操作系统之上,因为字节码指令并非等价于本地机器指令,它内部包含的仅仅只是一些能够被JVM
2020-06-28 09:08:23
223
原创 Java虚拟机之方法区
一、方法区在哪里?《Java虚拠机规范》中明确说明明: "尽管所有的方法区在逻辑上是属于堆的一部分,但一些简单的实现可能不会选择去进行垃圾收集或者并行压缩。”但対千HotspotJVM而言,方法区还有一个別名叫做Non- Heap (非堆),目的就是要和堆分幵。所以,方法区看作是- -抉独立于Java堆的内存空间。二、方法区的基本理解方法区(MethodArea)与Java堆一样,是各个线程共享的内存区域。方法区在JVM启动的时候被创建,并且它的实际的物理内存空间中和Java堆区一样都可以是..
2020-06-28 09:07:37
485
原创 Java虚拟机之堆
一、概述所有的对象实例以及数组都应当在运行时分配在堆上。(The heap is the run-time data area fromwhich memory for all1 class instances and arrays is allocated ),“几乎”所有的对象实例都在这里分配内存。一从实际使用角度看的。数组和对象可能永远不会存储在栈上,因为栈帧中保存引用,这个引用指向对象或者数组在堆中的位置。.在方法结束后,堆中的对象不会马上被移除,仅仅在垃圾收集的时候才会被移除。堆是GC ( G
2020-06-28 09:07:18
190
原创 Java虚拟机之本地方法栈
一、什么是本地方法筒単地讲,一个NativeMethod就是一个Java凋用非Java代码的接口。一个NativeMethod是这样一个Java方法:该方法的实现是由非Java悟言突现的,比如c。这个特征并非Java所特有,很多其它的編程悟言都有这一机制,比如在C++中,你可以extern"C"告知C++编译器区调用一个c的函数。"AnativemethodisaJavamethodwhoseimplementationisprovidedbynon-javacode...
2020-06-28 09:06:50
241
原创 Java虚拟机之虚拟机栈
一、Java虚拟机栈是什么??Java虚拟机栈(Java Virtual Machine Stack) ,早期也叫Java栈。每个线程在创建时都会创建一虚拟机栈,其内部保存一个个的栈帧(Stack Frame) ,对应着一次次的Java方法调用,是线程私有的。生命周期生命周期和线程一致。作用主管Java程序的运行,它保存方法的局部变量、部分结果,并参与方法的调用和返回。二、Java虚拟机栈的特点是一种快速有效的存储方式,访问速度仅次于pc寄存器。JVM直接对Java栈的操作只有两
2020-06-27 08:02:23
672
原创 Java虚拟机之PC寄存器
一、PC Register介绍pc寄存器又称程序计数寄存器,它是用来存储下一条执行指令的地址。它是一块很小的内存空间,几乎可以忽略不记。也是运行速度最快的存储区域。在JVM规范中,每个线程都有它自己的程序计数器,是线程私有的,生命周期与线程的生命周期保持一致。任何时间一个线程都只有一一个方法在执行,也就是所谓的当前方法。程序计数器会存储当前线程正在执行的Java方法的JVM指令地址;或者,如果是在执行native方法,则是未指定值(undefned),因为本地方法是非Java编写,pc寄存器是java层
2020-06-27 08:01:46
861
原创 Java虚拟机之类加载子系统
一、类加载子系统的作用1.类加载器子系统负责从文件系统或者网络中加载Class文件,class文件在文件开头有特定的文件标识。2.ClassLoader只负责class文件的加载,至于它是否可以运行,则由ExecutionEngine决定。3.加载的类信息存放于一块称为方法区的内存空间。除了类的信息外,方法区中还会存放运行时常量池信息,可能还包括字符串字而量和数字常量(这部分常量信息是Class文件中常量池部分的内存映射) 二、类加载子系统ClassLoader角色...
2020-06-27 08:01:16
147
原创 JAVA技术的核心——HotSpot VM(整体结构)
Hotspot虚拟机,目前OpenJDK所带的虚拟机,他也是目前市面上高性能虚拟机之一,他是解释器与编译器并存的一款虚拟机,下面是它的整体结构简图,后续会有更详细的。 java源码通过java编译器生成.class文件,在通过类加载器子系统加载到jvm中,通过解释执行与编译执行翻译为二进制机器指令执行操作。java编译器输入的指令流是一种基于栈的指令集架构,它的设计和实现更简单,适用于资源受限的系统,避开了寄存器的分配难题,使用零地址指令方式分配...
2020-06-26 10:28:15
1522
原创 JAVA技术的核心——JVM(生命周期)
一、虚拟机的启动java虚拟机的启动是通过引导类(bootstrap class loader)创建一个初始类来完成的,这个类由虚拟机的具体实现来指定。二、虚拟机的执行java程序开始时java虚拟机就开始,Java程序结束时java虚拟机就结束,执行java程序时,真真正正执行的是一个java虚拟机进程。三、虚拟机的退出程序正常结束程序执行过程中遇到异常或者错误终止操作系统出现错误导致java进程终止某线程调用Runtime类或者System类的exit方法JNI规范描
2020-06-26 10:27:49
136
原创 JAVA技术的核心——JVM(简介)
首先,java虚拟机是一款程序虚拟机,它运行的是.class字节码文件(jvm字节码),该文件中含有执行Java虚拟机的内部指令集。也就是说他与何种语言编写的无关,只与字节码文件有关,所以java与java虚拟机,没有必然的联系。 jvm就是二进制字节码的运行环境,负责加载到内部进行解释编译,jvm的特点:(1)一次编译到处运行,(2)自动内存管理,(3)自动垃圾回收功能。同时jvm是运行在操作系统之上的。与硬件没有直接交互。 ...
2020-06-26 09:26:55
260
原创 hadoop完全分布式运行模式
一、集群配置1. 集群部署规划2. 配置集群 (1)核心配置文件 配置core-site.xml [hadoop@hadoop02 hadoop]$ vi core-site.xml 在该文件中编写如下配置<!-- 指定HDFS中NameNode的地址 -...
2019-09-04 20:58:26
247
原创 rsync 远程同步工具
rsync 远程同步工具rsync主要用于备份和镜像,具有速度快、避免复制相同内容和支持符号链接的优点。rsync和scp区别:用rsync做文件的复制要比scp的速度快,rsync只对差异文件做更新。scp是把所有文件都复制过去。(1)基本语法 rsync -rvl $pdir/$fname $user@hadoop$h...
2019-09-04 13:12:03
338
原创 ssh: Could not resolve hostname hadoop03: Name or service not known
linux(centos)系统在使用scp(secure copy)安全拷贝时,出现报错:ssh: Could not resolve hostname hadoop03: Name or service not known出现这种错误是因为系统/etc/hosts中没有配置主机名,在hosts中添加对应主机名与ip地址即可,如:...
2019-09-03 19:51:56
7706
3
原创 linux修改主机名
1.首先,root登录linux2.在终端输入下面的命令3.在打开的文件中修改为自己的主机名4.保存,运行命令reboot,重新启动linux系统。
2019-09-03 19:00:13
351
1
原创 Hadoop伪分布式——配置日志的聚集
日志聚集概念:应用运行完成以后,将程序运行日志信息上传到HDFS系统上。日志聚集功能好处:可以方便的查看到程序运行详情,方便开发调试。注意:开启日志聚集功能,需要重新启动NodeManager 、ResourceManager和HistoryManager。开启日志聚集功能具体步骤如下:配置yarn-site.xml[root@hadoop01 hadoop]$ vi yarn-...
2019-09-02 21:04:35
178
原创 伪分布式——启动YARN并运行MapReduce程序(包括配置)
执行步骤 (1)配置集群 (a)配置yarn-env.sh 将yarn-env.sh里面的JAVA_HOME路径改为自己的路径,如:export JAVA_HOME=/opt/module/jdk1.8.0_144 (b)配置yarn-site.xml<!-...
2019-09-02 20:44:05
441
原创 伪分布式运行模式
1)配置集群(a)配置:hadoop-env.shLinux系统中获取JDK的安装路径:[atguigu@ hadoop101 ~]# echo $JAVA_HOME/opt/module/jdk1.8.0_144修改JAVA_HOME 路径:export JAVA_HOME=/opt/module/jdk1.8.0_144(b)配置:core-site.xml ...
2019-08-30 22:16:35
182
原创 hadoop官方WordCount案例
1、创建在hadoop-2.7.2文件下面创建一个wcinput文件夹[hadoop@hadoop01 hadoop-2.7.2]$ mkdir wcinput2、wcinput文件下创建一个wc.input文件[hadoop@hadoop01 hadoop-2.7.2]$ cd wcinput[hadoop@hadoop01 wcinput]$ touch wc.input3...
2019-08-29 20:16:51
519
原创 Linux系统安装hadoop教程
1、首先下载hadoop官网下载:http://mirrors.hust.edu.cn/apache/hadoop/core/stable/hadoop-2.7.1.tar.gzshell命令下载:wgethttp://mirrors.hust.edu.cn/apache/hadoop/core/stable/hadoop-2.7.1.tar.gz2、上传到linux中,并解压...
2019-08-28 21:24:55
1272
原创 Linux系统安装jdk教程
1、首先下载linux版的jdk下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html2、将下载好的jdk压缩包,上传到linux系统的当前用户下3、将上传后的jdk,解压到/usr/local/目录下或者指定目录,解压目录如下:tar -zxvf ./jdk-8u144-linux-x6...
2019-08-28 20:50:54
216
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人