hive数据倾斜(超详细) 说到hive的数据倾斜,可能有的小伙伴还不了解什么是数据倾斜,所以咱们这一次就从hive数据倾斜的表现、hive数据倾斜发生的原因、hive数据倾斜的解决方案这三个方面来聊一聊hive的数据倾斜。
Node和Element的区别(节点和元素)——超详细 如图一个xml文档由元素节点,属性节点,文本节点成其中bookstore被称为文档元素或根元素,也是一个元素节点整个文档是一个文档节点,即document节点。在Java中document接口是继承于node接口,表示整个xml文档每个xml标签是一个元素节点,即element节点。在Java中element接口继承于node接口,表示xml文档中的一个元素text节点为文本节点,在Java中text接口继承于characterData接口,而characterData继承于nod.
存储过程(存过) 定义:是一系列sql语句的集合,调用时一次性执行这些sql语句,与java中方法的概念类似,相比较于UDF自定义函数来说,存储过程没有返回值,函数有一个返回值语法:create procedure'存储过程名'(参数列表)beginsql语句end;调用:call 存储过程名(values)应用实例:--通过学生ID获取名称drop procedure getName;delimiter &&create proedure getName(in
UDF自定义函数 定义:UDF函数相对于存储过程来说是有返回值的,注重的也是返回值,本质是一系列sql语句的集合,调用时一次性执行这些sql语句,与java中方法的概念类似,都是对MySQL功能的扩展UDF语法:create function 函数名([参数列表])return 数据类型beginsql语句return 值end;n...
MySQL视图 定义:视图是存储在数据库中的查询的sql语句,本质是查询语句的结果,存入一个临时空间,相当于临时表优点:简单化,数据所见即所得安全性,用户只能查询或修改他们所能见到得到的数据逻辑独立性,可以屏蔽真实表结构变化带来的影响缺点:性能差,修改不方便语法:create view 视图名 asselect ...........(查询语句)select * from 视图名...
MySQL触发器 作用:用来在某些操作时,“自动”执行一些操作,一张表最多能有6个触发器(3操作*2时间)定义触发器:语法:create +trigger+触发器名+ before/after +事件+on+表名+for each row +触发器语句1、before|after 代表触发器语句执行时间,如果是before,就是在insert|delete|update操作之前执行触发器语句;after就是之后。2、事件就是insert delete update操作中的一个。3、for each row
MySQL简单命令总结 mysql的常用命令--库级命令:---建库:create database 【if not exists】school;school为库名---删除库:drop database 【if exists】test; test为库名 ---查看所有的库show databases;---建库时指定字符编码create database school character set 'utf8';---修改库的字符编码alter database schoo..
反射机制详细讲解及实现 一、先来说一说什么是反射机制Java反射机制是指在运行状态中,动态获取信息以及动态调用对象方法的功能。二、Java反射有三个动态性质运行时生成对象实例 运行期间调用方法 运行时更改属性三、关键步骤如下使用反射获取类的信息使用反射创建对象 使用反射访问属性和方法四、反射常用的方法 getDeclaredConstructors():...
如何解决多线程不安全的问题 举个生活比较常见的例子,咱们生活中过年回家的时候常常会出现需要抢票的情况,然后有一些平台会帮助我们代抢票的服务,这个时候往往会出现多个平台抢票的情况,其实这就是多线程的一种应用,我们先按照常规多线程实现一下代码如下public class Ticket extends Thread { static int total=10;//这里的static是为了共享数据,因为有多个对象,不然会出现30张票, static int buy=0; @Override ...
如何简单编写斗地主发牌程序 我们先来看一看要求* 纸牌管理类* 斗地主游戏规则如下:* 1.有三名玩家,可从控制台赋值玩家姓名,玩家中会有牌类集合的属性,还有是否是地主的状态* 2.牌类有两个属性:花色和点数。花色有4种:黑红梅方(可用枚举)点数对应有13加上两张王牌(可用枚举)。* 3.扑克牌管理类:用于产生54张随即顺序的牌堆(牌类集合,54张牌不变,变得是顺序),给玩家发牌,并随机产生地主,把剩余3张底牌给地主,并展示三位玩家的手牌。同时把手牌信息存入文件中一,首先创建纸牌类可以利用数组,也...
在Java中什么是多线程 一,定义:线程是进程中执行运算的最小单位,一个进程在其执行过程中可以产生多个线程,线程必须在进程中进行,如果在一个进程中同时运行了多个线程,用来完成不同的工作,则称之为多线程。举一个简单的例子CPU——工厂,发放任务进程——车间,处理CPU任务线程——工人,协助完成任务线程共享进程空间,一个进程管理多个线程注意!!!!多个线程交替使用CPU资源才属于多线程,严格意义上没有真正的并行使用,因为实际上只有一个出口。二,优势1,多线程可以更快的处理任务,避免因为程序执行过慢而导
序列化和反序列化简单介绍 一、什么是序列化?简单来说,序列化就是将对象的状态储存到特定储存介质中的过程在此过程中会将对象的公有成员、私有成员包括类名,转换成字节流(二进制),然后再把字节流写入数据流,储存到存储介质中,这里说的存储介质通常是文件举个简单的例子,序列化就像我们做米饭的过程,米饭就是对象,电饭煲蒸饭的过程就是转换成字节流的过程,电饭煲就是数据流,饭碗就是存储介质(有些博客写着写着就饿了、、、、、)二、序列化的意义将Java对象序列化...
使用递归打印路径下的所有文件(递归yyds) 本文内容包括递归和演示File类型的方法递归的本质其实和循环差不多,这里套用一下Marx_W大佬的理解递归:你打开面前这扇门,看到屋里面还有一扇门。你走过去,发现手中的钥匙还可以打开它,你推开门,发现里面还有一扇门,你继续打开它。若干次之后,你打开面前的门后,发现只有一间屋子,没有门了。然后,你开始原路返回,每走回一间屋子,你数一次,走到入口的时候,你可以回答出你到底用这你把钥匙打开了几扇门。 循环:你打开面前这扇门,看到屋里面还有一扇门。你走过去,发现手中的钥匙还可以打开它...
使用I/O操作文件,并完成不同存储位置文件内容的复制粘贴 一,字符拼接是通过StringBuilder实现的,缺点是不能打印中文//StringBuilder 是一个字符拼接的工具类,频繁使用字符串拼接的时候可以用先给大家看一下抛出异常时候的情况,比较好理解代码实现如下public static String readFile(String path) throws IOException { FileInputStream fis = new FileInputStream(path); StringBuilder sb = n
集合的框架(非常好记) 如果想储存多个同类型的数据,一般可以用数组来实现,但是使用数组时会有很多缺陷,比如数组长度需要确定,查找效率比较低下,需要多次比较等。针对数组的缺陷,Java提供了比数组更加灵活的集合框架上图中的虚线框代表了接口或者抽象类,实线框表示开发中常用的实现类,右下角代表了工具类collections和Arrays(常用有sort排序等),最上方是三个副接口,Iterator(迭代器),Collection和Map比较其中比较重要的是Map接口和Collection接口,Collection接...