- 博客(49)
- 收藏
- 关注
原创 Hive分区、分桶
Hive分区、分桶一、Hive分区分区主要用于提高性能1、静态分区1.单级分区2.多级分区2、静态分区二、Hive分桶一、Hive分区分区主要用于提高性能1.分区列的值将表划分为一个个的文件夹2.查询时语法使用"分区"列和常规列类似3.查询时Hive会只从指定分区查询数据,提高查询效率1、静态分区1.单级分区--创建单级分区表create table if not exists employee_partition(name string,work_place array<str
2020-12-09 16:53:30
275
原创 Hive关于表的操作
hive一、内部表和外部表1、内部表(管理表)2、外部表(External Tables)二、创建临时表三、hive建表语句-CTAS and WITH四、删除表/修改表1、删除表2、修改表五、装载数据一、内部表和外部表1、内部表(管理表)HDFS中为所属数据库目录下的子文件夹数据完全由Hive管理,删除表(元数据)会删除数据2、外部表(External Tables)数据保存在指定位置的HDFS路径中Hive不完全管理数据,删除表(元数据)不会删除数据--创建一个外部表create ex
2020-12-09 15:59:34
290
原创 日志文件完成数据清洗
有下面两条json格式的数据文件需要完成数据清洗1593136280858|{"cm":{"ln":"-55.0","sv":"V2.9.6","os":"8.0.4","g":"C6816QZ0@gmail.com","mid":"489","nw":"3G","l":"es","vc":"4","hw":"640*960","ar":"MX","uid":"489","t":"1593123253541","la":"5.2","md":"sumsung-18","vn":"1.3.4","ba":"
2020-11-23 01:49:48
491
原创 IntelliJ IDEA安装scala插件并配置scala环境变量的详细教程
详细步骤:一.找到自己的idea对应的Scala版本二.在idea中安装插件三.环境变量配置1.下载scala-2.11.12.msi2.点击安装,默认路径就可以3.配置环境变量(1)配置用户变量(2)配置Path,添加一句话(3)配置classpath(4)验证scala一.找到自己的idea对应的Scala版本在该网址内可以查询到对应的Scala版本: https://plugins.jetbrains.com/plugin/1347-scala点击version找到自己的版本,我的是2018
2020-10-19 15:05:55
6868
原创 Windows10 桌面图标变成白色如何解决
1.桌面新建记事本2.将以下代码粘贴进去@echo offtaskkill /f /im explorer.exeCD /d %userprofile%\AppData\LocalDEL IconCache.db /astart explorer.execho 执行完成3.重命名将.txt改成.bat4.右键–以管理员身份运行
2020-10-12 18:39:43
1136
2
原创 Hbase概述及基本命令
Hbase概述及基本命令一、HBase概述二、应用场景三、Apache HBase生态圈四、HBase物理架构 - 概述五、HBase物理架构 - HMaster六、HBase物理架构 - RegionServer七、HBase物理架构 - Region和Table八、HBase逻辑架构 - Row九、HBase数据管理十、HBase架构特点十一、HBase Shell十二、Hbase基本命令十三、批量导入文件一、HBase概述HBase是一个领先的NoSQL数据库a)是一个面向列存储的数据库b)是
2020-09-24 23:45:27
105
原创 MapReduce实现join操作
文章目录一.概述二.需求三.map+reduce实现join四.MapReduce Map端 join实现原理(没有reduce处理)一.概述熟悉SQL的读者都知道,使用SQL语法实现join是很简单的,只需要一条SQL语句即可,但是在大数据场景下使用MapReduce编程模型实现join还是比较繁琐的在实际生产中我们可以借助Hive,Spark SQL 等框架来实现join,但是对于join的实现原理我们需要掌握,这对于理解join的底层实现很有帮助,本文介绍如何使用MapReduce API 来实现
2020-09-24 19:26:39
852
原创 Hive的安装及配置
Hive安装一、解压安装包二、配置环境变量三、修改hive-site.xml四、启动hive启动hive五、创建,插入以及查询一、解压安装包将hive拖入虚拟机opt目录下,解压并重命名tar -zxvf hive-1.1.0-cdh5.14.2.tar.gzmv hive-1.1.0-cdh5.14.2 hive二、配置环境变量输入:vi /etc/profile增加如下:export HIVE_HOME=/opt/hiveexport PATH=$PATH:$HIVE_HOME/bin
2020-09-16 02:22:06
120
原创 Hbase的安装及配置
Hbase安装一、安装hbase二、修改系统配置三、修改hbase-env.sh四、修改hbase-site.xml五、启动hbase一、安装hbase将Hbase安装包拖入虚拟机输入:tar -zxvf hbase-1.2.0-cdh5.14.2.tar.gz -C /opt修改文件夹名称:mv hbase-1.2.0-cdh5.14.2 hbase二、修改系统配置输入:vi /etc/profile增加如下:export HBASE_HOME=/opt/hbaseexport PATH
2020-09-16 02:16:32
364
原创 Hadoop集群上配置zookeeper配置、时间同步
zookeeper配置、时间同步前置条件安装包环境变量zookeeper配置第一步第二步第三步配置集群的时间同步第一步第二步第三步第四步zookeeper介绍zookeeper介绍ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。它还支持Java和C语言。前置条件首先我们需要一个hadoop集群安装
2020-09-16 02:11:41
260
原创 ELK的配置、安装(附带压缩包)
ELK的配置、安装以及集群搭建一、准备阶段需要准备的安装包二、Elasticsearch解压安装包并改名ES配置启动ES三、head-master及node的配置配置启动四、Kibana的配置配置启动五、logstash一、准备阶段VMware安装虚拟机CentOS7(基于Linux系统)VMware虚拟机配置环境变量及MySQL需要准备的安装包本例中需要用到的安装包如下:①elasticsearch-6.2.2.tar.gz②elasticsearch-head-master.zip③ki
2020-09-15 20:14:58
594
原创 Linux基础命令大全(详细)
Linux基础命令1.pwd 显示当前路径2.rmdir 删除空目录3.ls 查看目录或文件信息4.vi 文本编辑器5.cp 复制6.mv 移动7.rm 删除文件或目录8.find 查找文件9.grep 过滤10.cat 显示文本文件内容11.head 查看前几行12.tail 从指定点开始将文件写到标准输出13.ps 查看进程(动态)14.netstat 查看网络状况 (net status的简写)15.| 管道符 (竖线,英文输入法状态下shift+键盘上的的|\)16.echo 打印文件内容或编辑文件
2020-09-11 16:06:05
166
原创 Hadoop安装配置(伪分布式)
Hadoop的安装配置<伪分布式> 1.前提2.解压压缩包1)解压2)改名3.本机配置1)修改本机名2)修改hosts文件3)生成秘钥4)伪分布式复制到自己4.修改配置文件(共6个)1)hadoop-env.sh2)core-site.xml3)hdfs-site.xml4)yarn-site.xml5)mapred-site.xml.template6)slaves5.配置环境变量1.前提Hadoop安装包我的是2.6.0版本的,需要自取链接: https://pan.baidu.co
2020-09-11 08:41:01
162
原创 VMware虚拟机配置环境变量及MySQL
配置环境变量及MySQL1.MobaXterm远程连接虚拟机2.配置环境变量3.MySQL配置1安装包上传2安装依赖包3卸载冲突包4安装mysql5修改配置文件6修改初始密码7再次修改配置文件8重启mysql9登录10重设密码11赋权1.MobaXterm远程连接虚拟机链接: https://pan.baidu.com/s/1P9rAuU6elqoJ0emOSmgatg.提取码:psvmMoba安装包,需要自取为什么要用Moba连接虚拟机,最重要的原因就是可以上传文件,十分方便,而且可以复制粘贴命
2020-09-08 18:27:54
3297
1
原创 VMware安装虚拟机CentOS7(基于Linux系统)
前提:安装好VMware(我的15.5版本)链接:https://pan.baidu.com/s/19kFAjCaiEg1QpZujz6XOfg提取码:psvm内包含链接: link.图片: 带尺寸的图片: 居中的图片: 居中并且带尺寸的图片:
2020-09-08 16:25:15
396
5
原创 触发器、MySQL视图
一、触发器什么是MySQL的触发器触发器用来在某些操作时,"自动"执行一些操作当insert delete update设置触发器之后,执行insert delete update操作就会自动触发设置的内容定义触发器语法:create trigger 触发器名 before|after 时间 on 表名 for each row 触发器语句;before|after 代表触发器语句执行时间,如果是before,就是在insert|delete|update操作之前执行触发器语句;after就是之
2020-09-04 13:52:03
76
原创 MySQL索引、事务
1 、数据库索引对表里面某列进行排序在物理上来说是单独的存储在磁盘上的一种数据库结构(对表里面的引用的指针)(1)主键索引数据库会自动的给添加了主键的字段添加一个索引主键唯一区分数据库里的一条记录原理:数据库把索引单独存起来在一个文件里,索引对应的是一些数据当要查这个数据的时候会先去找这个索引,再根据这个索引直接找到这个数据(类似于查字典)索引就相当于目录先找到在索引中的位置,再根据索引中的位置找到数据的位置(2)唯一索引–不是为了提高查询速度的不同于主键索引唯一索引是唯一的,但主
2020-08-28 14:12:36
95
原创 数据库基础操作命令
MySQL基础操作命令MySQL登录命令mysql -h 服务器主机地址 –u 用户名 -p用户密码库的相关操作命令create database [if not exists] 库名; //创建新库use 库名 //使用库drop database if existse 库名; //删除指定库show databases; //查看当前所有库update user set pasaword=password(新密码)//修改密码where user=‘用户名’;flush privil
2020-08-28 08:26:47
278
原创 【8.14练习】MySQL练习
create table tb_class( cid int(4) primary key, cname varchar(50));insert into tb_class values(1,'kb01'),(2,'kb02'),(3,'kb03');create table tb_student( sid int(4) primary key, sname varchar(50), gender varchar(50), class_id int(4), sage int(4),.
2020-08-27 14:28:46
306
原创 MySQL DQL查询数据
select查询语法查询表中所有的数据列结果,采用’*'符号select * from student#效率低,不推荐可指定查询的结果数据列select studentno, studentname,phone from student;如区分连接查询时两个同名的字段select s.studentno,studentname,r.studentresultfrom student s,result rAS字句作用:1.可给数据列取一个新别名2.可给表取一个新别名3.可把经
2020-08-20 11:31:40
113
原创 MySQL数据管理命令
连接数据库本机数据库: mysql -hlocalhost -uroot -pmysql -h127.0.0.1 -uroot -p远程数据库: mysql -192.168.254.30 -uroot -p对库的操作:查看数据库:show databases;创建数据库:create database 库名;删除数据库:drop database 库名;切换到某个数据库:use 要切换的库名;对表的操作:查看表结构:describe/desc subject;查看建表语句:show
2020-08-13 09:37:03
121
原创 认识MySQL
MySQL概念是现流行的开源、免费的关系型数据库**特点免费、开源数据库小巧、功能齐全使用便捷可运行于Windows或Linux操作系统可适用于中小型甚至大型网站应用 **连接数据库本机数据库: mysql -hlocalhost -uroot -p mysql -h127.0.0.1 -uroot -p远程数据库: mysql -192.168.254.30 -uroot -p对库的操作: 查看数据库:show databases; 创建数据库:create datab
2020-08-12 00:41:28
194
原创 【8.5笔记】多线程Thread
一、多线程如果在一个进程中同时进行了多个线程,用来完成不同的工作,则称之为“多线程”多个线程交替占用CPU资源,而非真正的并行运行多线程的好处充分利用CPU的资源简单化编程模型带来良好的用户体验二、Thread类主线程main()方法几位几位主线程入口产生其他子线程的线程必须最后完成执行,因为他执行各种关闭操作线程创建的两种方法继承java.lang.Thread类public class MyThread() extends Thread{}public static v
2020-08-05 19:58:00
114
原创 【8.4笔记】输入和输出处理(二)字符流
一、Reader类字符输入流Reader类常用方法(抽象–基类)int read()int read(char[] c)int read(char[] c,int off, int len)void close()构造方法(FileReader是Reader的孙子类)FileReader(File file)FileReader(String name)FileReader读取文件引入资源创建FileReader对象调用相应的read()读取文件关闭字符流二、Writer类字符
2020-08-05 12:50:39
85
原创 【8.3笔记】输入和输出的处理(一)
一、输入输出的概念站在程序的角度上,从文件读取进来是输入,写入到文件、内存、控制台是输出二、File类1、File类的常用方法File类文件创建,显示信息,删除如下import java.io.File;import java.io.IOException;/* * @Author:Qiutong * @Date:2020/8/3 * @Description:创建文件,获取文件信息,删除文件 */public class FileDemo { //创建文件 pu
2020-08-03 23:18:09
203
原创 【8.3笔记1】StringBuffer类,日期操作类
一、StringBuffer类对字符串频繁的修改(如字符串连接)时,使用StringBuffer类可以大大提高程序执行效率StringBuffer sb=new StringBuffer();StringBuffer s=new StringBuffer("hello");System.out.pringtln(s.length())//输出字符串长度String newS=s.toString();//将StringBuffer->Strings.append("world");//追加
2020-08-03 18:59:38
150
原创 【7.31笔记】String类的常用方法
一、length()方法返回字符串的长度/* * @Author:Qiutong * @Date:2020/7/31 * @Description:实现会员注册 */import java.util.Scanner;public class Register { public static void main(String[] args) { Scanner input=new Scanner(System.in); System.out.prin
2020-08-03 10:12:38
122
原创 【7.30笔记】枚举、包装类、Math类
一、枚举为什么要用到枚举,有什么好处由上图可看出,可以给sex赋值"你好",但是这明显不合逻辑,这是有两个方法,一个是进行选择判断,另一个是枚举,那么相对于选择判断枚举有哪些好处呢public enum Genders { 男,女;}public class Student { public Genders sex;//性别 public static void main(String[] args) { Student stu=new Student
2020-07-31 10:23:40
126
原创 【7.29笔记】Map、泛型、Collections的使用
遍历Map集合思路一:先遍历key,再通过key>>>value方法一:增强型for遍历key的集合(Set)方法二:通过迭代器Iterator遍历key的集合()思路二: 获取map中的所有键值对,然后再对键值对中分别获取key和value方法三://遍历键值对的集合,把每个键值(obj)–Map.Entry(键值对的类型)对拿出来public class Country { public static void main(String[] args) {
2020-07-31 09:45:58
125
原创 JAVA——快速排序(详细)
JAVA快速排序的实现快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。总的说来,要直接默写出快速排序还是有一定难度的,因为本人就自己的理解对快速排序作了下白话解释,希望对大家理解有帮助,达到快速排序,快速搞定。快速排序是C.R.A.Hoare于1962年提出的一种划分交换排序。它采用了
2020-07-30 11:13:34
24263
16
原创 【7.28笔记】集合框架
一、了解Java集合框架体系结构为什么使用集合框架存储一个班级的学员信息,如果在我们不知道的情况下可以假定数组为100,但是这样的话会占用不必要的内存,这种数量小的还好,但是如果变成存储每天的新闻信息呢,每天的新闻数量是不确定的。这是其一,如果需要复杂的存储对象,需要存储两个数组,让课程和课程代码一一对应应该怎么办?所以如果不知道程序运行是会需要多少对象,或者需要更复杂的存储对象——可以使用Java集合框架Java集合框架包含的内容Collection接口存储一组不唯一,无序的对象List接口存
2020-07-28 19:10:47
107
原创 【7.24笔记】异常捕获和处理
一、异常异常是指在程序运行过程中所发生的的不正常的事件。异常会中断正在运行的程序俩数相除,因除数不能等于零以及误输入字母可能产生的异常public class Test1 { public static void main(String[] args) { Scanner input=new Scanner(System.in); try{ System.out.print("请输入被除数:"); int num1
2020-07-27 09:34:57
182
原创 【7.23笔记】接口
接口:定义接口使用interface关键字实现接口使用implements关键字接口可以多实现(一个类可以实现多个接口)接口不能被实例化接口中的所有默认方法都是公共抽象方法接口的目的之一是订立一个标准提高程序的可维护性和可扩展性提高程序的规范性提高程序的安全性原始的手机,可以发短信]通电话.随着发展,手机增加了功能:音频\视频播放\拍照\上网.使用接口实现了手机功能.首先先构思一个phone类作为抽象父类,因为并不需要实体化public abstract class Phone {
2020-07-23 20:03:20
210
原创 【7.22笔记2】多态、抽象方法和抽象类
一、多态比如给多种宠物看病,就需要添加兔子猫咪类,继承Pet类再修改主人类,添加给该宠物看病的方法这样就导致我门要频繁的修改代码,代码的可拓展性以及可维护性就差了。什么是多态同一个引用类型,使用不同的实例而执行不同的操作...
2020-07-23 10:41:39
181
原创 【7.22笔记1 】方法重写、super的使用、继承下构造方法的执行过程、Object类
一、方法重写**两个类:**有继承关系的父子类同名方法 同名同参返回值类型相同或者使其子类访问权限不严格与父类就ok子类方法返回值类型可以是父类方法返回值类型的子类,也是方法重写父类的静态方法不能被重写为非静态方法反之,父类的非静态方法也不能被重写为静态方法在子类中可以定义和父类一模一样的静态方法,竟然方法中不能使用super,直接用类名去调用父类的私有方法不能被子类重写和方法重载的区别:二、super子类访问父类成员访问父类方法:super.print();访问父类属性:sup
2020-07-23 01:06:45
145
原创 【7.21笔记】封装、继承、Static修饰符
一、封装1.private通过宠物店的例子我们可以看出,属性被随意访问,被赋予不合理的数值,而我们又不能在类的属性中加入限定条件(例如小狗的健康值不能俄为负数),所以我们引入了private,可以将类的的属性隐藏起来,然后通过setter/getter来实现对隐藏属性的调用,这样的话就可以在类的方法中加入对亲密度在0-100的限定条件。2.package包使用来自于不同包的同名类,只通过import无法区分,只能通过类的完整限定名来区分。默认使用同包同目录的类命名规范:如何导入包:使用包
2020-07-21 23:34:45
164
原创 【7.20笔记】方法参数传递、对象数组做参数、构造方法、局部变量成员变量
一、方法的参数传递定义带参数的方法:<访问修饰符>(返回值类型)<方法名>(形式参数列表){//方法的主体}调用带参数的方法:对象名.方法名(参数1,参数2,…,参数n)<实参列表>;package yuxi.Test2;/** * @ Author: Qiutong * @ Date: 2020/7/20 * @ Description:增加学员姓名 * 在保存了多个学生姓名的数组中,指定查找区间, * 查找某个学生姓名并显示是否查找成功 *
2020-07-20 23:56:40
568
原创 【7.17笔记】认识类和对象
一、类和对象的关系开发方法结构化开发面向功能划分软件结构自顶而下最小的子系统是方法制约了软件的可维护性和可拓展性面向对象的开发把软件结构看成各种对象的集合系统结构较稳定子系统相对独立软件可重用性、可维护性和可拓展性对象的特征属性——对性具有的各种特征每个对象的每个属性都拥有特定值例如张浩和李明的年龄、姓名不同方法——对象执行的操作对象:用来描述客观事物的一个实体有一组属性和方法构成举例:杯子的属性:黑色的圆柱形,方法:被用来喝水。电脑的属性:黑色,重2.3Kg,15.
2020-07-20 09:31:28
89
原创 吃货联盟订餐系统的实现
吃货联盟订餐系统的实现订餐越来越受到都市年轻人的青睐,所需要实现的功能有我要订餐、查看餐袋、签收订单、删除订单、我要点赞、退出系统首先先不考虑优化现将系统功能实现,再考虑一些出错的情况。import java.util.Scanner;/** * @ Author: Qiutong * @ Date: 2020/7/16 * @ Description:吃货联盟 */public class oldOrdinaryMst { public static void main(Stri
2020-07-19 15:48:31
400
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人